Linux PC'nin ne kadar süre çalışabileceği maksimum süre? [kapalı]


12

Aslında yeniden başlatmadan günlerce linux sistemi (Ubuntu 12.04.3 çalıştıran) vardı. Uyku asmak gibi bazı hatalara koştu ve bazı ağa bağlı dosya sistemi ping bile mümkün değil montaj almıyor (diğer PC ile doğrulandı, ağ montaj iyi çalışıyordu).

Linux'un tekrarlanamayan bu tür hatalardan kaçınmak için bir süre sonra makineyi yeniden başlatması gerekip gerekmediğini kontrol etmek istedim.

Bilgisayarı koruyabileceğimiz maksimum süre nedir? Yeniden başlatmadan yıl veya daha uzun bir süredir sistemimiz varsa ortaya çıkabilecek başka sorunlar var mı?


2
Statik bir sınır olduğunu düşünmüyorum, çünkü bilgisayarlar bu kadar uzun süre uyanık ve çalışır durumda değil. Derecelendirilmiş bir sınır yoktur; bilgisayarınızın ne kadar süre dayanabileceğini gösterir. Neden zaman zaman yeniden başlatmak istemiyorsunuz?
TheWanderer

7
@ Zacharee1 umm, neden yeniden başlatmak istiyorsun? Güç tüketimi olmadıkça, gerçekten bir nedeni yoktur. Aslında, yapmazsan daha iyi olur. Donanım genellikle parça başına X yıl sürecek. (O da uzakta olacak değil) X'in evrensel 10 olduğunu Basitlik uğruna söz hakkından için yapalım - genellikle 10 olduğunu sürekli o sürebilir kullanım yıldır. Bu normal kullanımdır. Bu sürekli kullanım değil, ancak makineyi bir dahaki sefere başlattığında donanıma da büyük bir darbe vuruyorsanız. Sadece bırakırsanız - çoğu bileşen aşağı doğru döner, tüketimi azaltır ve yine de aşınır.
VLAZ

1
Kullanım sırasında parçaların daha fazla aşınmaya maruz kaldığı açıktır. Bununla birlikte, yeniden başlatma (sadece sistemi kapatmaktan farklı olarak) bileşenlerin aşınmasını azaltmaz, arttırır. Ayrıca, RAM'de önbelleğe alınan verilerin bilgisayarınızı yavaşlattığını düşünüyorsanız, önbelleklerin nasıl çalıştığını temelden yanlış anlarsınız.
user6053

1
Linux'ta bir web sunucusu (örn. LAMP) çalıştırıyorsanız, yeniden başlatmalardan mümkün olduğunca kaçınmak istersiniz, çünkü bunu yapmak web sitelerinizin sisteme geri dönmesi için gereken süreyi kısaltır. Ben hiç bir yıl ama kesinlikle yeniden başlatmadan birkaç ay gitti sanmıyorum.
tcrosley

2
@ Zacharee1 RAM'deki hemen hemen hiçbir şey bilgisayarınızı yavaşlatmaz. Bir uygulamada bellek sızıntısı varsa, RAM'in% 60'ını alabilir ve sistem yakında değiştirmeye başlayabilir, bu da yavaştır, ancak çözüm işletim sistemini değil uygulamayı yeniden başlatmaktır. Makineyi durdurmak, bileşenlerin aşınmasını durdurur, ancak yine de çoğu durumda genellikle giydiklerinden daha erken değiştirirsiniz. Dahası, belirttiğim gibi, donanım bileşenleri aşınmayı zaten kendileri azaltmaktadır. Sadece sistemi boşta bırakarak.
VLAZ

Yanıtlar:


36

Sistem yöneticisi olarak çalıştığımda, yeniden başlatmadan 700-800 günden fazla Linux sunucuları görüyorum, bu yüzden çalışma süresi sınırlaması yok; aldığınız hatalar Linux'un (çekirdeğin) kendisi ile ilgili değildir.

Birçok hizmet yeniden başlatılabilir ve hataların çoğu üretim sistemlerinde çözülebilir.


7
Bunu onaylayabilir. Sunucularımdan birinde mevcut çalışma süresi: ~ $ uptime 00:13:15 883 gün, 9:00, 1 kullanıcı, yük ortalaması: 0.00, 0.01, 0.05 Ubuntu 12.04.4 LTS. Önemli bir şey çalıştırmadığı için hiçbir şeyi güncellemeye gerek yok.
Minthos

5
Katıştırılmış bir Linux örneğini 3 yıldan fazla bir süredir başarıyla sakladım.
Rafał Cieślak

16

Belirli bir süre sonra bilgisayarınızı yeniden başlatmanız için teknik bir gereklilik yoktur. Benim aramda bazı süspansiyonlar (RAM ve disk) dahil aylar boyunca (çekirdek modülü güncellemeleri dahil) çalıştım.

Olduğu durumlar var

  • o çekirdek güncellemeleri gibi, yeniden başlatma için kesinlikle gerekli (ancak bu birçok durumda acil değildir ve bazı durumlarda canlı bir sistem üzerinde yenisi ile çalışan bir çekirdek yerini alabilir. Bkz kexec ve Ksplice )
  • yalnızca belirli bir alt sistem (ler) yerine tüm sistemi yeniden başlatmak daha kolay olabilir.

Zamanla “daha ​​da kötüleşen” bazı sorunlar olabilir (örneğin, donanım sürücüsü sorunları, sızdıran işlemler), ancak bunlar hata olarak kabul edilir ve genellikle bir yazılım yükseltmesi ile giderilebilir veya söz konusu alt sistemin yeniden yüklenmesi / yeniden başlatılmasıyla çözülebilir (ayrıca yukarıyı görmek).


6
Anında çekirdek yama yama hak daha fazla hype alır. Bir güncellemenin bu şekilde çalışacağını doğrulamak için zamanınız varsa harikadır, ancak bellek içi veri yapılarını farklı kılan herhangi bir kod değişikliği sadece canlı yamalanamaz. Genel olarak yeni çekirdeklere yeniden başlatma olmadan yükseltme yapılmasını sağlamayacaktır. İzin denetimi hataları gibi şeyler için yeniden başlatma gerektirmeyen düzeltmelere izin verir. Bir sunucuyu yeniden başlatmak zorunda değilsiniz BÜYÜK ve harika, ancak bunun yeni sürümlerde yeniden başlatma gerektirmeyen yükseltmeler vermesini beklemeyin.
Peter Cordes

1
Peter'a katılıyorum. Bu yüzden bu bağlamda işleri daha karmaşık hale getirmemek için canlı yamadan bahsetmedim; ne yazık ki birisi cevabımı düzenledi.
David Foerster

7

Daha yüksek çalışma süresine sahip sunucular olduğundan emin olmam mümkün olsa da, mümkün olanın bir örneği olarak aşağıdakilerden birini sunuyorum:

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

Bu sunucu, DC'nin yayınlanmasından kısa bir süre sonra kuruldu ve o zamandan beri kapatılmadı. Şimdiye kadar başlangıçta amaçlananı mutlu bir şekilde yapmaya devam etti ve bu amaç farklı bir sunucuya taşındığında, sadece çalışma süresini izlemek için oraya bir şey koyacağım ve hayatta kalmasını haklı çıkaramadıkça muhtemelen ayakta kalacaktır. artık.

Bu yüzden bence "Maksimum yok" kesinlikle doğru cevaptır.


7

Bunun sistemin kararlılığı üzerinde bir etkisi olup olmadığını bilmiyorum, ancak 3.19-xx çekirdeği ile Ubuntu'da gösterilen maksimum çalışma süresi 68,096259734982232-bit bir makinede 292471208677,8627yıllar ve 64-bit bir makinede yıllar.

Tarafından döndürülen Sistemin mevcut çalışma süresi, Çünkü sysinfo()sistem çağrısı, döndürülen bir şekilde __kernel_long_ttip bir ilan edilir, bir şekilde long32 bit çekirdekte ve bir şekilde long long64-bit çekirdeğindeki ;

long32 bitlik bir makinedeki A'nın maksimum değeri 2147483647;

long long64 bitlik bir makinedeki A'nın maksimum değeri 9223372036854775807;

Matematiği yapmak, 2147483647s= 68,0962597349822yıl ve 9223372036854775807s= 292471208677,8627yıl.

Bu değer, türünün kapasitesini aştığında aritmetik bir taşma gerçekleşir ve türünün izin verdiği en küçük değere ayarlanır (her iki durumda da negatif bir sayı): bu, ona güvenen programlar için bir sorun olabilir.


3
OP, sistemin doğru şekilde günlüğe kaydedebileceği maksimum çalışma süresini istemiyor, bazı istikrar / vb. Nedeniyle sistemini düzenli olarak yeniden başlatması gerekip gerekmediğini soruyor. sınırlama.
Boluc Papuccuoglu

@BolucPapuccuoglu Sizce bu formatta, özellikle son kısımda daha iyi uyuyor mu? Sorunun ne olabileceğini açıkça belirtmiştim. Hala olmadığını düşünüyorsanız, cevabımı silerim.
kos

6

Ben bir on yıl boyunca hiçbir reboots ile çalışan bir linux sunucu olduğunu iddia bir sysadmin ile bir kez sınıfta oldu. Bir sistemin düzenli olarak yeniden başlatılması için doğal bir neden yoktur. Yalnızca çekirdek güncellemeleri gibi sınırlı durumlarda gereklidir.

FWIW, genellikle Windows ev bilgisayarımı çalışır durumda bırakıyorum. Genellikle yeniden başlatmadan haftalarca iyi çalışır.


Windows bilgisayarınız yeniden başlatmadan haftalarca devam ederse, otomatik güncellemelerin etkin olmadığı açıktır. Genellikle haftalık olarak indirilir ve neredeyse her zaman yeniden başlatma ile sonuçlanır.
tcrosley

@tcrosley Yine de otomatik güncellemelere kimin ihtiyacı var? Bu makinelerde ilk kapattığım şeylerden biri. Bazı otomatik servisleri değil, bilgisayarımı nasıl kullanacağım hakkında karar vereceğim.
Direk

@tcrosley Windows güvenlik güncelleştirmelerinin genellikle her hafta indirildiğinden emin misiniz? Hem Microsoft'un güncelleme yayın politikalarından hem de Windows kullanan kişisel deneyimlerden aldığım anlayış, güncellemelerin genellikle ayda yaklaşık bir kez yayınlanmasıdır. Mast: Otomatik güncellemeleri kesinlikle devre dışı bırakabilirken, bunun neden daha uzun çalışma süreleri ile sonuçlanacağını bilmiyorum. Muhtemelen - umarım! - en azından güvenlik düzeltmeleri için manuel olarak güncelleme yapıyorsunuz. Öte yandan, otomatik güncellemelerin devre dışı bırakılması , kesinti süresinin ne zaman gerçekleşeceğini kontrol etmeyi kolaylaştırabilir .
Eliah Kagan

@EliahKagan Sadece güvenlik düzeltmelerini değil, aynı zamanda uygulamalar, sürücüler, vb. Her sabah saat 03: 00'de güncellemeleri kontrol eder. Sabah geleceğim ve sistemimin yeniden başlatıldığını göreceğim ve oturum açtıktan sonra "Sisteminiz güncellemeleri yüklemek için yeniden başlatıldı."
tcrosley

4

Linux (çekirdek), programlar çıktığında kaynakları boşaltmakta çok iyidir. GNU / Linux, tüm işletim sistemi, süresiz olarak çalıştırmak için genellikle iyidir. Kullanıcı alanı programlarını güncelledikten sonra glibcyeniden başlatmak genellikle iyi bir fikirdir ve genellikle her şeyi güncelleştirilmiş kullanarak almanın en kolay yolu sistemi yeniden başlatmaktır.

Sürücü hataları olan sistemlerde (genellikle grafik sürücüsü hataları, diğer her şey genellikle kaya gibi), bazen yakında yeniden başlatılmazsa garip davranan garip davranışlar elde edersiniz. dmesgÇıktınızda bir çekirdek OOPS görürseniz , en kısa sürede yeniden başlatmanız ve bildirmeniz gerekir (veya bilinen bir sorun olması durumunda benzer donanımda benzer sorunları olan diğer insanlar için google). Distros, grafik yığınının en son dev sürümlerini göndermez, bu nedenle bazen hata zaten yukarı doğru sabittir ve grafik kartınız, çalıştırdığınız distro sürümündeki sürücüler için kararlı olmak için çok yenidir. Bu durumda, güncellenmiş mesa / drm / xorg yapılarına sahip bir PPA arayın. (Ubuntu'yu kanayan bir grafik yığını ile çalıştırmak için en iyi seçeneğin ATM olduğundan emin değilim).

Her neyse, sürücü veya diğer çekirdek hatalarını kısıtlayan Linux, bellek parçalanmasını veya bunun gibi bir şeyi temizlemek için yeniden başlatmaya gerek kalmadan süresiz olarak çalışabilir.

Yüzlerce gün rutin olarak gören bir Linux yönlendirici / güvenlik duvarı / posta sunucusu / kabuk kutusu (P3 450MHz, 500MHz'e kadar) var. Yalnızca güç kablolarını yeniden düzenlemek veya arızalı bir güç kaynağını değiştirmek için yeniden başlatıyorum. Muhtemelen 15 yıldır aynı CPU / RAM / sabit sürücülerle istikrarlı bir şekilde devam ediyor. Asla yeniden başlatmak zorunda kalmadım "çünkü kararsızlaşıyordu". Her zaman belirli bir nedenden ötürü, başarısız güç kaynağı veya çekirdek yükseltme veya elektrik kesintisi gibi bir durumdaydı ve UPS akümülatörüm neredeyse bitmişti (otomatik kapanma tetikleniyor apcupsd).

Sisteminiz garip davranıyorsa, dmesgsorun olup olmadığını kontrol edin . Yalnızca masaüstünüzse, çekirdek olmayan paket güncellemelerini yeni yüklediyseniz, oturumu kapatın / oturum açın (veya yeniden başlatın, ancak zorunda değilsiniz). Kubuntu 15.04'ün paket güncellemelerinden sonra kolayca sorunla karşılaşacağını fark ettim, aynı kütüphanenin aynı ikili dosyada çalışan yükseltilmiş / yükseltilmemiş sürümleri arasındaki ikili uyumsuzluk nedeniyle düşünüyorum. ( Bu hata hakkındaki tartışmaya bakın ).

Donanım sorunlarını kontrol etmek için kullandığım memtest86 + 'yı başlatmaktır. ( aptitude install memtest86+) Bırakın tam bir geçiş olsun ya da bir gece çalıştırın. Bu, kararlı bir sistemi garanti etmez, çünkü bu günlerde CPU'larda güç kaynağı voltajı düşüşleri gerçekleşebilir ve memtest bunu ortadan kaldırmaz. Prime95 gibi CPU'nuzu da ısıtmaz.


3

Makinem bugün sadece 15.04 için 11 gün kaldıktan sonra hatırlayabileceğim garip hatalar olmadan yeniden başladı. Bir sistem üzerinde ağır iş ve geliştirme yapıyorsanız, bazen yeniden başlatmak için tek seçenek olabilir, ancak bu sadece ihtiyaç temelinde yapılır.


Kesinlikle haklısın! 16.04'te birkaç aydır gelişiyorum. Donma nedeniyle bilgisayarımı genellikle her gün yeniden başlatıyorum. Ama eminim neden yüklediğim ve kullandığım ve sürücüler vb.
efkan

1

Teknik olarak sınır yoktur. sadece uyumayacak veya kapanmayacak şekilde ayarlamanız gerekir.


3
Cevabınızı daha fazla açıklığa kavuşturabilir misiniz? Özellikle bu hat you just have to set it to not sleep or shut down.
heemayl

“Teknik olarak sınır yoktur” kısa bir cevap, öz ve doğru olarak yeterli olurdu.
Léo Lam

0

Şahsen dizüstü bilgisayarımı veya bilgisayarımı günlerce yeniden başlatmak veya kapatmakla çalıştırmak istemem.

Sadece ısı üreten ana bileşenler nedeniyle MB üzerindeki aşınma ve yıpranmayı hızlandırabilir.

(Doğru soğutma ve havalandırmaya sahip değilseniz)


4
Acer veya HP gibi tüketici sınıfı çöpse, ancak işletme sınıfı Thinkpad'ler veya Dell Latitude dizüstü bilgisayarlar genellikle daha iyi yapılır; Şahsen bir yıldan fazla bir süredir 24x7 çalışan bir Latitude'um var, hemen yanımda ve hala mükemmel çalışıyor.

@kingtoor Ara sıra yeniden başlatma ile 7/24 yetersiz soğutulan bir makineyi yeniden başlatmak olmadan 7/24 çalıştırmaktan neden daha iyi olur ? (Ya demek istediğin bu değil mi?)
Eliah Kagan

1
7/24 çalışırken bırakıldığında ısınan bir dizüstü bilgisayarda kullanılmadığında kapanma / uyku, tamam. Bu, sürekli çalışma süresine karşı yeniden başlatma (hiçbir zaman harcanmadan) ile ilgisizdir.
Peter Cordes

Cevabım yorumumda.
Kingtoor

Ayrıca gerçekten bir sunucu olmadığı sürece ortalama bir kullanıcı kendi pc 7/24 çalıştırmak için herhangi bir neden görmüyorum. Bu benim görüşüm.
Kingtoor

0

Ubuntu'ya özgü değil, ancak tek bir program (artı sistem öğeleri ve conky) çalıştırırken, 60 günden fazla çalışma süresine sahip Debian tabanlı bir dağıtım çalıştıran 1997 klasik dizüstü bilgisayarım (300 MHz, 288 MB RAM) var ve haftalık güncellemeleri yüklemek için bir terminal dışındaki diğer yazılımları başlatmaz ve durdurmaz. Sonunda, güncellemeleri yüklerken yaklaşık 63 gün çöktü. Buna karşılık, Kubuntu 14.04 masaüstü sistemim yaklaşık iki hafta sonra ekran kilidinde donacak. Diğer cevaplara katılıyorum; Linux'u çalıştırdığınızdan daha çok hangi yazılımı çalıştırdığınız ve diğer programları ne sıklıkta başlattığınız ve durdurduğunuzla ilgilidir.


Eğer çöktüyse (sert yeniden başlatma veya donma demek, sadece yeniden başlatma olmadan düzeltilebilir X çökmesi değil), bu muhtemelen bir donanım sorunu (aşırı ısınma, kötü RAM, vb.) Olduğu anlamına gelir. Bir sysadmin olarak bazen sunucularımı yeniden başlatmadan aylarca çalıştırıyorum, ancak çekirdek güncellemelerini uygulamak için yeniden başlatmanız gerektiğinden bundan kaçınmayı tercih ediyorum.

Ekran kilidi siyah ekrana döndüğünde, sabit bir sistem kilidi mi yoksa X sunucusu arızası mı olduğunu anlamanın etkili bir yolu yoktur ve X'i veya başka bir şeyi yeniden başlatmak için komut satırına (şifreyi girme yeteneği olmadan) erişmenin yolu yoktur. olabilir. İki hafta sürüyorsa aşırı ısınma veya kötü RAM olmadığını düşünmeye meyilliyim.
Zeiss Ikon

Ctrl + Alt + F1 çalışmıyor? Ve kötü bir grafik sürücüsü suçlu olabilir - yüksek çalışma süresi göz önünde bulundurularak test edilmemiş olabilirler, ancak Linux kesinlikle yıllarca sorunsuz çalışabilir.

CTL-ALT-F1'i denemek zorundayım, eğer bir sonraki ekran kilidi donmasını aldığımda hatırlayabiliyorsam (donanım sıfırlamasını kullanıyorum). Daha sonra startxX sunucusunu yeniden başlatmak için kullanacağımı sanıyorum ? Yoksa hizmeti yeniden başlatmak için özel bir komut kullanmam gerekir mi? Eski Linux'un "Yeniden başlatmalar çekirdek yükseltmeleri ve donanım yüklemesi içindir" demesinin farkındayım.
Zeiss Ikon

Kök veya normal kullanıcı olarak giriş yapın ve
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.