Максимальний час, за який може бути ПК з ОС Linux? [зачинено]


12

Насправді у мене була система Linux (працює Ubuntu 12.04.3) протягом днів без перезавантаження. Я зіткнувся з деякими помилками, такими як зависання уві сні, а деякі файлові системи, встановлені в мережі, не отримують змонтування, навіть не в змозі пропустити його (перевірено за допомогою іншого ПК, мережеве кріплення працювало нормально).

Хотіли перевірити, чи Linux також вимагає перезавантажити машину через деякий проміжок часу, щоб уникнути таких типових помилок, які не повторюються.

Який максимальний час ми можемо підтримувати ПК? Чи є якісь інші проблеми, які можуть виникнути, якщо у нас система працює рік і більше без перезавантаження?


2
Я не думаю, що існує статична межа, оскільки комп'ютери просто не повинні так довго пробуджуватися і працювати. Немає номінальної межі; це як довго ваш комп'ютер може стояти. Чому б вам не хотілося періодично перезавантажувати.
TheWanderer

7
@ Zacharee1 ммм, чому б ви хотіли перезавантажити? Якщо це не енергоспоживання, то насправді не так багато причин. Насправді, краще, якщо ви цього не зробите. Зазвичай апаратне обладнання триватиме X років на частину. Скажімо для простоти, що X - це загально 10 (це теж не буде далеко) - це зазвичай 10 безперервних років використання. Це нормальне використання. Якщо ви перезавантажуєте це, що не використовуєте постійно, але при наступному завантаженні машини ви також отримуєте велике обладнання. Якщо ви просто залишите це - більшість компонентів віджимаються, зменшуйте споживання і зношуйтесь.
VLAZ

1
Очевидно, що при використанні деталі зазнають більшого зносу. Однак перезавантаження (на відміну від просто вимкнення системи) не зменшує знос компонентів, а збільшує його. Крім того, ви принципово неправильно розумієте, як працюють кеші, якщо ви думаєте, що дані, кешовані в оперативній пам'яті, сповільнюють ваш комп'ютер.
user6053

1
Якщо ви працюєте з веб-сервером в Linux (наприклад, LAMP), ви хочете максимально уникнути перезавантажень, оскільки це призведе до того, що ваші веб-сайти будуть знищені на час, необхідний для відновлення системи. Я не думаю, що я ніколи не ходив рік, але, звичайно, кілька місяців без перезавантаження.
tcrosley

2
@ Zacharee1 майже нічого в оперативній пам'яті не сповільнить ваш комп'ютер. Якщо в програмі відбувається витік пам'яті, це може зайняти, скажімо, 60% оперативної пам’яті, і система незабаром почне мінятись, що повільно, однак рішення полягає в перезавантаженні програми, а не ОС. Зупинення машини зупиняє знос компонентів, але ви замінюєте їх раніше, ніж зазвичай вони в більшості випадків. І більше того, як я зазначив, апаратні компоненти вже зменшують зношення. Просто, залишивши систему в режимі очікування.
ВЛАЗ

Відповіді:


36

Працюючи системним адміністратором, я бачу Linux-сервери протягом понад 700-800 днів без перезавантаження, тому немає обмежень на час роботи; отримані помилки не пов'язані з самим Linux (ядром).

Багато послуг можна перезапустити і більшість помилок можна вирішити на виробничих системах.


7
Можна підтвердити це. Поточний час роботи на одному з моїх серверів: ~ $ uptime 00:13:15 до 883 днів, 9:00, 1 користувач, середнє завантаження: 0,00, 0,01, 0,05 Ubuntu 12.04.4 LTS. Не потрібно нічого оновлювати, оскільки це не працює нічого важливого.
Мінтос

5
Я успішно зберігав вбудований екземпляр Linux протягом 3+ років.
Rafał Cieślak

16

Немає технічної необхідності перезавантажувати комп’ютер через певний проміжок часу. У мене тривали місяці (включаючи оновлення модуля ядра) з деякими підвісками (для оперативної пам’яті та диска) між ними.

Бувають випадки, коли

  • це абсолютно необхідно перезавантажити, як-от оновлення ядра (але вони не є терміновими у багатьох ситуаціях, а в деяких випадках ви можете замінити запущене ядро ​​на нове в живій системі. Див. kexec та Ksplice )
  • може бути простіше перезапустити всю систему замість лише певної (набору) підсистем.

Можуть виникнути деякі проблеми, які з часом «погіршуються» (наприклад, проблеми з драйверами апаратних засобів, протікаючі процеси), але вони вважаються помилками, і їх часто можна виправити за допомогою оновлення програмного забезпечення або обробляти шляхом перезавантаження / перезавантаження цієї конкретної підсистеми (також Дивись вище).


6
Під час виправлення ядра виправлення стає більше, ніж це заслуговує. Чудово, якщо у вас є час переконатися, що оновлення працюватиме таким чином, але будь-яка зміна коду, яка робить структуру даних в пам'яті різною, не може бути просто виправленою. Загалом, це не дозволить увімкнути оновлення без перезавантаження до нових ядер. Це дозволить виправляти без перезавантаження такі речі, як помилки, що перевіряють дозвіл. ВЕЛИКИЙ, і приголомшливо не перезавантажувати сервер, але не сподівайтеся, що це дасть вам можливість перезавантажити оновлення до нових версій.
Пітер Кордес

1
Я згоден з Петром. Ось чому я не згадував живий виправлення в цьому контексті, щоб не ускладнити справи; на жаль, хтось відредагував мою відповідь.
Девід Фоерстер

7

Хоча я впевнений, що існують сервери з більшим режимом роботи, я подаю наступне з одного з моїх як приклад того, що можливо:

# uptime
04:58:44 up 2186 days, 23:15,  1 user,  load average: 0.02, 0.02, 0.00

Цей сервер був встановлений невдовзі після того, як DC увійшов в дію і з тих пір його не вимкнено. Поки що він продовжує радісно робити те, що спочатку було призначено, і коли ця мета буде перенесена на інший сервер, я покладу щось там, щоб відстежувати час роботи, і, ймовірно, буде залишатися, поки я не можу виправдати збереження цього життя не довше.

Тому я вважаю, що "немає максимуму" - це точно напевно правильна відповідь.


7

Я не знаю, чи впливає це на стабільність системи, але максимальний час роботи, показаний в Ubuntu з ядром 3.19-xx, - це 68,0962597349822роки на 32-бітній машині та 292471208677,8627роки на 64-бітній машині.

Це тому , що поточний час безвідмовної роботи системи, яка повертається в системного sysinfo()виклику, повертається в якості __kernel_long_tтипу , який є оголошеної як longв 32-бітове ядро , і , як long longв 64-бітове ядро ;

А longна 32-бітній машині має максимальне значення 2147483647;

А long longна 64-бітній машині має максимальне значення 9223372036854775807;

Виконуючи математику, 2147483647s= 68,0962597349822роки і 9223372036854775807s= 292471208677,8627роки.

Після того, як це значення збільшується, перевищуючи можливості свого типу, відбувається арифметичне переповнення і воно встановлюється на найменше значення, дозволене його типом (в обох випадках від’ємне число): це може бути проблемою для програм, що покладаються на нього.


3
ОП не вимагає максимальної тривалості роботи, щоб система могла точно ввійти, він запитує, чи буде потрібно регулярно перезавантажувати систему через певну стабільність / тощо. обмеження.
Болук Папукуоглу

@BolucPapuccuoglu Подивіться, чи на ваш погляд він краще вписується в цей формат, особливо останню частину. Я чітко зазначив, яка проблема може бути. Якщо ви все ще вважаєте, що це не відбувається, я видалю свою відповідь.
кос

6

Я колись був у класі з систематичним адміністратором, який стверджував, що у нього Linux-сервер, який працює без перезавантажень більше десяти років. Немає причин, що потребують регулярного перезавантаження системи. Це потрібно лише в обмежених випадках, таких як оновлення ядра.

FWIW, я зазвичай залишаю свій домашній комп'ютер Windows працює. Зазвичай він буде працювати нормально протягом тижнів без перезавантаження.


Якщо ваш комп'ютер Windows працює тижнями без перезавантаження, у вас, очевидно, не ввімкнено автоматичне оновлення. Зазвичай вони завантажуються щотижня і майже завжди призводять до перезавантаження.
tcrosley

@tcrosley Кому взагалі потрібні автоматичні оновлення? Це одне з перших речей, які я вимикаю на цих машинах. Я вирішу, як використовувати свій комп’ютер, а не якийсь автоматичний сервіс.
Щогли

@tcrosley Ви впевнені, що оновлення безпеки Windows зазвичай завантажуються щотижня? Як я розумію, як із політики щодо випуску оновлень Microsoft , так і з особистого досвіду роботи з Windows, що оновлення зазвичай виходять приблизно один раз на місяць. Щогла: Хоча ви, звичайно, можете відключити автоматичні оновлення, я не знаю, чому це може призвести до більш тривалого часу. Імовірно - сподіваємось! - Ви оновлюєте вручну, принаймні, для виправлень безпеки. З іншого боку, відключення автоматичних оновлень може полегшити контроль за часом простою.
Eliah Kagan

@EliahKagan У мене налаштована машина для завантаження не лише виправлень безпеки, але й оновлень програм, драйверів і т. Д. Можливо, я помиляюся про те, що це відбувається раз на тиждень, але це, звичайно, частіше, ніж раз на місяць. Він перевіряє оновлення щоранку о 3:00. Я заходжу вранці, і виявлю, що моя система перезавантажилася, і після входу в систему з'явиться повідомлення "Ваша система перезавантажена для встановлення оновлень".
tcrosley

4

Linux (ядро) дуже добре звільняє ресурси при виході програм. GNU / Linux, вся ОС, як правило, добре працювати безстроково. Перезапуск програм для користувацького простору після їх оновлення, як правило, є хорошою ідеєю, і часто найпростіший спосіб отримати все за допомогою оновленого glibc- це перезавантажити систему.

У системах з помилками драйверів (як правило, графічні помилки драйверів, все інше, як правило, є твердим), іноді ви отримуєте дивну поведінку, яка стає слабкішою, якщо ви не скоро перезавантажтесь. Якщо ви бачите у своєму dmesgвиході OOPS ядра , вам слід перезавантажити, як тільки це зручно, і повідомити про це (або погуртувати навколо інших людей із подібними проблемами на аналогічному обладнанні, якщо це відома проблема). Distros не постачає найновіші версії розробленого графічного стека, тому іноді помилка вже виправлена ​​вгору, а ваша відеокарта просто надто нова, щоб драйвери в дистрибутивної версії, яку ви працюєте, були стабільними. У такому випадку шукайте PPA з оновленими складами mesa / drm / xorg. (Я не впевнений, що найкращий вибір для запуску Ubuntu з кровотоковим графічним стеком - банкомат).

У будь-якому випадку, забороняючи драйвер заборони або інші помилки ядра, Linux може працювати безстроково, не потребуючи перезавантаження, щоб очистити фрагментацію пам'яті чи щось подібне.

У мене є маршрутизатор / брандмауер / поштовий сервер / оболонка Linux (P3 450 МГц, OCed до 500 МГц), який регулярно бачить сотні днів. Перезавантажуюсь лише для того, щоб переставити шнури живлення або замінити несправний блок живлення. Йде стабільно з тим же процесором / оперативною пам’яттю / жорсткими дисками, мабуть, 15 років. Мені ніколи не доводилося перезавантажуватись, "оскільки вона ставала нестабільною". Це завжди було з певної причини, як, наприклад, несправне джерело живлення, оновлення ядра, або відключення електроенергії, і мій акумулятор ДБЖ був майже розряджений (викликав автоматичне відключення apcupsd).

Якщо ваша система діє дивно, перевірте dmesgпроблеми. Якщо це лише ваш робочий стіл, тоді, якщо ви просто встановили деякі оновлення пакета, що не належить до ядра, вийдіть із системи / увійдіть (або перезавантажте, але цього не потрібно). Я виявив, що Kubuntu 15.04 легко зіткнеться з проблемами після оновлення пакету, я думаю, що через бінарну несумісність між оновленими / неоновленими версіями тієї ж бібліотеки, що працює в одній бінарній. (Дивіться обговорення цієї помилки ).

Моє звернення до перевірки апаратних проблем - це завантаження memtest86 +. ( aptitude install memtest86+) Нехай той працює повним пропуском, або бігай протягом ночі. Це не гарантує стабільної системи, оскільки пониження напруги живлення на шипових навантаженнях може трапитися сьогодні з процесорами, і memtest цього не виключить. Також це не стане вашим процесором гарячим, як Prime95.


3

Моя машина сьогодні перезавантажилася лише 15.04 після того, як вона працювала протягом 11 днів без будь-яких дивних помилок, які я можу пригадати. Якщо ви робите важку роботу та розробку в системі, іноді це може бути єдиним варіантом перезавантаження, але це завжди лише за потреби.


Точно ти маєш рацію! Я розвивався 16.04 протягом декількох місяців. Через заморожування я перезавантажую комп'ютер, як правило, щодня. Але я впевнений , що причина в тому , що я встановив , і я використовую на і водіїв і т.д.
efkan

1

Технічно немає обмежень. ви просто повинні налаштувати його не спати і не вимикати.


3
Чи можете ви уточнити та детальніше пояснити свою відповідь? Спеціально ця лінія you just have to set it to not sleep or shut down.
heemayl

"Технічно немає обмежень" було б достатньо як коротка відповідь, лаконічна і правильна.
Лео Лам

0

Особисто я не хотів би запускати свій ноутбук чи ПК протягом кількох днів із перезавантаженням або вимкненням.

Просто через основні компоненти, які генерують тепло, можна прискорити знос MB.

(Це якщо у вас немає належного охолодження та вентиляції)


4
Якщо це сміття для споживачів на зразок Acer або HP, але, як правило, краще виготовити ноутбуки Thinkpads або ноутбуки Dell Latitude; У мене особисто Latitude працює 24x7 вже більше року, він знаходиться поруч зі мною і працює чудово.

@kingtoor Чому було б краще запустити неадекватно охолоджену машину 24x7 з випадковими перезавантаженнями, ніж запускати її 24/7 без перезавантаження? (Або це не те, що ви хочете сказати?)
Елія Каган

1
Вимкнення / сну, коли не використовується на ноутбуці, який нагрівається, коли його працювати 24/7, нормально. Це не пов'язано з перезавантаженням (без витраченого часу) і постійним режимом роботи.
Пітер Кордес

Моя відповідь - у моєму коментарі.
Kingtoor

Крім того, я дійсно не бачу причин для пересічного користувача запустити свій ПК 24/7, якщо у них немає сервера. Така моя думка.
Kingtoor

0

Не характерно для Ubuntu, але я маю вінтажний ноутбук 1997 року (300 МГц, 288 МБ оперативної пам’яті), який працює на базі Debian, який мав тривалість роботи понад 60 днів, одночасно запускаючи єдину програму (плюс системні речі та конічні) та не запускати та не зупиняти інше програмне забезпечення, крім терміналу для завантаження оновлень щотижня. Врешті-решт воно вийшло з ладу при завантаженні оновлень, приблизно за 63 дні. Навпаки, моя настільна система Kubuntu 14.04 замерзне в блокуванні екрану приблизно через два тижні. Я згоден з іншими відповідями; мова йде більше про те, яке програмне забезпечення ви запускаєте і як часто ви запускаєте та зупиняєте інші програми, ніж про Linux як таке.


Якщо він вийшов з ладу (я маю на увазі жорсткий збій або заморожування, а не просто збій X, який можна виправити без перезавантаження), це, ймовірно, означає, що є апаратні проблеми (перегрів, погана оперативна пам'ять тощо). Як sysadmin, я іноді мої сервери працюють місяцями без перезавантаження, хоча я вважаю за краще уникати цього, оскільки вам потрібно перезавантажити, щоб застосувати оновлення ядра.

Коли блокування екрана перейшло на чорний екран, немає ефективного способу визначити, чи це блокування жорсткої системи чи помилка сервера X - і жодного способу отримати доступ до командного рядка (без можливості введення пароля) для перезавантаження X або будь-якого іншого це може бути. Я схильний думати, якщо це займе два тижні, це не перегрівання або погана ОЗУ.
Zeiss Ikon

Ctrl + Alt + F1 не працює? Винуватцем може бути поганий графічний драйвер - вони, можливо, не перевірені з урахуванням тривалості роботи, але Linux, безумовно, може працювати роками без проблем.

Мені доведеться спробувати CTL-ALT-F1, якщо я можу його згадати наступного разу, коли я заблокую блокування екрана (я використовував жорсткий скидання). Я припускаю, що потім використати startxдля перезавантаження X-сервера? Або мені потрібно використовувати спеціальну команду, щоб перезапустити службу? Я добре знаю стару приказку Linux, що "Перезавантаження призначено для оновлення ядра та встановлення обладнання".
Zeiss Ikon

Увійдіть як root або як звичайний користувач та використовуйте sudo та дотримуйтесь цих вказівок
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.