Selamlar,
Dediğiniz gibi öğrenme amaçlı yapmak istiyorum. Perl bilmiyorum ama çok az Python bilgim var. Elimde kitabı da var belki birşeyler yapabilirim. Bu arada lineakd ile yapmayı düşünüyorum ama bu iş için root hakları lazım çünkü modül ekletip çıkartacağım. sudo ayarlarını da dikkatli yapmak istiyorum. Kendi kullanıcı adıma komple root hakkı vermek pek güvenli değil çünkü.. Bu işi başka bir kullanıcı ile de yapamam çünkü lineakd benim kullanıcı adım altında çalışıyor, yaptığım şey benim kullanıcı adımla yapılmaya çalışılacak büyük ihtimalle..
Yapmaya çalıştığım şeyin hatları iyice belli oldu aslında.. Söylediğiniz gibi, tuşa basıldığında bir betik lsmod altında ndiswrapper modülünün bulunup bulunmadığına bakacak; eğer modül varsa silecek, yoksa da ekleyecek. Bu tuş donanımı kapatıp açmaya yarıyor ve ben bu tuşa basılıp modülün otomatik olarak eklenip çıkarılmasını istiyorum.
En kötü ihtimalle şenliğe kadar başaramazsam birlikte bakarız ;-)
Serdar Aytekin wrote:
Sal, 2005-05-03 tarihinde 00:28 +0300 saatinde, Alper KANAT yazdı:
Merhaba,
Istediğim aslında tam anlamıyla bu değil... Ben modülün her daim yüklü olmasını istemiyorum. Yalnızca tuşa bastığımda donanımın aktif hale gelmesiyle birlikte modülün yüklenmesini istiyorum.
Anladigim kadari ile bunu zaruretden degil, tecrube edinmek farkli seyler denemek icin yapmak istiyorsunuz. Cunki normalde hotplug bu isi tusa bile gerek kalmadan kendisi halledebilir. Sizin karti takmaniz yada cikarmaniz hotplugun tetiklenmesi icin yeterli. Bunun ile ilgili onceki mailde bir adresde gondermistim.
Bu olayın hotplug ya da ACPI ile yapılabilmesi lazım ama bir türlü anlayamadım. Ufak bir C programı yazayım dedim, lsusb çıktısında 049f:0086 bilgisini gördüğü anda modulü yükleyen ve bunu da cron job haline getirip devamlı kontrol ettirecektim. Ancak C kodu epey uzun oluyor...
Boyle bir yontemde C yerine perl kullanmak daha uygun. Diger yandan o tusa bastiginizda tusa basildigini anlayabilmenizi saglayan degerin dmesg ciktisina gelip gelmedigini cron ile her saniye kontrol etmek biraz kirli bir cozum olur.
hotkeys veya lineakd ile o tusu kontrol etmeyi denediniz mi? Sayet klavye yapiniza hotkeys veya lineakd gibi programlarin destegi varsa o tusa basildiginda istediginiz bir betigi tetikleyebilirsiniz. Betigin icerigide lsmod ciktisindan o modulun yuklu olup olmadigina bakip yuklu degilse yukleyen bir yapisi olabilir. Bir kac ufak kontrol ve modprobe, rmmod ile bu isteginizi halledebilirsiniz gibi.
Wifi Radar da bir türlü istediğim gibi çalışmadı.. :( Hata verip duruyor.. sudoers dosyasını nasıl yapılandıracağımı da adam gibi anlayamadım manuel sayfalarından... :(
Wifi Radar programini root yetkisine sahip bir kullanici ile calistirmalisiniz ki /etc/network/interfaces dosyasini duzenleyebilme yetkisine sahip olsun. Ardindan da networku yeni yapilandirmasi ile baslatabilsin.
Bunu ya direk root ile yaparsiniz. Yada sudoers de bir kullaniciya root yetkilerini verip o kullanici ile yaparsiniz.
Ornekler (/etc/sudoers dosyasindan):
alper ALL=(ALL) ALL alper ALL=ALL
bunlar "alper" isimli kullaniciya root yetkilerini verir. "sudo <komut_ismi" ile kullanabilirsiniz. Sifre sorduktan sonra devam eder.
alper ALL=NOPASSWD:ALL
"alper" kullanicisina tum root yetkilerini verir. "sudo <komut_ismi>" seklinde kullanirken de sifre sormaz.
alper ALL=NOPASSWD:/usr/bin/apt-get
"alper" kullanicisina sadece "apt-get" i calistirma izni verir. "sudo apt-get install <paket>" seklinde calistirildiginda da sifre sormaz.
gibi...
-- Saygilarimla, Serdar Aytekin
begin:vcard fn:Alper KANAT n:KANAT;Alper adr;quoted-printable:;;;Istanbul;;;T=C3=9CRK=C4=B0YE email;internet:[EMAIL PROTECTED] url:http://raptiye.org version:2.1 end:vcard

