Используя тройник, я теряю свои привилегии sudo
Я пишу установочный скрипт и мне нужно запустить его sudo
когда я тестирую его на экземплярах AWS RedHat, я не могу root
, Я хочу записать журнал в файл, а также на экран. Нет ничего проще,
Я могу пойти в школу >> /tmp/Solr_Install.log 2>&1
и запустить хвостовой процесс в фоновом режиме: tail -f installer.log &
Это решение имеет тенденцию дублировать или утроить вывод на экране, поэтому я выбрал решение "тройник-тоталлер".
Просто используйте силу силы и 2>&1 | tee -a /tmp/Solr_Install.log
С этим решением я теряю свои права sudo, и сценарий не выполняется.
Вопросы: почему хвост показывает одну и ту же линию 2-3 раза? (Имеет ли это какое-то отношение к тому, что tail -f
отображает последние 10 строк?)
Можно ли это как-то исправить?
Почему я теряю свое sudo, когда я чаю?
Можно ли этого избежать?
Есть ли другой способ выбросить материалы журнала в файл и на экран одновременно?
1 ответ
sudo
не является привилегией, специфичной для сессии. sudo
это команда, которая запускает другие команды с повышенными привилегиями. Так что просто беги tee
с sudo
:
2>&1 | sudo tee -a /tmp/Solr_Install.log W