Как отследить операции копирования и перемещения файлов и папок?

Я использую перетаскивание для копирования и перемещения файлов. Одним из недостатков этого является то, что файлы могут оказаться в неправильных местах. Итак, допустим, я скопировал / переместил множество файлов и папок в несколько разных мест назначения.

Как я могу отследить, где все закончилось, чтобы убедиться, что все было скопировано / перемещено в нужные места?

0
задан 28 January 2014 в 13:34

1 ответ

То, что вы просите, - это «наблюдатель файловой системы».

iWatch Install iWatch

iWatch - программа мониторинга файловой системы в реальном времени. Это простой Perl-скрипт для отслеживания изменений в определенных каталогах / файлах и немедленной отправки уведомлений по электронной почте. Он читает список dir / file из файла конфигурации xml и нуждается в поддержке inotify в ядре (Linux Kernel> = 2.6.13).

Есть и другие, но это, кажется, самый простой метод, родной для Ubuntu и использующий inotify (поэтому он не перегружает систему).

iWatch поставляется в 2 методах:

  1. командная строка
  2. демон

Некоторые параметры командной строки для ведения журнала:

-m <email address>
   Specify the contact point's email address. Without this option, iwatch will 
   not send any email notification. 

-s <on|off>
   Enable or disable reports to the syslog (default is off/disabled)

Некоторые примеры командной строки :

iwatch /tmp

отслеживают изменения в каталоге / tmp с событиями по умолчанию

iwatch -r -e access,create -m cahya@localhost -x /etc/mail /etc

контролируют только доступ и рекурсивно создайте события в каталоге / etc с помощью / etc / mail в качестве исключения и отправьте уведомление по электронной почте на адрес cahya @ localhost.

iwatch -r -c "(w;ps -ef)|mail -s '%f was changed' cahya@localhost" /bin

Мониторинг каталога / bin рекурсивно и выполнение команды.

iwatch -r -X '\.svn' ~/projects

рекурсивно отслеживать каталог ~ / projects, но исключать любые каталоги .svn внутри. Этого нельзя сделать с помощью обычной опции -x, так как -x может исключать только определенный путь.


Пример файла конфигурации при использовании режима режима демона. Ведение журнала осуществляется с помощью параметров XML в файле конфигурации:

<config>
  <guard email="myadmin@localhost" name="IWatch"></guard>
  <watchlist>
  <title>Public Website</title>
  <contactpoint email="webmaster@localhost" name="Web Master"/>
    <path type="single">/var/www/localhost/htdocs</path>
    <path type="single" syslog="on">/var/www/localhost/htdocs/About</path>
    <path type="recursive">/var/www/localhost/htdocs/Photos</path>
  </watchlist>
  <watchlist>
  <title>Operating System</title>
  <contactpoint email="admin@localhost" name="Administrator"/>
    <path type="recursive">/etc/apache2</path>
    <path type="single">/etc/passwd</path>
    <path type="recursive">/etc/mail</path>
    <path type="exception">/etc/mail/statistics</path>
    <path type="single" filter="shadow|passwd">/etc</path>
  </watchlist>
  <watchlist>
  <title>Only Test</title>
  <contactpoint email="root@localhost" name="Administrator"/>
    <path type="single" alert="off" exec="(w;ps -ef)|mail -s %f
      root@localhost">/tmp/dir1</path>
    <path type="single" events="access,close" alert="off" exec="(w;ps -ef)|mail -s %f
      root@localhost">/tmp/dir2</path>
    <path type="single" events="default,access" alert="off" exec="(w;ps -ef)|mail -s '%f is
      accessed' root@localhost">/tmp/dir3</path>
    <path type="single" events="all_events" alert="off">/tmp/dir4</path>
  </watchlist>
</config>

При такой конфигурации iwatch будет контролировать один каталог /var/www/localhost/htdocs без его подкаталогов, и любое уведомление будет отправлено контактной точке веб-мастера @ локальный. Но он будет контролировать все дерево каталогов /etc/apache2, включая любые подкаталоги, созданные позже после запуска IWatch. Вы также можете использовать здесь для создания исключений, если вы не хотите получать уведомления для файла или подкаталога внутри контролируемого каталога.

0
ответ дан 28 January 2014 в 13:34

Другие вопросы по тегам:

Похожие вопросы: