Расшифровывать Encfs при запуске

Я хотел бы расшифровать "том" EncFS при запуске. Обычно я расшифровываю объем следующим образом:

cat "/home/user1/encfs.pw" | encfs -S /mnt/encryptedVolume /mnt/decryptedVolume

В /etc/init у меня есть myService.conf файл:

start on startup
stop on shutdown
respawn

pre-start script
  cat "/home/user1/encfs.pw" | encfs -S /mnt/encryptedVolume /mnt/decryptedVolume
end script

exec /home/user1/myService

Без предстартового раздела myService запускается нормально. В предстартовом разделе это не так, потому что, как указано в документации, если строки скрипта терпят неудачу, он существует.

Моя проблема в том, что строка сценария работает в оболочке, но не в этом предварительном запуске.

Может кто-нибудь, пожалуйста, помогите? Спасибо за помощь.

1 ответ

Решение

(Я думаю, мой комментарий должен быть ответом...)

Я предполагаю, что "/ mnt / encryptedVolume" еще не смонтирован во время запуска сценария запуска.

Вы можете подождать некоторое время, чтобы запустить скрипт, пока не будет смонтирован необходимый том,

  • используя sleep 20 в сценарии.
  • Или запустите сценарий после того, как все будет "вверх" и смонтировано, и вы вошли в систему, запустив initctl start myService должно сработать.
Другие вопросы по тегам