su - user -c env не получает переменную окружения без -l добавлено

Я перешел с rsnapshot на backintime именно из-за этой проблемы. В backintime каталоги именуются по дате. Они оба используют жесткие ссылки, но backintime немного умнее, так как если ничего не меняется, он не беспокоится о создании всех ссылок. Одно из отличий - backintime изменяет разрешения файлов на "только чтение" и сохраняет их в отдельном файле.

0
29.03.2018, 13:56
1 ответ

Предостережение :su в Linux может быть разным во всех системах. Как обычно, man suдолжен дать вам ответы о ваших опциях и версии.

Условия для распространения среды:

  1. Переменная экспортируется командойexport ENVVARIABLE
  2. su сказано сохранить среду, что здесь (Debian 9 )можно сделать с помощью опций -m, -p, --сохранить -environment.

Здесь это работает:

su -m - user -c env 2>/dev/null | grep 'ENVVARIABLE=' | awk -F= '{print $2}'
0
28.01.2020, 04:27

Теги

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