Как предотвратить сон / гибернацию Ubuntu Server

12

Я использую последний сервер Ubuntu (буквально скачанный и установленный вчера) на коробке под моим столом. У меня установлен trac и OpenSSH. И то и другое периодически становится недоступным, как будто сервер перешел в спящий режим, что кажется странным, потому что для меня вся идея сервера в том, что он всегда включен / доступен.

Сервер используется только в локальной сети.

Я попытался добавить acpi=offв / etc / default / grub, запустить обновление и перезагрузку, без разницы.

В настоящее время у меня открыт SSH, и если я оставлю его на некоторое время, он останется подключенным, но ужасно отстает, когда вернусь к его использованию. В прошлый раз, когда возникла проблема сна / гибернации, мне пришлось подключить клавиатуру и монитор, чтобы она снова появилась.

Есть идеи или предложения?

Трент
источник
Не уверен, что это будет работать или нет. Установите sleep_computer_acв 0, используя gconftool-2 --set --type int /apps/gnome-power-manager/timeout/sleep_computer_ac 0`
g_p
проверьте настройки hdparm. какой выводsudo hdparm -B /dev/sda
mchid
причина, по которой я спрашиваю, состоит в том, что иногда системе может потребоваться минута или две, чтобы система начала правильно реагировать после вращения диска.
mchid

Ответы:

7

Я понимаю, что это старый пост, но у меня была такая же проблема, и мне было трудно найти достойный ответ.

Мой ноутбук с Ubuntu Server перешел бы в экранную заставку белого цвета, и вскоре все потеряло бы соединение с сервером. Как только я вышел из экранной заставки с клавиатурой на ноутбуке, все смогло снова подключиться. Acpi = off, setterm -blank 0 и другие параметры, описанные для подобных вопросов, никогда не работали, пока я не нашел рабочий ответ от Unix и Linux SE.

После этого решения мой ноутбук по-прежнему переходит на экранную заставку белого цвета, однако я больше не теряю соединение ни с одной из работающих на нем служб (SSH, SFTP, HTTP).

Эта команда отключает приостановку:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

и эта команда возвращает его:

sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target
Джон Доу
источник
1

Попробуйте использовать

setterm -blank 0

Его нужно вводить после каждой загрузки, но все работает.


источник
Можете ли вы дать немного больше информации, пожалуйста
Panther
Команда setterm - это команда, -blank - это то, что настраивает команда, а 0 - значение времени, использованное командой.
Что конкретно вы хотели бы знать?
Это решило проблему?
1

Вы можете попробовать кофеин. Вы можете использовать команду 'caffeinate', чтобы запретить серверу спать в течение заданной команды (см. Синтаксис http://www.webupd8.org/2015/01/caffeine-app-gets-its-indicator-back.html). ) или просто установите его так, чтобы он все время не работал.

bp0
источник
1
Хотя ваш ответ на 100% правильный, он также может стать на 100% бесполезным, если эта ссылка будет перемещена, изменена, объединена с другой или основной сайт просто исчезнет ... :-( Поэтому, пожалуйста, отредактируйте свой ответ и скопируйте соответствующую ссылку. переходя от ссылки к вашему ответу, тем самым гарантируя ваш ответ в течение 100% срока службы этого сайта! ;-) Вы всегда можете оставить ссылку внизу вашего ответа в качестве источника для вашего материала ...
Fabby
Зачем устанавливать стороннее программное обеспечение, чтобы делать то, что уже делает setterm -blank 0?
Родриго
-1

setterm -blank 0добавленная в загрузочную команду GRUB ядро ​​обычно игнорируется, и мне приходится использовать функцию стрелки вверх, чтобы снова и снова набирать ее снова и снова. Кажется, работает после ввода команды 15 или 20 раз из корневого терминала. Я ввожу его так быстро, как только могу нажать 2 необходимые клавиши (т. Е. Стрелку вверх, а затем клавишу ввода), и обычно я могу заставить терминал оставаться открытым.

Имейте в setterm -blank 0виду, что закрытие терминала, искусственно удерживаемого открытым с помощью команды`, по-видимому, интерпретируется ядром как абсолютно ошибочное «указание», которое имеет права независимо переходить в режим сна / спящий режим. Я рекомендую вам запустить корневой терминал, скажем, в tty2 или tty3 и оставить его работающим. Пока терминальная программа остается активной, по крайней мере, в моей системе кажется, что мне может быть разрешено поддерживать монитор консоли в рабочем состоянии.

setterm -blank 0это не решение проблемы , которые дали системные разрешения идти самостоятельно в режим сна / гибернации и как я могу получить контроль над своей системой спины. Для меня важно, чтобы мой файловый сервер был подключен к сети и был доступен в любое время. Чтобы сохранить работу моего сервера, я лично переписываю некоторые модули ядра. После того, как я получу эти моды на месте, я навсегда отключу обновления программного обеспечения, и моя проблема будет решена, по крайней мере, до тех пор, пока я не куплю новое оборудование, для которого требуется более новое ядро, а затем, чтобы сервер работал, я буду вынужден переписать части ядра еще раз.

Старый и в пути
источник