Я спросил об этом в списке рассылки gnome-shell - выясняется, что расширения загружаются довольно рано в куске, прежде чем пользовательские контакты будут правильно загружены.
Добавление 5 -задержка на второй фрагмент кода, который извлекает список контактов (чтобы система могла загружать все контакты) работает прелесть.
В пакете debian-goodies есть команда с именем checkrestart, которая весьма полезна. Его выход может помочь вам избежать полной перезагрузки.
Обычно, если файл
/var/run/reboot-required
существует, вы должны перезагрузиться. Вы можете увидеть, есть ли этот файл, используя эту простую команду в gnome-terminal.
ls /var/run/reboot-required
Как и самые прямые методы, написанные другими, есть удобное указание, если вы используете byobu - набор сценариев, чтобы сделать экран GNU немного более удобным для пользователя. Он показывает набор информации в нижней части экрана, и это может включать в себя необходимость перезагрузки - вместе с тем, доступны ли обновления, время, время безотказной работы, память ...
На этом снимке экрана вы можете видеть из 199! в нижней строке с красным фоном, что доступно 199 обновлений, а ! означает, что некоторые из них - обновления для системы безопасности. Меню на переднем плане выбирает, какие статусные уведомления должны отображаться.
Если требуется перезагрузка, это будет обозначаться символом (R), отображаемым на нижней панели с белым текстом на синем фоне. Более подробную информацию и другие индикаторы можно прочитать в byobu .
Файл /etc/motd получает информацию о необходимости перезагрузки из файла /var/run/reboot-required.
Вы можете проверить содержимое этого файла в терминале с помощью команды cat /etc/motd
Я добавил следующее в мой .bash-aliases файл:
alias rr='if [ -f /var/run/reboot-required ]; then echo "reboot required"; else echo "No reboot needed"; fi'
Казалось проще, чем установить пакет для этой относительно простой задачи. Затем я просто запускаю:
you@somewhere:~$ rr
No reboot needed
you@somewhere:~$
Если у вас установлены установленные для перезагрузки-уведомления или обновления-уведомления-общие пакеты, вы получаете файлы / var / run / reboot-required и /var/run/reboot-required.pkgs
reboot-notifier является более новым в Ubuntu Wily и Xenial. Debian растягивается, но в jessie-backports
reboot-notifier старше, во всех версиях Ubuntu, включая Xenial и Debian Wheezy. Не в Debian Stretch или Jessie.
(Существует некоторый фон для пакета уведомлений о перезагрузке по адресу https://feeding.cloud.geek.nz/posts/introducing-reboot-notifier/) [!d5 ]
Если у вас нет этих пакетов, вы можете сравнить версию установленного пакета linux с версией:
tim@tramp:~$ dpkg -l linux-image-*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=================================-=====================-=====================-=======================================================================
ii linux-image-3.16.0-4-amd64 3.16.7-ckt20-1+deb8u4 amd64 Linux 3.16 for 64-bit PCs
ii linux-image-amd64 3.16+63 amd64 Linux for 64-bit PCs (meta-package)
tim@tramp:~$ more /proc/version
Linux version 3.16.0-4-amd64 (debian-kernel@lists.debian.org) (gcc version 4.8.4 (Debian 4.8.4-1) ) #1 SMP Debian <b>3.16.7-ckt20-1+deb8u3</b> (2016-01-17)
Вы можете видеть здесь, что последнее установленное ядро 3.16.7-ckt20-1 + deb8u4, но работает ядро 3.16.7-ckt20-1 + deb8u3. Поэтому для этой системы требуется перезагрузка. U4 vs u3 в конце.
Возможно, вам потребуется прокрутить окно выше. В версии / proc / version важна версия рядом с концом строки.
Очень малое изменение кода версии типично для обновления ядра ядра Debian.
Другой вариант - установить пакет needrestart.
sudo apt-get install needrestart
sudo needrestart -k
Кажется, что он работает, даже если needrestart был установлен после обновления ядра.
Не ответ на вопрос, но предостережение относительно нескольких ответов: /var/run/reboot-required не является надежным источником того, действительно ли требуется перезагрузка.
Простой тест: когда новый ядро становится доступным, устанавливает его, перезагружается. После перезагрузки запустите apt autoremove, чтобы избавиться от старых, более не требуемых ядер. После того, как вы запустите это, будет указано, что требуется перезагрузка, что является полной бессмыслицей.