Linux'ta (Debian / Ubuntu) Windows gibi bir “geri yükleme noktası” var mı?


17

Doğrudan bir Ubuntu Sanal Makinesi'nde (VM) çalışıyorum. Bazı güncellemeler (çekirdek gibi) güncelleme yöneticisinde mevcuttu.

Bir VM kullanmasaydım, bir şeyi kırma riski olduğu için onu güncellemezdim. Sanal makine olduğundan, bir Anlık Görüntü oluşturabilir veya bir cihazı dışa aktarabilir ve bir şeyler ters giderse geri yükleyebilirsiniz.

Debian / Ubuntu kurulumuna sahip bir VM kullanmıyorum. Sisteminizi tam olarak yükseltmeden önce (Windows'taki "Geri Yükleme Noktası" gibi) geri yüklemek için VM yapılandırmasına bağımlı olmayan bir yükleme geri yükleme yaklaşımı var mı, bir VM cihazı gibi geri yüklemesi kolay mı?

("Hayalet görüntüler" veya bunun gibi bir şey aramıyorum (Norton Ghost, Clonezilla, vb.), Linux Sisteminde yerleşik bir şey arıyorum)


3
Bunun konu dışı olduğunu biliyorum, bu yüzden yorum olarak ekliyorum, ancak OpenSolaris tüm ZFS dosya sisteminin anlık görüntüsünü yapabilir ve daha sonra geri yükleyebilir. Tekilleştirme nedeniyle çok fazla disk alanı gerektirmez. Aslında, büyük yükseltmeler yapmanın standart yolu yeni bir FS anlık görüntüsü oluşturmak ve yükseltmeleri yüklemek. Ti çalışırsa, eskisini silebilirsiniz. Değilse, çalışmakta olana geri dönebilirsiniz.
AndrejaKo

3
@AndrejaKo: +1 Ancak, bu bir "klon" (yazılabilir bir anlık görüntü; normal anlık görüntüler salt okunurdur) ve çok fazla alana ihtiyaç duymaması, tekilleştirme ile ilgili değildir, ancak anlık görüntülerin ve klonların işlenme biçimiyle ilgisi yoktur. COW dosya sistemlerinde. Yinelenenleri kaldırılmamış havuzlarda da aynı disk alanından tasarruf edersiniz.
knweiss

@knweiss Evet, doğru. Sadece baktım!
AndrejaKo

Yanıtlar:


15

Bildiğim herhangi bir Linux dağıtımında yerleşik benzer bir özellik yok. Windows'a göre çok daha az kullanışlı olmasının birkaç nedeni vardır.

  • Öncelikle, Linux dağıtımları Microsoft'tan çok daha ciddidir ve kararlı sürümlerin sadece önemli hataları düzeltmek için ve minimum değişikliklerle yükseltilmesi konusunda yükseltilmiştir. Örneğin, Ubuntu ve Debian ile yalnızca güvenlik güncelleştirmelerini ( -security) veya yalnızca güvenlik güncelleştirmelerini ve önemli hata düzeltmelerini ( -updates) almayı seçebilirsiniz .

  • Çekirdek yükseltmeleri, riskli görünen bir değişikliğin belirli bir donanım yapılandırmasında soruna neden olma olasılığı nedeniyle en riskli olanlardır. Bu nedenle, çoğu dağıtım aynı anda birden fazla çekirdek sürümünün yüklenmesine izin verir; örneğin, bunu yazarken, Ubuntu 10.04'ün üç çekirdek sürümü vardır: 2.6.32.21.22orijinal sürümden, 2.6.32.22.23güvenlik güncelleştirmelerinden ve 2.6.32.23.24güvenlikle ilgili olmayan güncelleştirmelerden de. ... 24 sürümü bilgisayarınızda bir soruna neden oluyorsa, ... 23 altında yeniden başlatabilirsiniz (ve en azından yetenek kullanıyorsanız ... 24'ü yüklemek yasak olarak işaretleyebilirsiniz).

  • Kayıt defteri yoktur: tüm yapılandırma verileri dosyalardadır ( /etchiyerarşide), bir şeyler ters giderse kolayca ayrı ayrı geri yüklenebilir. O zaman bile, kararlı sürümdeki güncellemeler altındaki dosyaları nadiren etkiler /etc.

  • Kararlı bir sürüm dışındaki bir kaynaktan paketler yüklüyorsanız, paketlerin eski sürümlerinin kopyalarını saklamak ve yapılandırma dosyalarınızın yedeklerini saklamak isteyebilirsiniz. İşte Debian ve Ubuntu'da bununla ilgili birkaç ipucu.

    • İndirilen paketler saklanır /var/cache/apt/archives. Disk alanınız varsa, yeni sürümün sizin için çalıştığını onaylayana kadar eski paket dosyalarını silmeyin.
    • Birçok kaynak eski sürümleri korur, böylece kolayca eski sürüme geçebilirsiniz (eski bir sürümü manuel olarak indirip yükleyerek veya apt tercihlerini kullanarak). Debian için snapshot.debian.org adresine bakın .
    • Sürüm kontrolünü ayarlamanın çok kolay bir yolu vardır /etc: etckeeperpaketi kurun ve komutla etkinleştirin etckeeper init. (Bunu yapıyorum, ama yükseltmeleri bir şeyleri kırmaktan endişe ettiğim için değil, değişikliklerimin bir şeyi kırması konusunda endişelendiğim için değil.

Evet, Windows'un kararlılığı ile Debian / kararlı arasında hiçbir karşılaştırma yoktur. Bir şey kırılsa bile (neredeyse her zaman belirgin kullanıcı hatası nedeniyle), hata ayıklamak ve sorunu gidermek için birçok araç vardır.
liori

2
"Çekirdek yükseltmeleri en riskli sürümlerdir" - Bu yüzden Knoppix'in bir kopyasını bilgisayarımın yanında tutuyorum. 5 ve 6 değil.
amfetamachine

Ayrıca rsync tabanlı bir dosya sistemi anlık görüntüsü yardımcı programı olan yararlı [rsnapshot] (rsnapshot.org) bulabilirsiniz .
Pablo A

5

Paket yöneticisi hangi dosyanın hangi paketten geldiğini hallettiğinden ve paket güncellemesini veya yüklemesini geri alabildiğinden gerekli değildir.


2
ancak paket yeniden başlatma sırasında bir şeyleri kırdıysa, geri alma yapmak zorlaşabilir (özellikle çekirdek revizyonları ile ilgili)
warren

1
Bu nedenle genellikle bir önceki çekirdek tutulur ve gruba önyükleme için seçilebilir.
mbq

1
Katılmıyorum. Basit bir yeniden başlatma ile OS güncellemesi x ve güncelleme x + 1 (fark bir çekirdek paketinden çok daha fazlasını içerebilir) arasında geçiş yapabilmek çok yararlı olacaktır. Bu OpenSolaris ile mümkündür.
knweiss

Kararlı sürücüler bulmak dışında Solaris ile her şey mümkündür ;-)
mbq

5

Etckeeper gibi bir araç kullanmayı deneyebilirsiniz . Bu araç, sistem genelindeki yapılandırma dosyalarını bir sürüm kontrol deposunda tutar ve herhangi bir değişikliği geri almayı ve yeniden uygulamayı kolaylaştırır.

Ancak, dürüst olmak gerekirse, debian / istikrarlı sistemlerimdeki güncellemelerden gelen hiçbir değişikliği geri almam gerekmedi. Elle yaptığım hataları düzeltmek için kullanıyorum.


Etckeeper kullanıyorum, ancak aslında değişikliklerin zaman çizelgesini geri dönmekten daha yararlı buluyorum (elbette her iki yeteneği de elde ediyorsunuz). Arka ucun (örn. Hg, git, bzr, vb.) Yerleşik web sunucusunu kullanmak genellikle en kolay sudo hg serve -R /etc

3

TMK, Windows geri yükleme özelliği yalnızca kayıt defterindeki ve bazı kritik dizinlerdeki değişiklikleri tersine çevirir. Linux buna sahip değil.

Yedeklerle manuel yaklaşımı deneyebilirsiniz. Sadece giriş dizininizi ve Synaptic program listelerini yedekleyin ve bunu geri yükleme noktası olarak kullanın.


3

Özellikle Ubuntu'nun (ancak muhtemelen Debian'ın) güncellemeleri yüklerken eski çekirdek paketlerini kaldırmayacağını ve önyükleyiciyi önyükleme sırasında seçilecek çekirdeklerin listesini sunacak şekilde yapılandırabileceğinizi unutmayın.

Bu, yalnızca çekirdek için - otomatik olarak "geri yükleme noktaları" oluşturur; çünkü daha yeni sorunlara neden olursa önceki sürümü seçebilirsiniz. Bildiğim kadarıyla, Windows'un çekirdek güncellemeleri için böyle bir şey yok. (Ve özellikle ev kullanıcıları için, bir çekirdek güncellemesi nedeniyle bir önyükleme yapamayan bir sistemi teşhis edip düzeltmeye yardımcı olmak istemem.)


3

Timeshift adlı bir araç var. ( http://www.teejeetech.in/p/timeshift.html ) Kullanmadım, ancak umut verici görünüyor ve kullanıcılardan iyi şeyler duydum. Anlık görüntüler veri çoğaltılmasını önlemek için tasarlanmıştır. Ve karanlık görünümlü web sitesinden korkmayın. :)


2

Sabit disklerinizin içeriğini yönetmek için Mantıksal Birim Yöneticisi'ni kullanırsanız, anlık görüntüleri kullanarak bunu bir dereceye kadar ücretsiz olarak alabilirsiniz. Harika NASIL belgesini alıntılamak için : "Bir örnek, bir birimin anlık görüntüsünü almak, anlık görüntüyü monte etmek ve bu birimdeki dosyaları değiştiren deneysel bir programı denemektir. Yaptığı işi beğenmezseniz, anlık görüntüyü çıkarabilir, ve orijinal dosya sistemini yerine monte edin. "


Şunu belirtmek isterim ki, Ubuntu 12.04+ üzerinde önerilen disk bölümleme LVM kullanıyor, bu yüzden bu gerçekten en iyi öneri.
kevinf

1

VM teknolojinize bağlı olarak, VM'yi durdurabilir / askıya alabilir / duraklatabilir, çekirdeği dökebilir ve VM'nin görüntüsünü kopyalayabilirsiniz. Başarısız olursa, orijinali geri yükleyin.

Doğrudan mantıksal bir birimdeyseniz, orijinal LV'ye dayalı bir LVM anlık görüntüsü oluşturabilirsiniz. Bir yükseltmeyi test edin ve işe yararsa orijinal VM'de yeniden yapın (bkz. Lvcreate (8) -s)

Veya eski altın ziftini (1) kullanarak. Kullanıcı alanının tam bir tar topunu oluşturur, dosyaları geri yükler ve orijinal tar topunda olmayan dosyaları kaldırırsınız.


Şu sorudan: "VM yapılandırmasına bağlı olmayan bir geri yükleme yaklaşımı var mı?"
Ben Voigt

1

Şu anda Linux çok kullanışlı olmasına rağmen gerçekten böyle bir özellik sunmuyor .

Ancak, Kırılmaz yükseltmeler, ZFS ve Apt makalesi , Linux tabanlı Nexenta depolama dağıtımının apt-clone özelliğini açıklıyor ve ...

ZFS'nin yanı sıra, ZFS'nin birçok avantajına sahip olacak ve gelecekte Ubuntu gibi ortalama Linux dağıtımları için "kırılmaz yükseltmeleri" etkinleştirebilecek olan ZFS'ye yanıt olarak kısmen oluşturulmuş yeni bir dosya sistemi de var.

IMHO, böyle bir özelliğin sistem yükleyicilerinde / güncelleyicilerinde akılcı bir şekilde uygulanabilmesi için önce Linux için kullanılabilir bir Yazmaya Kopyala (COW) dosya sistemine ihtiyacımız var.

Uyarı: Nexenta Linux tabanlı olmasına rağmen Linux çekirdeğini kullanmaz. OpenSolaris çekirdeğini ve ZFS'yi kullanır.


Nitsinizi seçmek istemiyorum, ancak Linux çekirdeği olmayan Linux Tabanlı bir oksimoron.
Seamus Connor
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.