[Gelistirici] pisi history

Ozan Çağlayan ozancag at gmail.com
7 Oca 2008 Pzt 12:03:33 EET


Faik Uygur wrote On 07-01-2008 11:32:
> Selam,
>
> Sistemde olup bitenlerin detaylı tarihçesi, bu tarihçede istenilen zamana 
> geri dönülebilmesi ve istenildiğinde sistem snapshot'ı alınabilmesine imkan 
> sağlayacak bir dizi özelliği beraberinde getirecek "pisi history" komutu 
> üzerinde çalışıyorum.
>
> Bir fonksiyonel spek niteliğinde kabul edilebilecek bu e-posta'ya yorum ve 
> katkılarınızı beklerim.
>
> 1. pisi history komutu ile pisi, yapılmış olan paket güncelleme, kaldırma ve 
> kurulum işlemlerini tarih bilgileri ile birlikte listeleyecek. Bir versiyon 
> kontrol sistemi ile karşılaştırırsak log komutu ile eş anlama geliyor 
> olacak.
>
> 2. pisi history komutundan detaylı çıktı istenildiğinde ilgili tarihte yapılan 
> ilgili işlemde paket sürüm geçişleri detaylandırılacak.
>  
> 	#23 Güncelleme (12.01.2008)
> 		abc-1.2.5 -> abc-1.3.0
> 		def-3.4 -> def-3.8
> 		...
>
> 3. Güncelleme ve kaldırma işlemlerinde her paketin o an sistemde bulunan eski 
> config dosyaları saklanmaya başlanacak.
>
> 4. pisi ile istenildiği takdirde #23 nolu ana geri dön (tarih de olabilir bu) 
> denilebilecek. Bu özelliğin gerçekten yararlı bir şey olup olmadığı konusunda 
> kararsızdım. Daha sonra bunun aslında sistemin snapshotını almak ile aynı 
> anlama geldiğini düşündüm. pisi ile yapılan her işlem sırasında otomatik 
> tetiklenen snapshot alma mekanizması gibi bir şey.
>
> 5. Config dosyaları öntanımlı paket kurulumu sonrası değiştirilir. Bu yüzden
> sistem kararlı bir hale geldiğinde pisi snapshot ya da pisi history --snapshot 
> gibi bir komut ile sistemin snapshotı alınabilecek.
>
> 6. Snapshot pisi history çıktısında görülecek ???
>
> 	#24 Snapshot (12.01.2008)
>
> 7. Snapshot sistemdeki paketlerin listesi ve o paketlerin config dosyalarını 
> içeren özel bir arşiv olacak. pisi komutları ile istenilen snapshot'a geri 
> dön denilebileceği gibi herhangi bir makineye de ilgili snapshot dosyası 
> taşınabilecek. O makinede alınan snapshot'a geçirilebilecek. Bu, 
> snapshotın alındığı makine ile bu makinedeki paketleri aynı yap ve config 
> dosyalarını da taşı demek. (fazla paketler silinecek)
>
> Burada bir tereddütüm, herhangi bir servis için bu snapshot'ın yetersiz 
> olabileceği. Örneğin apache servisi için yalnızca config dosyalarının 
> snapshotının alınması bir sistem yöneticisi için ne kadar yeterli . Bu 
> durumda snapshotın ve ya eski bir tarihe geri dönme işlevinin ne 
> kadar işe yarayıp yaramayacağı da tartışılabilir.
>
> 8. Cache de yer alan paketler history'de istenilen bir ana geri dönülmek 
> istendiğinde kullanılacak. Eğer cache'de paket bulunamazsa depo'dan 
> paketin ilgili versiyonu aranacak. (2007 deposunda tüm eski versiyonları 
> tutuyoruz)
>
> 9. Bu da bir düşünce. Ne kadar olabilir bilemiyorum: Snapshot demek (sistemim 
> şu an kararlı demek). Grub'da özel bir girdi olacak. Son kararlı haline dön 
> gibi. Herhangi bir güncelleme sonrası, herhangi bir sebepten makine açılmaz 
> hale geldiyse grubdan bu seçenek ile makine açılacak. mudur, pisi aracılığı 
> ile sistemi son snapshot alınan haline getirmeye çalışacak ve sistemi yeniden 
> başlatacak ya da belki kdebase servisini restart edip deneyecek.
>
> Fikir, öneri ve eleştiriler lütfen?
>
>   
Selam.

Hepsi gayet hoş duruyor. Peki bu işlev öntanımlı olarak açık mı gelecek, 
yoksa soracak mıyız kurulum esnasında böyle bir yenilik var kullanmak 
ister misiniz diye(Örneğin kaptan'da)?

Servisler için belki özel workaroundlar yapılabilir, apache için "htdocs 
dizininin de snapshot'ını al" gibi ama bundan önce gerekliliği 
tartışılmalı tabi. Ya da bir ayar panelinden bu tarz şeyler kullanıcıya 
sunulabilir ve onun fikri doğrultusunda hareket edilebilir.

Aklıma şöyle bir senaryo geldi:
1. Kullanıcı n tane güncelleme yaptı ve bilgisayarını baştan başlattı,
2a. Pardus herhangi bir sebepten dolayı düzgün açılmadı, kullanıcı 
terminal'e geçip history işlevini kullandı ve başarılı oldu.
2b. Pardus çekirdek ile ilgili bir problemden dolayı hiç açılamadı.

2b durumunda kullanıcı geri dönüşü nasıl sağlayacak? Tek yolu 9. 
maddedeki grub'daki özel girdi gibi geldi bana. Bu girdinin boot edeceği 
çekirdek, düzgün çalıştığına emin olduğumuz bir çekirdek olmalı.

Kolay gelsin, eline sağlık şimdiden.

-- 
Ozan ÇAĞLAYAN
http://cekirdek.pardus.org.tr/~ozan
<ozan_at_pardus.org.tr>




Gelistirici mesaj listesiyle ilgili daha fazla bilgi