Систематически обновляя Ubuntu на сессии входа в систему

Прямо после моей сессии входа в систему, я хотел бы, чтобы Ubuntu выполнилась sudo apt-get update & apt-get dist-upgrade , систематически / автоматически. Терминал должен быть открыт так, чтобы я видел вывод каждого этого выполнения. В частности, я хочу попроситься ввести "y/n" из-за команды apt-get dist-upgrade. Я не хочу должным быть вводить свой пароль: таким образом Ubuntu должна использовать его в качестве входа sudo выполнение вместо меня.

Включенные модификации должны быть независимы от любого обновления и миграции Ubuntu.

Вопрос

Который bash файл я должен отредактировать и в который путь?

-3
задан 18 August 2018 в 07:44

2 ответа

Sudo без пароля

Можно сказать sudo позволять Вам выполнить команды без пароля.

на большую часть upvoted отвечают здесь

Открытое окно терминала и тип:

sudo visudo

В нижней части файла введите следование:

$USER ALL=(ALL) NOPASSWD: ALL

Можно также заставить его только позволить склонный работать без пароля всего на одного пользователя, и только на Кв. путем добавления этого вместо вышеупомянутого:

username ALL = NOPASSWD: /usr/bin/apt

замена "имени пользователя" с именем пользователя. Вам, вероятно, придется перезагрузить для этих изменений для вступления в силу.

Я настоятельно рекомендовал бы использование отдельного пользователя / прикладное решение, поскольку это будет намного более безопасно, чем разрешение полного использования от sudo без пароля для всего sudoers... Это могло быть СЕРЬЕЗНОЙ проблемой безопасности, особенно если бы кто-то получил физический доступ к Вашему компьютеру. В целом, если этот компьютер будет содержать уязвимые данные, то Вы захотите воздержаться от любого вида sudoing без пароля.

Команда выполнения на запуске

  • GUi: В поиске окна операций "Запуска" и запущенных "Приложений Запуска" нажимают добавить кнопку и создают со следующей командой

ИЛИ

  • Командная строка: добавьте следующую команду в конец ~/.profile

Следующая команда откроет терминальное и выполненное обновление:

gnome-terminal -- bash -c "sudo apt update && sudo apt dist-upgrade; read line"

Имя и комментарий (gui), как Вы желаете и сохраняете его. Теперь, когда Вы входите в систему, терминал откроет и выполнит Ваши команды обновления. Вы не должны будете вводить пароль, но необходимо будет подтвердить обновление.

Окно затем останется открытым, пока Вы не нажмете Enter.

Теперь, когда у Вас есть это, Вы могли бы хотеть перейти в Software & Updates и отключите автоматическую проверку обновления, так как этот новый сценарий делает это для Вас.

enter image description here

2
ответ дан 28 October 2019 в 03:17

Это достаточно легко, хотя мне нравится знать, какие обновления применяются так, я предпочитаю иметь последнее слово вручную.

Так или иначе существенный бит, который необходимо знать, - то, как выполнить a sudo команда из сценария. Это может быть сделано с помощью:

echo password | sudo -S

или с более длительной явной, но эквивалентной версией

echo password | sudo -u root --stdin

где password Ваш пароль, конечно, и аргумент -u пользователь, который является корнем в этом случае.

Затем обратите внимание что Ваш .profile скрипт удара запущен на логинах. Таким образом короче говоря, добавьте следующие команды к Вашему .profile:

echo password | sudo -S apt-get update
echo password | sudo -S apt-get -y upgrade

где -y флаг к apt-get средства отвечают на да на все вопросы. Ваш .profile должен был быть создан, когда Ваша учетная запись была сделана, но в случае, если она была удалена, можно скопировать значение по умолчанию с /etc/skel/.profile.

Наконец, для безопасности, Вы, вероятно, захотите chmod 600 .profile защищать Ваш пароль.

-1
ответ дан 28 October 2019 в 03:17

Другие вопросы по тегам:

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