На самом деле у меня была Linux-система (работает Ubuntu 12.04.3) в течение нескольких дней без перезагрузки. Я столкнулся с некоторыми ошибками, такими как сон, зависающий, и какая-то сетевая файловая система не получала монтировку, даже способную ее пинговать (проверено с помощью другого ПК, сетевое устройство отлично работает).
Хотел проверить, также требует перезагрузки машины после некоторого временного интервала, чтобы избежать подобных ошибок, которые не повторяются.
Какое максимальное время мы можем поддерживать на ПК? Существуют ли другие проблемы, которые могут возникнуть, если у нас есть система в течение года или более без перезагрузки?
Не требуется технической перезагрузки компьютера после определенного периода времени.
Есть случаи, когда
абсолютно необходимо перезагрузить компьютер (включая обновления модуля ядра) с некоторыми приостановками (в ОЗУ и диске). , как и обновления ядра (но во многих случаях они не являются неотложными, и в некоторых случаях вы можете заменить запущенное ядро новым в живой системе. См. kexec и Ksplice), может быть проще перезагрузить всю систему, а не только конкретная (совокупность) подсистем (ы).Могут быть некоторые проблемы, которые со временем ухудшаются (например, проблемы с драйверами оборудования, протекающие процессы), но они считаются ошибками и часто могут быть исправлены с обновлением программного обеспечения или обработаны перезагрузкой / перезапуск этой конкретной подсистемы (см. выше).
Однажды я был в классе с системным администратором, который утверждал, что у него был Linux-сервер, который работал без перезагрузки более десяти лет. Нет причин, по которым система должна регулярно перезагружаться. Это требуется только в ограниченных экземплярах, таких как обновления ядра.
FWIW, я обычно оставляю свой домашний компьютер на Windows. Обычно это будет работать в течение нескольких недель без перезагрузки.
Хотя я уверен, что есть серверы с более высоким временем безотказной работы, я представляю следующее из одного из моих в качестве примера того, что возможно:
# uptime
04:58:44 up 2186 days, 23:15, 1 user, load average: 0.02, 0.02, 0.00
Этот сервер был установлен вскоре после DC это в прямом эфире, и с тех пор он не отключен. До сих пор он продолжал счастливо делать то, из чего он был первоначально предназначен, и когда эта цель будет перенесена на другой сервер, я поставлю что-то там, чтобы следить за временем безотказной работы, и он, вероятно, останется на месте, пока я не смогу оправдать его сохранение
Таким образом, я думаю, что «нет максимума» - вполне определенно правильный ответ.
Я не знаю, влияет ли это на стабильность системы, но максимальное время безотказной работы, показанное в Ubuntu с ядром 3.19-xx, составляет 68,0962597349822 лет на 32-битной машине и 292471208677,8627 года на 64-битной machine.
Это связано с тем, что текущее время безотказной работы системы, которое возвращается в syscall sysinfo(), возвращается как тип __kernel_long_t, который объявлен как long в 32-битном ядре и long long в 64-битном ядре;
A long на 32-битной машине имеет максимальное значение 2147483647;
A long long на 64-битной машине имеет максимальное значение 9223372036854775807;
Выполнение математики, 2147483647s = 68,0962597349822 лет и 9223372036854775807s = 292471208677,8627 лет.
[d9 ] Как только это значение увеличивается, превышая возможности своего типа, происходит арифметическое переполнение и устанавливается минимальное значение, разрешенное его типом (в обоих случаях отрицательное число): это может быть проблемой для программ, полагающихся на него.Моя машина только перезагрузилась сегодня в течение 15.04 после того, как она была в течение 11 дней без каких-либо странных ошибок, которые я могу вспомнить. Если вы выполняете тяжелую работу и разработку в системе, иногда это может быть единственным вариантом для перезагрузки, но это только когда-либо на основе потребности.
Linux (ядро) очень хорошо освобождает ресурсы при выходе программ. GNU / Linux, вся ОС, как правило, отлично работает неограниченно. Перезапуск программ пользовательского пространства после их обновления, как правило, является хорошей идеей, и часто самый простой способ получить все, используя обновленный glibc, - перезагрузить систему.
В системах с ошибками драйверов (как правило, графики ошибки водителя, все остальное, как правило, твердое тело), вы иногда получаете странное поведение, которое становится более странным, если вы не перезагружаетесь в ближайшее время. Если вы видите ядро OOPS на выходе dmesg, вы должны перезагрузить его, как только это будет удобно, и сообщить об этом (или google для других людей с аналогичными проблемами на аналогичном оборудовании, если это известная проблема). Distros не поставляют самые последние версии dev графического стека, поэтому иногда ошибка уже исправлена вверх по течению, а ваша графическая карта просто слишком полезна для того, чтобы драйверы в дистрибутивной версии, которую вы запускали, были стабильными. В этом случае найдите PPA с обновленными сборками mesa / drm / xorg. (Я не уверен, что лучший выбор для запуска Ubuntu с кратковременным графическим стекем - это ATM).
В любом случае, запрет драйверов или других ошибок ядра, Linux может выполняться неограниченное время без необходимости перезагрузки для очистки памяти фрагментация или что-то в этом роде.
У меня есть Linux-маршрутизатор / брандмауэр / почтовый сервер / оболочка (P3 450MHz, OCed до 500 МГц), который регулярно просматривает время в сотни дней. Я перезагружаюсь только, чтобы переставить шнуры питания, или заменить неисправный источник питания. Он работает стабильно с теми же CPU / RAM / жесткими дисками, вероятно, 15 лет. Мне никогда не приходилось перезагружаться, потому что он становился нестабильным ». Это всегда было по какой-то причине, например, при сбое питания или обновлении ядра, или отключении питания, а батарея ИБП почти разрядилась (срабатывание автоматического отключения с помощью apcupsd).
Если ваша система действует странно , проверьте проблемы dmesg. Если это всего лишь ваш рабочий стол, то если вы только что установили некоторые обновления пакета, отличные от ядра, выйдите из системы / войдите в систему (или перезагрузитесь, но вам не обязательно). Я обнаружил, что Kubuntu 15.04 легко столкнется с проблемами после обновления пакета, я думаю, из-за двоичной несовместимости между обновленными / не обновленными версиями одной и той же библиотеки, работающими в том же двоичном формате. (См. Обсуждение этой ошибки).
Мое решение для проверки аппаратных проблем - загрузить memtest86 +. (aptitude install memtest86+) Пусть это запустит полный проход или запустит всю ночь. Это не гарантирует стабильную систему, так как в наши дни может произойти падение напряжения питания на шиповых нагрузках с процессорами, и memtest не будет это допущать. Также он не будет горячим вашим процессором, как Prime95.
Технически нет никаких ограничений. вам просто нужно установить его, чтобы он не спал или не выключился.
Не определен для Unbuntu, но у меня есть старинный ноутбук 1997 года (300 МГц, 288 МБ ОЗУ), работающий на дистрибутиве на базе Debian, который имел время безотказной работы более 60 дней, одновременно управляя одной программой (плюс системные вещи и conky), а не запускать и останавливать другое программное обеспечение, за исключением того, что терминал загружает обновления еженедельно. В конце концов, он упал при загрузке обновлений примерно на 63 дня. Напротив, моя настольная система Kubuntu 14.04 закроется в режиме блокировки экрана примерно через две недели. Я согласен с другими ответами; это больше о том, какое программное обеспечение вы запускаете и как часто вы запускаете и останавливаете другие программы, чем о Linux как таковой.
Лично я бы не хотел запускать свой ноутбук или ПК в течение нескольких дней, не перезагружая или не закрывая его.
Просто из-за основных компонентов, которые генерируют тепло, можно ускорить износ МБ.
(То есть, если у вас нет надлежащего охлаждения и вентиляции)