Вам понадобится средство запуска (файл .desktop). Необходимые параметры:
Exec = gksudo -k -u root/path/toyourscript.sh
Сообщает системе, что нужно выполнить и что она должна быть выполнена как root. Вы также можете просто ввести здесь сценарий вместо указания пути к его файлу, но это... грязный. Terminal = true
Делает его открытым в терминале Также, вероятно, следует использовать dist-upgrade
, так как это более стабильно. Вот как выглядел мой .desktop, когда я делал что-то подобное:
[Desktop Entry]
Encoding=UTF-8
Name=Updater
Comment=short script
Type=Application
Exec=gksudo -k -u root /home/andrzej/Documents/update.sh
Terminal=true
Categories=
модернизация
и dist-upgrade
также должны требовать подтверждения. При запуске их в терминале можно просто ввести y и нажать Enter, но при запуске с .desktop он закроется при подтверждении, поэтому вам нужно добавить опцию -y
, например: sudo apt-get dist-upgrade -y
Что у вас должно быть Это, безусловно, работает на моей системе.
вам не нужен grep
. Будет работать следующее:
ip = $ (getent hosts «$ host» | awk '{print $1}')
Короче говоря, да из-за имен пакетов.
Более конкретно, проблема относится к последовательности N-V-R, который является именем, версией и версией. Алгоритм сортировки довольно сложен, но он ищет пакет с наибольшим значением версии-выпуска, который считается самым последним пакетом. Поскольку последняя часть последовательности выпуска пакета выше на втором пакете, чем на первом («ed30409» > «954bb77»), он считает второй пакет более свежим.
Помимо имен устройств, вы можете монтировать файловые системы, используя их UUID или метки.
Например, если при создании файловой системы вы назвали ее UDFStore , вы можете добавить запись /etc/fstab
следующим образом:LABEL=UDFStore /data udf defaults 0 0