[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Profptd Sorunu



* Adil ALPMAN [2009-04-07 00:24:25+0300]
> Cafer Bey;
>
> Yine olmadi ve asagidakini dedi... :(
>
> adil-desktop:/home/adilalpman# dpkg-reconfigure locales
> Generating locales (this might take a while)...
>  en_US.UTF-8... done
>  tr_TR.UTF-8... done
>  tr_TR.UTF-8... done
> Generation complete.
> adil-desktop:/home/adilalpman# /etc/init.d/proftpd restart
> Stopping ftp server: proftpd.
> Starting ftp server: proftpd - Fatal: unknown configuration directive  
> '(END)' on line 172 of '/etc/proftpd/proftpd.conf'
> failed!

Cafer beyin teşhisi doğru.  Fakat uygulamada yaptığınız yerel ayarı
proftpd'ye etkimemiş durumda.  Kirli bir çözüm yerine Debian'ın sunduğu az
bilinen bazı olanaklardan yararlanalım.  Sırayla aşağıdaki adımları
uygulayın:

        # özgün proftpd'yi proftpd.real'a çevir
        dpkg-divert --divert /usr/sbin/proftpd.real --rename /usr/sbin/proftpd
        # sahiplik ve izinler birebir olmalı (güvenlik paranoyası)
        cp -a -f /usr/sbin/proftpd.real /usr/sbin/proftpd
        # şimdi sarmalayıcıyı üzerine yaz, tırnaklara dikkat!
        printf '#!/bin/sh\nLC_ALL=C exec /usr/sbin/proftpd.real "$@"' >/usr/sbin/proftpd

Merak edenler için not...  Burada dpkg-divert komutuyla gerçek proftpd'yi C
yerelinde çalıştıran bir sarmalayıcı kurduk.  Bundan sonra proftpd paketini
yeni bir sürüme güncelleseniz bile kurmuş olduğumuz bu "divert" etkin
olacak ve özgün /usr/sbin/proftpd daima /usr/sbin/proftpd.real adıyla
sisteme kurulacak.

Diğer çözüm, yani /etc/init.d/proftpd içinde "export LC_ALL=C" yapmak veya
(daha doğru olanı) start-stop-daemon'ı "LC_ALL=C start-stop-daemon" ile
değiştirmek basit bir çözüm gibi görünmekle birlikte şöyle bir kusura
sahip.  Profptd'nin başlangıç betiği geliştirici tarafından günün birinde
değiştirilirse bizim yaptığımız ayarların korunması gerektiğinden[1] dpkg
size türlü sorular soracaktı.  Önerdiğim çözümde böyle bir handikap yok.

[1] Debian Policy gereği /etc altındaki dosyalar yönetici denetimindedir ve
    bu dosyalar yönetici tarafından değiştirilmişse güncelleme sırasında
    (varsa) değişiklikler de korunmalıdır.

-- 
roktas


Reply to: