[Gelistirici] Wicd service.py sorunu

Ozan Çağlayan ozan at pardus.org.tr
7 Ara 2008 Paz 02:25:32 EET


Gökmen Görgen wrote:
> Merhabalar,
> İnşa dosyalarını şurada[1] görebileceğiniz wicd paketinin kurulumunda ve 
> herhangi bir sorun ile karşılaşmıyorum; fakat servis betiğinde başlama 
> komutu olarak verdiğim "*/usr/sbin/wicd &> /dev/null*" komutunu 
> uçbirimde verirken hiçbir problemle karşılaşmıyorum.
>   
Selam,
- start metodunda dbus'ı başlatmana gerek yok, zira dbus müdür 
tarafından başlatılıyor ve zaten başlamazsa sistemde hiçbirşey 
çalışmayacağı için, o servis betiğini bile interpret edip o satıra 
gelemeyecek comar,

- os.system("pkill.."): Bu böyle yapılmamalı(bad practice). Zaten 
service stop ile düzgün kapatılıyorsa bir servis, start'ın tekrar kill 
etmeye çalışmasına gerek yok. Ha eğer yok stop ile kapatamıyorsa o zaman 
stop'un düzeltilmesi gerekir.

- wicd'in çıktılarını /dev/null'a göndermene gerek yok, startService 
zaten o işi hallediyor olmalı. Yönlendirmeyi kaldırınca bir ihtimal 
sorun düzelebilir, bilmiyorum.

Onun dışında,

service start verdiğinde comar.log'a bakabilirsin bir şey düşüyor mu 
diye oraya. Onun dışında en genel sorunlardan biri, comar servisi 
başlatmak için kendini forkladığında, servise ait komutun da kendini 
forklayarak, comarın tuttuğu pid ile, komutun asıl pidinin tutmaması. bu 
durumda hem status yanlış bilgi gönderiyor, hem stop çalışmıyor. Bu 
yüzden en güzeli daemon'ın kendisinin pid dosyası yaratması, ancak 
daemon bunu yapmıyorsa pidfile= vermek gerekiyor gerçekten startService'e.

Stop ve status'ta, bu sorunu engellemek için pidfile= vermek yerine 
command="/usr/lib/wicd/wicd-daemon.py") verebilirsin.

Kurcala bi bakalım :)




-- 

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




Gelistirici mesaj listesiyle ilgili daha fazla bilgi