Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: U4U 12 Ledna 2009, 20:26:39
-
Používám ubuntu hardy. Je na něm více uživatelů(ltsp) se stejnou skupinou. Pokud někdo připojí nějaké médium, má vlastníka root se skupinou daného uživatele a tudíš na něj můžou všichni ve skupině. Potřeboval bych aby měl daný mount vlastníka uživatele a skupinu root. Kde tohle nastavit?
-
V /etc/fstab vice info v
man mount
PS: Sam ted nevim jak bych to presne udelal a jestli to pujde. Ale zas, vsechno jde, kdyz se chce.
-
Nevím nakolik mi fstab pomůže. Těch uživatelů je tam dost a médií taky. Takže je to třeba /media/uzivatel/cdrom, floppy, disk .... Fstab nemůže vědět jména uživatelů.
-
fstab možná ne, ale ty jo a můžeš to tam nastavit... taky si nevycucám z prstu jak, ale půjde to
-
to spis upravit pravidla pro automount, je na to nejakej hnusnej xml konfigurak, ale uz se mi vykourilo kterej presne.
snad /schemas/system/storage/default_options/vfat/mount_options, koukni na http://www.lowlevel.cz/log/pivot/entry.php?id=95, jestli to z toho vyctes, ja jdu na obed
-
No já to nepotřebuju jen pro vfat, ale i pro floppy0, cdrom, prostě všechny storage media který "uživatel"(spíš systém sám pod danými právy) může standartně mountovat za chodu.
-
Pokud se to médium napojí s vlastníkem root, a skupinou se stejným jménem, jako má uživatel (u mě to tak není, já to mám ve výchozím root:root), tak by možná šlo do těch skupin přidat toho uživatele (jenom ho), a pak nastavit požadovaná práva pro skupiny u toho média (třeba pomocí chown nebo uid).
Práva u externích médií (pro kořenový adresář) totiž lze měnit (chown nebo uid=<x> při připojování), ale ne dynamicky, aspoň co vím. Možná by ještě šlo přes udev(dbus?) spustit nějaký skriptík při připojování toho média, to by pak bylo flexibilnější (whoami→chown).
-
No bohužel to musím mít tak, že při v jedné primární skupině je více uživatelů. Kde se to dá nastavit spouštění skriptíku při přimontování? Nebo spíš by to chtělo dělat rovnou. Kde to má nastavený, aby to dělalo vlastníka roota a potom nějakou příslušnout skupinu? Obávám se, že po přimontování uživatel chown nezadá, protože cesta k mount pointu je /media/uzivatel/mountpoint, kde vsechny adresare vlastni root a adresare uzivatel a mountpoint maji primarni skupinu uzivatele.
-
Pokud vím, veškerá pravidla pro připojování apod. najdeš v adresáři /etc/udev/rules.d. Přečti si tam README a okomentované úvody do těch pravidel.
Jak zavést ten script najdeš třeba zde: https://help.ubuntu.com/community/UsbDriveDoSomethingHowto (anglicky; nemám vyzkoušený). Ale zajímalo by mě, jestli to může fungovat. Půjdeš do toho?
-
No já to nepotřebuju jen pro vfat, ale i pro floppy0, cdrom, prostě všechny storage media který "uživatel"(spíš systém sám pod danými právy) může standartně mountovat za chodu.
no, ja se ti pokousel naznacit, ze to automaticke pripojeni se musi ridit nejakymy pravidly. Nevim uz, kde presne jsou popsana, byl to snad nejaky xml soubor pro HAL a nebo to jsou klice v gconf. nicmene tyto pravidla by melo jit upravit, a to nejen pro fat, ale i pro ostatni filesystemy (logicky, kdyz uz se to cd samo pripoji, tak to nekde byt uvedeno musi, ne?). Ta cesta /schemas/system/storage/default_options/vfat/mount_options byl jen priklad.
UPDATE: tak jsem nasel toto https://lists.ubuntu.com/archives/kubuntu-users/2008-May/028662.html
spust pres sudo gconf-editor, jdi do /system/storage/default_options/vfat/mount_options. mely by tam byt ulozeny default hodnoty, ktere se pouziji pri pripojeni fat filesystemu. Kdyztak to sem vloz, at se zorientujem.
-
No, v tom gconfu jsou nastavení pro souborové systémy (ntfs, iso, ...), ne pro typ média (floppy,cd-rom,usb,...), a já tam např. nemám nastavení pro ext*.
Dále: jak tam nastavit dynamicky vlastníka, tzn. proměnlivě dle přihlášeného uživatele? Myslíš, že je možné nastavit mount_options a la uid=whoami?
-
cdrom ma vetsinou iso9660, usb zas nejaky konkretni filesystem, tak jaky by melo smysl tam nastavovat konkretni media?
v tom odkazovanem dokumentu se pise, ze pri hodnote user= (tj. hodnota neni uvedena) se pouzije aktualne prihlaseny uzivatel.
proto jsem chtel, abys uvedl, co tam mas ted - abych to mohl porovnat, jestli to tak opravdu je.
ze by fungovalo whoami, tomu moc neverim (tedy uid=`whoami`), ale muzes to zkusit ;-) bylo by to pekne
-
A to zabere pro všechny uživatele?
-
no, snad jo, od toho to jsou defaultni hodnoty. cetls ten odkazovanej dokument? a vlozis sem nekdy tu hodnotu z gconf? ;-)
-
cdrom ma vetsinou iso9660, usb zas nejaky konkretni filesystem, tak jaky by melo smysl tam nastavovat konkretni media?
v tom odkazovanem dokumentu se pise, ze pri hodnote user= (tj. hodnota neni uvedena) se pouzije aktualne prihlaseny uzivatel.
Máš pravdu, nepřečetl jsem si to pořádně, to "uid=" jsem si nevšiml.
Já osobně mám problém, že i když si přidám řádek <append key="volume.mount.valid_options" type="strlist">uid=</append> do /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi, část pro ext3, stejně možnosti pro ext3 v gconf nevidím (viz příloha). Jiná možnost by ale mohla být přes GUI: připojit USB, Vlastnosti, poslední záložka - tam je možno nastavit mount options, tedy asi i uid=, odebrat, připojit, a mělo by to fungovat pro všechna. Není mi ale moc jasné, kam se tato nastavení ukládají.
[attachment deleted by admin]
-
Podle ty dokumentace by to mělo jet s tim uid= na zrovna přihlášenýho uživatele ale nejde. v gconf-editoru jsem nic neměnil. tohle jsou puvidni hodnoty.
[attachment deleted by admin]
-
Tak jsem zjistil, že to musí být někde v nastavení ltsp, ale nevim kde?? Pokud totiž mountuju lokálně na tom serveru pod uživatelem, tak je vlastnictvní správně(uživatel:root).
-
no, ohledne toho ext3, bojim se, ze tam stejne zadny uid/gid nenastavis, protoze to jsou virtualni prava pro filesystemy, ktere ten unixovy system pristupovych prav nepodporuji. ale jelikoz ext3 ano, tak se zadny uid ci gid pro mount nekona - ostatne tato volba ani neni v man mount u ext2/3 uvedena. menit to pujde akorat u fat a podobnych.
ten problem se opravdu tyka vsech tech jmenovanych medii/filesystemu (ext3, fat, iso9660,..)?
-
Týká se to samozřejmě všech médií, které nepodporují unixová práva. Ale problém je někde v ltsp. Kde? Koukal jsem na ty skripty co se starají o mountování a nenašel jsem v nich nastavování oprávnění k adresářům.
-
s tim bohuzel neporadim, v tomhle se nevyznam.. ale nasel jsem toto (http://ltsp.sourceforge.net/contrib/generic_rmedia.html), je tam nejaka zminka o tech parametrech.. jen se ten pristup resi jinak, pres ftp.
-
Hm, ubuntu už to má vyřešené jinak a funkčně až na to vlastnictví, které bych potřeboval nevím jak změnit. :-(
-
Ještě mě něco napadlo: jestli chápu dobře, co píšeš, tak máš třeba uživatele aa, bb a cc. Pokud např. bb připojí USB, připojí se jako /media/bb/disk. Je to tak?
Pak by stačilo připojit to USB, změnit vlastníka pomocí sudo chown bb /media/bb/disk (muselo by se to udělat pro všechny) a je to. Vlastník a práva by měla zůstat zachována i po odpojení a opětovném připojení média (už se to tady na fóru řešilo).
-
Pokud má právo zápisu i "skupina", stačí přidat nového uživatele do stejné skupiny jako je 1. uživatel.
Pokud nemá, někde by to mělo jít nastavit, ale to je asi ten problém, který nevíte. :)
-
Je uživatel aa, bb, cc. Všichni jsou v jedné skupině. Po připojení média se vytvoří /media/aa/disk. Po odpojení se mountpoint zase automaticky vymaže. /media/aa má vlastníka roota a skupinu skupina, /media/aa/disk má vlastníka aa a skupinu skupina, ovšem oprávnění drwxr-xr-x. Stačí mi změnit vlastníka /media/aa na aa a skupinu root. To je potřeba udělat automaticky. LTSP to nějak řeší, ale já nevím kde. Jediný snad kompetentní skript, který jsem našel je ltspfsmounter, ale v něm se nevyznám.
-
Je uživatel aa, bb, cc. Všichni jsou v jedné skupině. Po připojení média se vytvoří /media/aa/disk. Po odpojení se mountpoint zase automaticky vymaže. /media/aa má vlastníka roota a skupinu skupina, /media/aa/disk má vlastníka aa a skupinu skupina, ovšem oprávnění drwxr-xr-x. Stačí mi změnit vlastníka /media/aa na aa a skupinu root. To je potřeba udělat automaticky. LTSP to nějak řeší, ale já nevím kde.
Zkoušels to tedy tak, jak jsem Ti psal?
AA připojí médium → sudo chown aa:root /media/aa/disk → hotovo. I PO odpojení a opětovném připojení by měl zůstat vlastník aa a skupina root.
Je samozřejmě možné, že na ltsp to fungovat nebude, ale za zkoušku nic nedáš.
-
To nemůže fungovat, po odpojení média se mount point automaticky maže.
-
Já vím, já vím, ale zkus to! Důkaz místo slibů : ) Změním vlastníka:skupinu z arrange:root na test:test a pak odpojím
ls -l | grep disk
drwxr-xr-x 8 arrange root 4096 2009-01-09 21:55 disk
arrange@arrange-desktop:/media$ sudo chown test:test disk
arrange@arrange-desktop:/media$ ls -l | grep disk
drwxr-xr-x 8 test test 4096 2009-01-09 21:55 disk
arrange@arrange-desktop:/media$ sudo umount disk
arrange@arrange-desktop:/media$ ls -l | grep disk
arrange@arrange-desktop:/media$Pokud disk znovu připojím, pak voilaarrange@arrange-desktop:/media$ ls -l | grep disk
drwxr-xr-x 8 test test 4096 2009-01-09 21:55 disk
-
To by nešlo. Vím to na 100pro, protože už jsem to rozchodil. Upravil jsem lbmount.c ve zdrojácích a zkompilovat lbmount a už to funguje. Mimochodem že by to nefungovalo vím, protože v lbmount.c bylo definování chmod 0750. Možná ten vlastník by fungoval..