Вы намерены выполнять сценарий только при выходе из системы?
Из man bash:
При входе в оболочку завершается, bash читает и выполняет команды из файла ~ / .bash_logout, если он существует.
Только при выходе из оболочки входа в bash.
Если вы намереваетесь запускать скрипт при каждом закрытии оболочки, используйте ловушку (см. Man bash):
trap /u1/myuser/on_exit_script.sh EXIT
Добавьте его в .bashrc или в другой, который вам подходит.
Кроме того, поскольку сценарий будет выполняться при выходе, $ PWD будет активен при выходе, что может быть, а может и не быть таким же, как при запуске оболочки. Если вам нужно что-то сделать с $ PWD, который использовался при выходе, тогда да, этот тест:
if [ "$PWD" = "$HOME/libfoo" ]; then
Должен сработать.
Я просто добавлю к ответу Жиля, что, хотя вы можете использовать « cp
, rsync
и т. Д.» для передачи ваших субтомов / моментальных снимков, доступных только для чтения, вы также можете отправлять и сохранять субтомы в виде потоков btrfs, используя команду btrfs send
. В btrfs Wiki упоминается следующее использование:
# btrfs subvolume snapshot -r / /my/snapshot-YYYY-MM-DD && sync
# btrfs send /my/snapshot-YYYY-MM-DD | ssh user@host btrfs receive /my/backups
# btrfs subvolume snapshot -r / /my/incremental-snapshot-YYYY-MM-DD && sync
# btrfs send -p /my/snapshot-YYYY-MM-DD /my/incremental-snapshot-YYYY-MM-DD |
ssh user@host btrfs receive /backup/home
, но вы также можете просто сохранить потоки для будущего использования:
# btrfs subvolume snapshot -r / /my/snapshot-YYYY-MM-DD && sync
# btrfs send /my/snapshot-YYYY-MM-DD |
ssh user@host 'cat >/backup/home/snapshot-YYYY-MM-DD.btrfs'
# btrfs subvolume snapshot -r / /my/incremental-snapshot-YYYY-MM-DD && sync
# btrfs send -p /my/snapshot-YYYY-MM-DD /my/incremental-snapshot-YYYY-MM-DD |
ssh user@host 'cat >/backup/home/incremental-snapshot-YYYY-MM-DD.btrfs'
Это полезно для хранения дословных снимков btrfs в произвольных файловых системах. Преимущество, скажем, перед tar
в том, что снимки btrfs
являются инкрементными, и отправляется только дельта. В btrfs Wiki утверждается, что этот метод инкрементного резервного копирования имеет тенденцию быть даже быстрее, чем rsync
.