[Gelistirici] Çekirdek güncellemesi esnasında Çomar hatası

Ozan Çağlayan ozan at pardus.org.tr
22 Kas 2008 Cmt 14:21:36 EET


Selam,

Bu sanırım birkaç kişinin daha başına gelmişti zamanında bugzilla'da. 
Demin benim de başıma geldi.

Sistemde elle derlediğim 114 release numaralı çekirdek bulunuyordu. pisi 
up yaptım ve depodaki 113 geldi, kuruldu ancak postInstall'da patladı 
çünkü grub'da yeni çekirdekle ilgili girdi gözükmedi. comar.log'un 
ilgili satırları aşağıda:

2008-11-22 13:45:14 (Job-1974) [bus:1.203] Error: Python Exception 
[Exception] in (tr.org.pardus.comar.Boot.Loader,/package/grub,563): Root 
drive must be given.
2008-11-22 13:45:14 (Job-1974) [bus:1.203] Error:     File <script.py>, 
line 563, in updateKernelEntry()
2008-11-22 13:45:14 (Job-1974) [bus:1.203] Error:     File <script.py>, 
line 382, in makeGrubEntry()
2008-11-22 13:45:14 (Job-1973) [bus:1.200] Error: Python Exception 
[Exception] in (tr.org.pardus.comar.System.Package,/package/kernel,12): 
Unable to call method: Root drive must be given.

Daha sonra elle pisi cp yaptım:

laptop ~ # pisi cp
kernel paketi yapılandırılıyor
Program sonlandırıldı.
Betik hatası: tr.org.pardus.comar.python.Exception: Unable to call 
method: Root drive must be given.
Genel yardım için lütfen 'pisi help' komutunu kullanınız.
Bir geri-iz (traceback) görmek için lütfen --debug seçeneğini kullanın.

--

makeGrubEntry'ye geçirilen root parametresi getRoot() ile alınıyor. 
getRoot() ise /bin/mount çıktısını gezip / dizinine bağlanan ve /dev ile 
başlayan girdiyi arıyor. Ancak 2008'de orada asla /dev ile başlayan bir 
şey yazmıyor çünkü label kullanıyoruz:

laptop ~ # mount
LABEL=PARDUS_ROOT on / type ext3 (rw,noatime,user_xattr)
..

Bu yüzden de root boş kalıyor ve betik makeGrubEntry içinde 
fail(FAIL_NOROOT) çağırarak patlıyor. Şimdi işin enteresan tarafı niye 
her güncellemede patlamıyor da bu güncellemede patladı onu çözemedim..

Bilginize.

-- 

Ozan Çağlayan
<ozan_at_pardus.org.tr>




Gelistirici mesaj listesiyle ilgili daha fazla bilgi