Должен ли я просто вытащить вилку? Или лучше сначала выйти из LXDE и других запущенных процессов?
sudo halt -p
сделаю это.
Должен ли я просто вытащить вилку? Или лучше сначала выйти из LXDE и других запущенных процессов?
sudo halt -p
сделаю это.
Ответы:
Вы определенно не хотите просто тянуть за вилку. Это может вызвать проблемы с SD-картой и файловой системой.
При использовании командной строки или окна терминала вы можете ввести следующее, чтобы выполнить чистое завершение работы:
sudo shutdown -h now
Как только появится надпись «Система остановлена» , вы можете отсоединить шнур питания, если это необходимо.
Лучше всегда правильно выключать, если можете.
Постоянное отключение устройства без изящного выключения может привести к нежелательным последствиям для SD-карты (уже темпераментный объект).
Для справки, чтобы отключиться от терминала вы можете использовать:
sudo shutdown -h now
или же
sudo halt
Эти команды отправляют SIGTERM
всем запущенным процессам, уведомляя их о необходимости сохранения своих данных и выхода. Затем он отправляет SIGKILL
всем оставшимся процессам остановить систему, после чего, наконец, размонтирует все файловые системы. Затем появится экран, System Halted
и вы можете вытащить вилку.
sudo poweroff
тоже работает просто отлично.
halt
, shutdown
и poweroff
?
halt
. Кроме того, вы можете указать, что halt
нужно просто остановить ядро / процессор без остановки каких-либо процессов; по этой причине я хотел бы использовать его, shutdown
если у вас нет особых причин не делать этого.
Я тоже использовал это решение shutdown.py .
Вам все еще нужно найти физический коммутатор и припаять его к контактам 6 и 8 заголовка 5 . Я взял свой из старой сломанной доски Arduino. Я также просверлил небольшое отверстие в корпусе, чтобы убедиться, что я могу нажать кнопку с небольшим деревянным штифтом, когда корпус закрыт.
Вот как это выглядит:
Я следовал за проектом, описанным в Raspberry Pi Shutdown Switch - Безопасное отключение Pi , но установил вывод 17, чтобы он был внутренне вытянут. Затем подключите провода, как в приведенном выше проекте, но не используйте резисторы и добавьте следующий скрипт Python /etc/rc.local
:
python shutdown_button.py
import RPi.GPIO as GPIO
import time
import os
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.IN, pull_up_down = GPIO.PUD_UP)
while True:
print GPIO.input(17)
if (GPIO.input(17) == False):
os.system("sudo shutdown -h now")
break
time.sleep(1)
GPIO.wait_for_edge(17, GPIO.FALLING)
вместо цикла while, это более отзывчиво.
Помимо других соображений, разъемы питания и другие разъемы будут рассчитаны на ограниченное количество циклов вставки / отключения. Часто это удивительно мало.
Статистически разъемы являются очень вероятным источником отказа оборудования.
Учитывая общую долговечность вашего Pi, вы можете захотеть уменьшить количество подключаемых / отключаемых разъемов. Одним из способов помочь в этом было бы использование переключателя включения / выключения сетевой розетки.
Я подключаюсь к своему Raspberry Pi удаленно, и вот как я его выключил:
sudo shutdown -h now
Поскольку я использую удаленный дисплей, я не обязательно вижу окончательный вывод Raspberry Pi в командном окне, поэтому я использую индикаторы активности. Состояние не мигания светодиодов не является абсолютным показателем полного успешного выключения, но для меня это сработало достаточно хорошо.
Чтобы избежать проблем с повреждением SD-карты, вы всегда должны корректно завершать работу ОС. Это можно автоматизировать с помощью аппаратного решения контроллера питания и сценария, который запускается, например, через сигнал порта GPIO (в дополнение к упомянутому выше источнику питания Pi):
Плата RemotePi в последней ссылке имеет дополнительные функции использования ИК-пультов для включения / выключения Raspberry Pi.
Если ваш Raspberry Pi заморожен, то вы не можете войти в ssh или консоль, тогда это поможет. Я сломал свои несколько SD-карт, прежде чем знал это:
Удерживая нажатой клавишу Alt + PrintScreen, удерживая эти клавиши, последовательно нажимайте следующие клавиши, по одной за раз, с паузой в несколько секунд между ними.
Alt+ PrintScreen+R E I S U O
или же
Alt+ PrintScreen+ R E I S U B(перезагрузка)
Помните удобную мнемонику: перезагрузка, даже если система совершенно сломана.
Замените «O» на «B», чтобы выключить систему вместо перезагрузки (O = выкл, B = загрузка).
Источник: https://www.raspberrypi.org/forums/viewtopic.php?t=176612#p1126262.
Это не очень сложно. Войдите в командную строку и введите sudo halt
. Введите свой пароль, если необходимо. Если на экране ничего нет, потяните за вилку.
Информация с сайта Raspberry Pi.
Существует также плата GPIO под названием Pi Supply, которая имеет переключатель включения, управление питанием и жесткое отключение для блокировки. Это также полезно, если ваш штекер находится за телевизором и к нему трудно добраться. Вы все еще должны нормально выключиться, но затем он выключает Raspberry Pi.
Если вы беспокоитесь о том, чтобы в нормальном режиме использовать порт питания micro-USB, вы можете приобрести USB-адаптер типа «мужчина-женщина» и подключить к нему блок питания.
Есть несколько способов выключить пи! Просто потяните за вилку без надлежащего выключения может повредить вашу SD-карту!
Для выключения используйте sudo shutdown -now
или sudo shutdown -time
сообщите выключение в течение нескольких минут.
Для перезагрузки используйте sudo reboot
для перезагрузки и sudo reboot -time in minutes
включения питания и / или просто sudo reboot
для перезагрузки сейчас sudo shutdown
без -time
значения по умолчанию, равного одной минуте, чтобы отменить отключение.sudo shutdown -c
Примечание: Вы также можете нажать кнопку Raspberry Pi и затем нажать кнопку питания. Затем выключение или перезагрузка, которые как выключение, так и перезапуск являются немедленными!
Как описано в некоторых других ответах на этот пост:
sudo halt
Также будет работать: как только на экране ничего не будет, просто потяните за вилку!
Вам действительно не нужен выключатель питания для вашего Raspberry Pi. Я использую концентратор USB для блока питания, который имеет переключатели вкл / выкл. Поэтому, когда я хочу выключить Raspberry Pi, я просто выключаю USB-переключатель.
Обычные команды Unix работают с Linux, например так:
init 0 выключит его, так что можно безопасно выдернуть вилку.
init 6 перезагрузится.
В отличие от unix, нет никакой необходимости делать синхронизацию; синхронизации; до выключения. Но простое нажатие на вилку может привести к ошибкам, поэтому обязательно используйте shutdown или init 0 перед отключением питания. Если вам случится неожиданно прервать подачу питания, используйте fsck, чтобы проверить и / или устранить любые проблемы, которые могут возникнуть.
Там может быть случай, чтобы сделать полную синхронизацию; синхронизации; синхронизации; спать 30; остановка, если у вас есть внешняя файловая система, которая не монтируется без ошибок. Вы бы знали, если это проблема, запустив fsck на внешних файловых системах сразу после загрузки. Если это вызывает проблемы, то вы можете сделать все это. Но я никогда не видел, чтобы это случилось с моим Rpi3.
Всегда используйте команду для выключения и выключения Raspberry Pi. Я использую sudo halt, как и многие другие пользователи. Рекомендую сделать резервную копию вашей SD-карты. Я случайно отключил мою и как-то испортил изображение. Это проще отключить, чем записать новый образ и начать заново