Я написал скрипт для симметричного шифрования и дешифрования с помощью find, gpg и inotify. вставьте файл на сервер samba, я переименую его в Encrypted- *, триггеры inotify находят & amp; запускает команды, шифрует, удаляет оригинал.
Расшифровка работает, когда я создаю файл lisa в maindir.
Работает только из главного каталога, где шифрование работает из любого места, используя maxdepth.
Я думаю, это потому, что путь, заданный сценарием, - / opt / Paper / maindir /, но добавление этого пути и maxdepth к последней команде поиска не работает.
Я знаю, что это просто. надо установить cwd или правильно установить путь это скрипт или что-то в этом роде. Помогите!
#!/bin/bash
cd /opt/Paper/maindir/
#sleep gives files a chance to be written to disk before encryption, otherwise dataloss will occure
sleep 5s
#encrypt
find /opt/Paper/maindir/ -maxdepth 8 -type f \( -iname Encrypted-\* ! -iname Encrypted-\*.gpg \) -exec gpg --yes --batch --passphrase=password -c {} \;
#remove unencrypted
find /opt/Paper/maindir/ -maxdepth 8 -type f \( -iname Encrypted-\* ! -iname \*.gpg \) -exec rm -f {} \;
#decrypt and remove lisa
find . -type f -name lisa -exec gpg --yes --batch --passphrase=password --decrypt-files *.gpg \; -exec rm {} \;
Он ищет только это имя файла и игнорирует расширение с тем же именем. так что шифруйте, когда файл переименовывается в этот, удаляйте оригинал. работает из любого каталога 8 глубины. не красиво, но это работает. Лиза, с другой стороны, работает, но только из maindir, даже если путь к вашему предложению и maxdepth, похоже, не работают с ним. не работает так, как мне бы хотелось. Проблема в последней строке, я не знаю, как искать «lisa» и файл gpg одновременно. Подстановочный знак сбрасывает это. найти Лизу везде, сохранить путь, удалить Лизу, расшифровать, удалить gpg в найденном пути.
—
kross
Хорошо, тогда добавьте отладку / эхо и посмотрите, что к чему, войдите в stdout & amp; stderr, & / или попробуйте соответствующие команды в интерактивном терминале, и, возможно, это скажет, почему они не работают должным образом.
—
Xen2050
find .
вfind /opt/Paper/maindir/
?