Re: Python: kako unjeti password za sudo unutar skripte

Poslao kost on 21.09.2009 8:52:33
kakav HAL? ti trebaš obični udev rule...

Pošto ne znam gdje ti se što nalazi na toj tvojoj distri(obično je to /etc/udev/rules.d/) - niti oznake tvog sticka, pogledaj ove postove, vjerujem da će ti pomoć:
http://ubuntuforums.org/showthread.php?t=168221
http://hackaday.com/2009/09/18/how-to-write-udev-rules/
http://groups.google.com/group/alt.os.linux.gentoo/browse_thread/thread/7a416271c3d36238

prva dva su za ubuntu, treći ti je za gentoo...

Re: Python: kako unjeti password za sudo unutar skripte

Poslao sasa_ on 24.09.2009 8:16:49
e ovdije meni neke stvari nisu jasne...

slobodan i kost daje potpuno drukcija rijesenja za isti problem, iako mi ni jedno ni drugo ne pomaže...

naravno slobodan jos nije postao(stavio na forum) tu svoju konfiguraciju koja bi trebala raditi to što on kaže da se može, pa se vec pitam u vjerodostojnost tih izjava...

@kost,
Prvi primjer http://ubuntuforums.org/showthread.php?t=168221 mi nije od koristi(cini mi se da bi sa UUID bilo puno lakše napraviti ono što je autor želio, iako bi pristup sa UUID imao jednu manu), jer autor opet editira /etc/fstab na nacin:
/dev/usbdevices/transcend128mb  /media/usb128mb vfat iocharset=utf8,umask=000  0  0

što znaci da direktorij /media/usb128mb mora postojati prije mountanja, a iz ovog primjera se vidi da /media/usb128mb direktorij mora postojati cijelo vrijeme, a to je baš ono što ja želim izbjeci. Ja nisam siguran da li se to može, ali koliko znam UDEV to ne može raditi, da li to može taj HAL neznam, cekam da vidim što ce slobodan staviti

Drugi primjer http://hackaday.com/2009/09/18/how-to-write-udev-rules/ pokazuje kako napraviti da kada osoba spoji USB stick da mu izleti prozorcic sa porukom na ekran, što isto nije ono što mene zanima, iako tu se spominje sljedece:
"-HAL takes over, automatically mounting our drive (this is part of Ubuntu’s removable storage handling and unrelated to our udev rule)."
Samo da mi je još vidjeti tu HAL konfiguraciju.

Treci primjer http://groups.google.com/group/alt.os.linux.gentoo/browse_thread/thread/7a416271c3d36238 mi isto nije od koristi, jer ne radi ono što meni treba.

Sva tri primjera su sobra za nekoga tko nezna za UDEV pa mu treba pomoc oko toga, ali to nije slucaj kod mene.

Imam nekako osjecaj da osobe koje mi žele pomoci oko ovoga nisu najbolje razumjele ono što ja želim uciniti, pa cu pokušati još jednom objasniti.

1. Ako imam pravilo u /etc/fstab npr:
UUID=4706-0137      /media/USB_WORK vfat defaults,noauto,user,umask=0  0 0

to znaci da kada se uradi:
mount /media/USB_WORK
direktorij /media/USB_WORK mora postojati, a ja želim da direktorij /media/USB_WORK postoji SAMO DOK JE USB MOUNTAN

2. UDEV mi ne može pomoci jer se UDEV izvršava kada se USB spoji(fizicki spoji) na kompjuter,a ne kada se mounta. Naravno ja bi mogao preko UDEV pokrenuti skriptu koja bi pokrenila neki program koji bi radio kao deamon i gledao kada ce se mountati konkretni USB pa onda prije toga napraviti /media/USB_WORK direktorij, te naravno isti program bi trebao gledati kada je se konkretni USB odmountao i onda izbrisati /media/USB_WORK direktorij. Ali ovako nešto je prekomplicirano i ne da mi se praviti praviti.

Ono što bih ja želio je /etc/fstab pravilo, znam da fstab to ne može, ali koliko shvacam slobodana HAL to može, samo ja neznam kako, a ni slobodan mi do sada nije pokazao konkretnu konfiguraciju.

Ta konfiguracija bi radila sljedece:
Kada se ucini naredba:
mount /media/USB_WORK

Dogodi se sljedece:
1. Napravi se /media/USB_WORK direktorij
2. mounta se disk s UUID=4706-0137 na /media/USB_WORK

a kada se ucini:
umount /media/USB_WORK

onda bi se
1. odmountao disk koje mountan na /media/USB_WORK direktorij
2. te bi se izbrisao /media/USB_WORK direktorij

Nadam se da je sada jasnije što bih ja želio, ako je to moguce.
Ono što ja neznam je kako to konfigurirati i gdje.

Re: Python: kako unjeti password za sudo unutar skripte

Poslao slobodan on 24.09.2009 13:38:14
Citat:

sasa_ je napisao/la:
e ovdije meni neke stvari nisu jasne...

slobodan i kost daje potpuno drukcija rijesenja za isti problem, iako mi ni jedno ni drugo ne pomaže...

naravno slobodan jos nije postao(stavio na forum) tu svoju konfiguraciju koja bi trebala raditi to što on kaže da se može, pa se vec pitam u vjerodostojnost tih izjava...


Prokužio si me.

Makar me HULK plaća preko 10000 kn mjesečno da bi na ovom sajtu 24 sata dnevno pratio sve što se događa i pomagao trenutno i detaljno svima koji ovdje stavljaju svoje probleme, jer je to obaveza svih nas koji smo ovdje i mi moramo odmah i smisleno odgovoriti na sva pitanja i probleme jer bi to trebao biti smisao našeg života, ja u biti nemam pojma ni o čemu nego samo radim copy&paste onoga što nađem na netu.

Bolje ti je naći nekog drugog tko ti može pomoći...





Mi smo volonteri, a ne servis helpdesk, i stoga te molim da nas tretiraš kao takve. Nisi jedini s problemima, niti je tvoj problem najbitniji na svijetu. Ok? Ajd se skuliraj malo, i ne prozivaj me po netu bezveze, a ako se strpiš do navečer isčačkat ću nešto (ako već Kost ne stavi svoje riješenje), jer meni ne trebaju takve stvari koje ti hoćeš pa i nemam tako nešto iskonfigurirano, a nemam na poslu linux pri ruci, pogotovo ne tvoju distru.

Re: Python: kako unjeti password za sudo unutar skripte

Poslao kost on 24.09.2009 13:51:01
Citat:

sasa_ je napisao/la:
e ovdije meni neke stvari nisu jasne...

slobodan i kost daje potpuno drukcija rijesenja za isti problem, iako mi ni jedno ni drugo ne pomaže...


Kao nikad u informatici nisi vidio da ima više načina da se nešto napravi?
Ali, svejedno, ne ulazim u Slobodanovo rješenje jer ne znam što je pod tim mislio...

Citat:

Sva tri primjera su sobra za nekoga tko nezna za UDEV pa mu treba pomoc oko toga, ali to nije slucaj kod mene.


Ako znaš udev zašto onda pitaš kako imenovat deviceove (pogledaj par svojih postova prije)? :))

Citat:

2. UDEV mi ne može pomoci jer se UDEV izvršava kada se USB spoji(fizicki spoji) na kompjuter,a ne kada se mounta.


Ovo baš i nisi previše napomenuo ili nisam primjetio. Mada ne vidim razloga zašto bih morao brisat i ponovno stvarat direktorij prvi svakom mountu.... evo ti:

Onda ćeš napravit sljedeće, napraviš novi direktorij gdje ćeš mountat te svoje stick(ove) - možeš i postojeći /mnt i /media ownat ali moraš bit svjestan implikacija koje to donosi, ali pošto si udev power user to vjerojatno znaš :) Ukratko, taj direktorij(koji god, u mom primjeru /home/$LOGNAME/sticks/) ownaš ga na korisnika i u /etc/fstab dodaš:

/dev/sdc1 /home/$LOGNAME/sticks/USB_WORK vfat defaults,noauto,user,umask=0 0 0

I imas sljedecu skriptu za mountanje:
#/bin/sh

mkdir /home/$LOGNAME/sticks/USB_WORK && mount /home/$LOGNAME/sticks/USB_WORK

i sljedecu za odmontiravanje:

#/bin/sh

umount /home/$LOGNAME/sticks/USB_WORK && rmdir /home/$LOGNAME/sticks/USB_WORK

Vjerojatno ima i drugih načina, ali ovo je jedan od....

Re: Python: kako unjeti password za sudo unutar skripte

Poslao sasa_ on 25.09.2009 11:00:59
@kost

Ovo što si ti napisao je baš ono kako mi stvar trenutno fukcionira i radi OK.
Takvu funkcionalnost sam implementirao nakon tvog prvog odgovora, tako da si mi puno pomogao.

Ono što je mene zanimalo i još me zanima, da li "nešto" može tu istu funkcionalnost raditi bez te dvije skripte za mount i umount i to je sve.

Re: Python: kako unjeti password za sudo unutar skripte

Poslao sasa_ on 25.09.2009 11:13:14
@slobodan
ja tebe ne napadam

ja samo tražim da ako mi netko već oće pomoći, da mi onda barem da neki link gdje o tome mogu pročitati ili konkretnu konfiguraciju

nemoj da se ljutiš ali ti do sada nisi ni jedno ni drugo učinio i što je tu onda čudno da ja sumljam da je to uopće izvedimo ?

ako mi netko kažem da ima miljijun kuna ja ču tražiti od njega da mi ih pokaže, ako ih ne može pokazati onda je jasno da ih nema, vrlo jednostavno.

ja također sumljam i zbog toga jer od nikoga drugoga nisam čuo da se to može i jer googlanjem nisam ništa pronašao, istina nisam tražio pola dana nego pola sata, ali samo zbog toga jer sam skužio da to ti znaš pa sam čekao da pokažeš kako.

naravno postoji mogučnost da se mi nismo najbolje razumjeli pa ti misliš na nešto drugo nego ja, i zbog toga smo obje i u pravu i u krivu.

takoder i sam si rekao "jer meni ne trebaju takve stvari koje ti hoćeš pa i nemam tako nešto iskonfigurirano" tako da moguće da si i ti nešto krivo čuo ili proćitao od nekoga ili negdje na netu.

u svakom sljučaju ako znaš stavi, ako neznaš nema problema, nije grijeh neznat.

pozdrav...

Re: Python: kako unjeti password za sudo unutar skripte

Poslao kost on 25.09.2009 18:08:19
Citat:

sasa_ je napisao/la:
@kost

Ovo što si ti napisao je baš ono kako mi stvar trenutno fukcionira i radi OK.
Takvu funkcionalnost sam implementirao nakon tvog prvog odgovora, tako da si mi puno pomogao.

Ono što je mene zanimalo i još me zanima, da li "nešto" može tu istu funkcionalnost raditi bez te dvije skripte za mount i umount i to je sve.


nisam siguran da može, ali tko zna :)

Ono što možeš je napravit "alias wrapper" oko mounta, pa će bit transparentnije...

Drugi način koji mi pada na pamet je mjenjanje mount programa (sourcea), ali to mi zvuči kao veliki overhead za sitnicu poput ove...

Re: Python: kako unjeti password za sudo unutar skripte

Poslao slobodan on 27.09.2009 19:25:01
Saša, uhvatio sam vremena danas pa sam malo čačkao i čituckao po HAL dokumentaciji.

I usput probao mountati neke USB uređaje (diskovi, stikovi...). I, što se događa? Pa, upravo kako sam i rekao prije, da se meni čini da stvari rade kako bi ti to htio - pospojim uređaj, GUI (KDE u mom slučaju) mi javi da se pojavio uređaj, kliknem na prozorčić, mounta mi moj (u ovom slučaju NTFS) USB prijenosni disk "PrijenosniPero" (ne pitaj, nije sad bitno zašto se tako zove, bitno je da mu je to LABEL koji mu je win dodijelio pri formatiranju na NTFS) na /media/PrijenosniPero, bacim pogled što ima, i zatim kliknem "ukloni uređaj". I, odmountao ga je, i zatim maknuo /media/PrijenosniPero direktorij.

- nisam morao ništa mjenjati
- ne postoji stavka u /etc/fstab za konkretni mountpoint i uređaj nego to HAL riješava
- nakon što kažem da ga mounta, HAL putem automountera kreira poddirektorij /media/PrijenosniPero, mounta USB disk tamo
- nakon što kažem da ga odmounta, HAL putem automounta odmounta USB disk i makne poddirektorij /media/PrijenosniPero

Tako da je pitanje kako taj openbox ima postavke za automountanje i slično.

E sad. Ima dosta tih konfiguracija za pojedine uređaje. Ono što me zanima je kako je to kod tebe konfigurirano. Za početak, pogledaj si malo informacije o HAL-u na ovom linku. Pročitaj malo što sve HAL može.

Nakon toga, uštekaj svoj USB uređaj (možeš ga mountati) i utipkaj

lshal | less

Izbacit će ti hrpu toga, pronađi svoj uređaj.

Ne znam kako je na openboxu, na (k)ubuntu se HAL konfiguracija nalazi na 2 mjesta:
/usr/share/hal
/etc/hal

s tim da sustav prvo gleda /usr/share/hal pa nakon toga /etc/hal i ako imaš skonfiguriran neki uređaj u /etc/hal on će overridati /usr/share/hal

Morat ćeš potražiti postavke za usb uređaje. Kad to nađeš, stavi ovamo, pa ću pogledati koja je razlika između tvoje i moje konfiguracije i da li se to može poštelati da ti radi bez dodatnih skripti.

Pogledaj ujedno što sve od HAL-a imaš instalirano, možda ti fali neki modul, npr. moduli koji rade mount/umout i kreiranje/brisanje direktorija su

/usr/lib/hal/hal-storage-mount
/usr/lib/hal/hal-storage-unmount
/usr/lib/hal/hal-storage-cleanup-mountpoint

pa možda nemaš instalirano nešto od toga?

Informacija o HAL-u i konfiguriranju ima na tone na netu, samo treba znati posložiti google upit i par minuta je više nego dovoljno a kamoli pol sata traženja.

Re: Python: kako unjeti password za sudo unutar skripte

Poslao kost on 28.09.2009 1:33:35
Citat:

slobodan je napisao/la:
....I, odmountao ga je, i zatim maknuo /media/PrijenosniPero direktorij.

- nisam morao ništa mjenjati
- ne postoji stavka u /etc/fstab za konkretni mountpoint i uređaj nego to HAL riješava
- nakon što kažem da ga mounta, HAL putem automountera kreira poddirektorij /media/PrijenosniPero, mounta USB disk tamo
- nakon što kažem da ga odmounta, HAL putem automounta odmounta USB disk i makne poddirektorij /media/PrijenosniPero

pa možda nemaš instalirano nešto od toga?

Informacija o HAL-u i konfiguriranju ima na tone na netu, samo treba znati posložiti google upit i par minuta je više nego dovoljno a kamoli pol sata traženja.


Problem je u tome što on ne spaja i odspaja uređaj. Da spaja i odspaja - jednostavni udev rule bi mu pomogao. On želi prilikom mount /nesto da mu stvori direktoij i kad odmounta da mu nestane (koliko sam razumio).

U tom slučaju mu još jedino automount/autofs može pomoć što mi pada na pamet:
http://freespace.sourceforge.net/guidod/howto/autofs.html

Re: Python: kako unjeti password za sudo unutar skripte

Poslao slobodan on 28.09.2009 10:10:05
Hm... Ekipa komentira na netu da i pmount to radi. Ok, ovo je druga stvar kad baš eksplicitno poziva naredbu mount iz komandne linije, ona zaobilazi HAL...

Ova poruka je od: http://www.linux.hr/newbb/viewtopic.php?forum=8&topic_id=2150