Процесът на рестартиране на Linux сървър изглежда като обикновена задача. В действителност тя не е толкова проста. Рестартирането може да доведе до непредвидени последици, вариращи от загуба на информация до срив на операционната система. Нека разгледаме как безопасно да рестартирате Linux сървър.
Кога може да се наложи да рестартирате
Преди да пристъпите към дистанционно рестартиране на сървъра, се уверете, че това наистина е необходимо. Прекъсването на работата без важна причина може да доведе до неправилно функциониране на хардуера на сървъра. В кои случаи трябва да рестартирам сървъра?
- Сървърът виси или се забавя.
- Когато инсталираните програми не работят правилно.
- При смяна на операционната система.
- При работа с BIOS (ако има физически достъп или негова емулация).
- Когато използвате софтуер за копиране и възстановяване на данни на ниско ниво (например Acronis Backup).
Также помните: не стоит перезагружать сервер во время установки/удаления программ.
Начини за рестартиране на сървъра
Рестартирането може да бъде меко или твърдо. Мекото рестартиране е по-безопасно - след като получи команда, сървърът изчаква всички процеси да завършат правилно, преди да спре и да се рестартира. Хардуерното рестартиране се осъществява чрез краткотрайно прекъсване на захранването (подобно на натискане на бутона за нулиране на компютър - възможна е загуба на информация или повреда на някои данни. Затова хардуерното рестартиране е крайна мярка, която се използва, когато другите методи са неприемливи.
Рестартиране чрез конзола
Как да рестартирате сървъра чрез конзолата? Препоръчваме ви да използвате SSH, за да се свържете със сървъра от разстояние. За рестартиране на Linux сървъри има 3 лесни начина за рестартиране чрез конзола: командите shutdown, reboot и init.
Командата за рестартиране на сървър в Linux с Ubuntu:shutdown -r now
Можете също така да планирате рестартиране за определено време чрез командния ред:shutdown -r 11:00
Или след определен период от време:shutdown -r +5
За да рестартирате сървъри с Ubuntu, Debian, CentOS или други дистрибуции, използвайте командата:reboot now
След въвеждането на тази команда връзката със сървъра ще бъде прекъсната.
Можете също така да използвате командата, като използвате системните нива за инициализация Init Scripts:init 6
Ако няма статус на суперпотребител - Linux използва вградената помощна програма D-Bus. Този метод е подходящ в случай, че графичната обвивка не реагира. Необходимо е да се извършат няколко стъпки:
- Стартирайте терминал и изпълнете командата:
echo 1 > /proc/sys/kernel/sysrq
- Отворете конфигурационния файл в текстов редактор, например:
sudo nano /etc/sysctl.conf
- Добавете следния ред в края на файла:
kernel.sysrq = 1
- Запазете промените, като щракнете върху
Ctrl + O
иCtrl + X
- Натиснете едновременно клавишите
Alt + SysRq
+R E I S U B
на интервали от една секунда.
Можете също така да използвате само ключа SysRq, като първо запишете кода на операцията във файла /proc/sysrq-trigger:
echo b > /proc/sysrq-trigger
За да рестартирате в режим на възстановяване, изберете съответния елемент в конзолата и изпълнете командата reboot (рестартиране).
Заключение
Ако след рестартиране сървърът не работи, трябва да се свържете чрез IP-KVM, за да разберете текущото му състояние. В случай на проблеми се препоръчва да се свържете и с техническата поддръжка.
Важно е да запомните, че рестартирането не винаги е единственото решение на даден проблем. Преди да рестартирате системата, се уверете, че това наистина е необходимо.