Portál AbcLinuxu, 26. dubna 2024 17:26


Dotaz: jak vytvorit sdileny adresar pro vice uzivatelu

24.7.2006 09:19 Ripper
jak vytvorit sdileny adresar pro vice uzivatelu
Přečteno: 2993×
Odpovědět | Admin
Nedavno jsem presel na Linux, mam Ubuntu. Ale zasekl jsem se u naprosto zakladni veci, potrebuju totiz sdileny adresar pro vice uzivatelu, kde by byla hudba, filmy, a podobny veci. Podstatne je, aby tam mohli vsichni tvorit soubory, mazat, proste uplny pristup. Je to domaci pocitac, takze pro ty 3 uzivatele proste povolit vsechno.

Takto jsem postupoval:
1. Vytvoril jsem skupinu "shared", do ni nahazel prislusne uzivatele.
2. Vytvoril jsem /pub, nastavil mu skupinu "shared", a prava 2770 (setguid pro zachovani skupiny).

Coz funguje, ale jen do te doby, nez nekdo vytvori novej adresar, a do nej da soubor. Tento soubor je pak citelnej pro vsechny, ale nikdo nez autor uz ho nemuze smazat. Novy soubory se tam totiz vytvareji s umask 022, takze skupina nema pravo zapisu. Znam jedine reseni, a to je nastavil vsem uzivatelum umask 002, coz me ale nevyhovuje, protoze se mi to zda jako snizeni bezpecnosti. Navic predpokladam, ze to musi jit nak normalne a lehce vyresit?

Jak se da zaridit, aby nove vytvorene soubory byly v danem adresari opet zapisovatele pro skupinu? Neda se nastavit specialni umask pro jednotlivy adresar? Neda se nakym bitem zachovat priznak "w" pro group? Jak se to da resit?
Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

24.7.2006 11:34 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
acl(7), getfacl(1), setfacl(1)
24.7.2006 11:34 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Oprava: acl(5)
25.7.2006 01:51 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
hm, a standardnimi pravy to opravdu nejde? je to celkem zakladni vec. je to potreba zvlaste doma, a docela si nedovedu predstavit, jak si kazdej domaci uzivatel studuje ACL. ne ze by to byl pro me problem, ale celkem me to prekvapuje, ze ani v distribuci nemam zadnej nastroj pro vytvoreni takovyhohle adresare, proste nic...
25.7.2006 02:19 xyz
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
To víte, že jde. Myslím, že to, na co se ptáte je umask (viz man bash: tedy asi byste chtěl do profilu daných uživatelů umístit umask 0002). Ovšem změníte tím práva souborů vytvořených daným uživatelem kdekoliv, což například při jinak rozumném přístupu (0711) na $HOME nemusí být to pravé oříškové.
25.7.2006 03:23 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
no, s umask jsem experimentoval. ale problem je, ze je to globalni, presne jak rikate, a zadruhe, zjistil jsem, ze napriklad presunuti souboru s "nevhodnymi" pravy (napr chybejici w u group) nijak prava neupravi, takze se ve sdilenem adresari objevi soubor, ktery muze smazat pouze jeho autor. a pri presouvani souboru se na nej taky neaplikuje setguid bit nastaveny na sdilenem adresari. takze spatny :(
25.7.2006 14:23 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Tak to vás asi zklamu, práva přesunutého souboru (není-li přesunut z jiného filesystému) se logicky měnit nebudou. Přesunout (v rámci filesystému) totiž můžete i soubor, jehož práva nemůžete ani zjistit, natož změnit.
25.7.2006 14:21 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Nastavení umask problém neřeší, protože uživatele nedonutíte, aby si ji před prací ve sdíleném adresáři nastavili potřebným způsobem. A nastavovat jim ji na 007 permanentně není zrovna dobrý nápad.
25.7.2006 14:24 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
A proč by to měl být problém? Na ACL není nic mystického ani složitého. Že se o nich většina učebnic nezmiňuje, to je problém spíš těch učebnic…
25.7.2006 15:54 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ja si to urcite prostuduju. jen jsem cekal v distribucich nejakou user friendly pomucku jak to udelat. prece je to vec, kterou doma potrebuje *kazdej*.

jo a predem bych se chtel zeptat, jestli je to acl schopne osetrit i presouvani souboru, ktery ma "spatna" prava, tzn aby i presunuty soubor ziskal takova prava, aby ho mohl kdokoli cist/mazat.
25.7.2006 15:56 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Na to už jsem vám ale odpověděl (dnes 14:23).
25.7.2006 16:56 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
no, presne proto jsem se na to zeptal u acl.
25.7.2006 17:03 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Pro ACL samozřejmě platí totéž. Je vám jasný rozdíl mezi položkou adresáře a i-nodem?
25.7.2006 16:02 Milan Dobeš | skóre: 22
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ahoj, nedávno jsem řešil podobný problém skupinových přístupových práv na různé adresáře komplikovaný ještě tím že uživatelé k souborům chodili přes sambu. Do acl se mi rovněž nechtělo. Vyřešil jsem to nakonec skriptem spouštěným cronem jednou za 5 minut který v příslušných adresářích nastavil práva tak jak jsem potřeboval.

Skript ".prava.sh" umístěný v kořenu sdíleného svazku a volaný cronem vypadá nějak takto:

#!/bin/sh

#

# Spousteni lokalnich skriptu adresaru

cd /home/samba/data

for ADRESAR in "Adresar_1" "Adresar_2" "Adresar_3"; do

cd "$ADRESAR"

if [ -e .go.sh ]; then

./.go.sh >/dev/null

fi

cd ..

done

a spouští skripty umístěné v příslušných adresářích které vypadají nějak takto:

#!/bin/sh

#

# Nastaveni standardnich prav

chmod -c -R u+rw,g+rw,o+r-w *

chown -c -R uzivatel:skupina *

který všem souborům i adresářům nastaví standardní práva která tam potřebuji. Takže pokud zde někdo něco vytvoří, nejdéle za 5 minut to má práva jaká tam mají být.

Doufám že mě zde za tohle řešení nějaký odborník neukřižuje :-)
25.7.2006 16:08 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Ahoj, nedávno jsem řešil podobný problém skupinových přístupových práv na různé adresáře komplikovaný ještě tím že uživatelé k souborům chodili přes sambu.

V tomto případě to není komplikace ale zjednodušení… :-)

25.7.2006 18:08 Milan Hejpetr | skóre: 25 | blog: poznamky | Plzen
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Nebylo by prece jen lepsi se zamyslet, zda by to neslo vyresit na urovni Samby ?
Viz. treba:
create mask
directory mask
directory security mask
force directory mode
force directory security mode
...mozna jsem na neco zapomel - viz. man smb.conf

Ja bych rekl, ze ta Samba to nekomplikuje - prave naopak - predpokladam, ze se vam nehlasi uzivatele pres terminal, kde by mohli se soubory nejak manipulovat prikazovou radkou apod. Podobne u FTP serveru se da nastavit maska.
26.7.2006 20:05 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Ahoj, nedávno jsem řešil podobný problém skupinových přístupových práv na různé adresáře komplikovaný ještě tím že uživatelé k souborům chodili přes sambu. Do acl se mi rovněž nechtělo. Vyřešil jsem to nakonec skriptem spouštěným cronem jednou za 5 minut který v příslušných adresářích nastavil práva tak jak jsem potřeboval.
Proč to řešit jednoduše, když to jde i složitě :-) Na acl opravdu není nic magického nebo složitého, Samba s tím funguje v pohodě, používám k plné spokojenosti už přes 5 let.
25.7.2006 16:38 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pomocou inotify monitorovat dianie a pripadne novo vzniknute subory upravit.
If you hold a Unix shell up to your ear, you can you hear the C.
25.7.2006 17:57 michal00 | skóre: 14 | blog: OpenStreetMap
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
cosi podobne (teda vlastne to iste) som uz riesil .

bezuspesne.
25.7.2006 19:03 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
taky se mi zda, ze nikdo neni schopen nabidnout plne funkcni reseni (jeste jsem teda nevidel acl, ale vy viditelne ano). mozna to ani nejde. ale potom mi naprosto unikaji ty opevovana unixova prava. protoze si nedovedu predstavit, jak mam pouzivat pocitac bez sdileneho adresare. a nutit rodinne prislusniky pouzivat nakou sambu nebo ftp je naprosto nerealne. pro me je toto jeden ze zasadnich zadrhelu u meho prechodu na linux...
25.7.2006 19:39 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Než začnete něco kritizovat, zjistěte si, prosím, jak to funguje. Něco jsem vám k tomu napsal, tak si to přečtěte a pokuste se to pochopit. Pokud v tom něco konkrétního nechápete, zeptejte se.
26.7.2006 11:36 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
dobre, takze jsem zkousel to acl. nasel jsem si gui eiciel, ktere umi jednoduse nastavovat prava. takze mam adresar ~/pokus:
~/pokus: drwxrws---+ ripper shared
nasledne jsem u ACL nastavil tato prava:
# file: pokus
# owner: ripper
# group: shared
user::rwx
group::rwx
group:shared:rwx
mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group:shared:rwx
default:mask::rwx
default:other::---
Skupinu shared jsem tam pro jistotu pridal vsude.
No, a pro nove vytvorene soubory to opravdu funguje dobre. Ale, ani kopirovani uz nefunguje. Pokud si vytvorim soubor jinde (v domovskem adresari), tak ma standardni prava bez acl, samozrejme:
file: -rw-r--r--  ripper ripper
Kdyz ho zkopiruju do ~/pokus, tak ma tato prava:
# file: pokus/file
# owner: ripper
# group: shared
user::rw-
group::rwx                      #effective:r--
group:shared:rwx                #effective:r--
mask::r--
other::r--
Proste se mi nezachovava maska, a tudiz je to zas nepristupny pro skupinu. V cem je chyba?

No a to nemluvim o presouvani souboru, jak rikate, tam se prava nemeni. Coz je ale naprosta krize, protoze jak to doma funguje? Stahnete si neco (pisnicku) do domovskeho adresare nebo na plochu, a pak to presunete do sdileneho adresare. Aspon takhle to probiha na windows, tzn v 99% procentech domacnosti, potencialnich linuxovych zakazniku. Nebranim se jinemu reseni, nebranim se slozitemu nastavovani, na to muzou vzniknout nastroje. Ale pouzivani musi byt transparentni.
Dokazate mi poradit? Existuje reseni s transparentnim pouzivanim?
26.7.2006 11:48 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Máš tři uživatele, tak proč vytváříš nějakou skupinu? Prostě tam dej každému z nich všechna práva a je to.
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
26.7.2006 13:43 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
vyzkousel jsem, stejne chovani. zase maska r--, tudiz nikdo jiny nemuze smazat soubor (v adresari ~/pokus teda ano, v podadresari ~/pokus/dir uz ne, pokud tam ten adresar dir nakopiruju).
26.7.2006 14:11 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Opakuji ještě jednou: najděte si jakoukoli učebnici a zjistěte si, jak fungují přístupová práva. Dokud to neuděláte, nemá smysl cokoli řešit. Protože vám těžko můžeme vysvětlovat, co a jak, pokud si např. myslíte, že přístupová práva souboru mají vliv na to, kdo ho může smazat.
26.7.2006 15:13 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Uz zase prehanis.

Myslim, ze naprosto presne ukazal nedostatek. Take by me to stvalo. Jak zajistit dedeni prav z nadrazene slozky je tedy otazka.

26.7.2006 15:20 Dworkin
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Myslim ze Vase odpoved je z vecneho hlediska korektni. Nicmene citelne agresivni odpoved neni reseni.A jiste by ,ze studijnich ucelu, bylo vhodnejsi, kdybyste vyresil modelovou situaci a nakopiroval postup a vysledek, nez jen strikni krik na vsechni strany typu "RTFM".
26.7.2006 16:46 Jan Kundrát (jkt) | skóre: 27 | blog: jkt | Praha - Bohnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Na druhou stranu se zkus vzit do situace Michala Kubecka. Hned na zacatku poradi adekvatni reseni (ACL), avsak puvodni tazatel jeho doporuceni zprvu IMHO ignoruje...
26.7.2006 16:58 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Tak si to schválně zrekapitulujme. Moje první odpověď na problém zachování práv při přesunu souboru:

Tak to vás asi zklamu, práva přesunutého souboru (není-li přesunut z jiného filesystému) se logicky měnit nebudou. Přesunout (v rámci filesystému) totiž můžete i soubor, jehož práva nemůžete ani zjistit, natož změnit.

Je to agresivní křik typu RTFM? IMHO ne. Pokud se té odpovědi dá něco vytknout, tak jedině to, že jsem se tam z nepozornosti dopustil tvrzení, které není pravdivé (nemohu přesunout soubor, jehož práva nemohu zjistit, zbytek je ale pravda). Druhá odpověď byl odkaz, že na tento dotaz jsem jednou odpovídal, tazatel se dotázal, zda je to tak i u ACL. Na to jsem odpověděl:

Pro ACL samozřejmě platí totéž. Je vám jasný rozdíl mezi položkou adresáře a i-nodem?

Je to agresivní? IMHO ne. Je tam jemný náznak toho, že tazatel možná nechápe některé podstatné principy fungování filesystému, ale opět nic, co by se dalo označit za "agresivní křik typu RTFM". Teprve když následovala naprosto nesmyslná reakce, odpověděl jsem ostřeji, ale rozhodně ne ostřeji než to, na co jsem reagoval. Ona je tak trochu móda stěžovat si na "namyšlené guru", kteří "jen povýšeně vykřikují RTFM", ale doporučuji si nejdřív pořádně přečíst celou diskusi, než začnete takovéto soudy vydávat.

26.7.2006 15:24 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
nemyslim. mam za sebou rok unixu ve skole, a neco o pravech vim. trochu mi ale unika smysl vasi pomoci v teto diskuzi, protoze na cokoli mi reknete "bezte se to naucit". ano, to je samozrejme reseni, kdyz budu linuxovej guru, tak pomoc nebudu potrebovat. a kdyz bude jedina rada na diskuznich forech "stan se guru", tak zadna fora nebudou vubec potreba, ze? kdyz budou vsichni administratori operacniho systemu, tak nebude mit nikdo zadnej problem, vsichni budou vsechno znat, skvele.

ja si to klidne nastuduju, kdyz mi nekdo poradi, jestli je vubec mozne dosahnout to co chci (i pri kopirovani a presouvani, nejen tvoreni novych souboru), a pripadne me nasmeruje co si precist. ale abych resil kazdy problem mesicem naslepo studovani nake ucebnice, tak na to opravdu cas nemam.

ocenuji, ze stracite cas resenim meho problemu, ale vas pristup mi v podstate vubec nepomohl. poradil jste mi acl, to jsem se pokusil nastavit, ale nedokazal to zprovoznit tak, aby to fungovalo. to mam vyresit studiem pristupovych prav, o kterych si myslim ze vic mnohem vic, nez obycejny uzivatel. jak dlouho by to potom musel studovat on? ani bych se nedivil, kdyby bezny uzivatel, prechazejici z windows na linux jako ja, by uz nekolikrat byl natolik znechucen, ze by se vratil zpatky. me uz obcas totiz taky chytaji takove tendence. vas pristup, ignorujici veskere ty dlouhe dny ztracene googlovanim a resenim tohoto problemu, ktere jsem nad tim stravil, je mirne receno iritujici...
26.7.2006 15:40 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Tak ako som uz pisal: inotify dokaze strazit cast filesystemu a pri zmenach v nom spustat zvoleny program/skript, ktory tie prava okmazite opravi. Vykonnostne to asi nie je ideal, ale pre 3 ludi to bude fachat ok a transparentne.
If you hold a Unix shell up to your ear, you can you hear the C.
26.7.2006 15:54 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
no, nasel jsem si stranku http://www.edoceo.com/creo/inotify/ a popravde vubec netusim, co to je a co to dela. pokud to spravne chapu, tak je to naka ceckova nebo kernelova funkce, takze bych si musel vytvorit program, ktery by s ni pracoval. hledam spise az ten program, funkce sama o sobe pro me neni moc reseni, nemyslim ze bych byl schopen neco takoveho vytvorit...
26.7.2006 17:53 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
No, trocha som predbehol dobu. Inotify je nahrada starsieho dnotify, s ktorym som podobny adresar spravil. A predpokladal som, ze inotify uz bude v pouzitelnom stave. Bindings pre python, ruby a perl uz su, pre bash existuje inotify-tools, ktore ale neviem ci maju dostatok funkcnosti. Pokial nie, tak to spravit cez dnotify.

spusti sa dnotify s parametrami co treba sledovat na ake udalosti a co spustit, ak sa nejaka sledovana udalost vyskytne. V tomto priade to bude chmod.
If you hold a Unix shell up to your ear, you can you hear the C.
26.7.2006 15:46 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
mam za sebou rok unixu ve skole, a neco o pravech vim.

Promiňte, ale pokud se domníváte, že práva souboru mají vliv na to, zda ho lze smazat, je to zcela zásadní a základní neznalost. Vzhledem k tomu vám těžko mohu vysvětlovat, proč není možné, aby se při přesunutí souboru (v rámci filesystému) změnila jeho přístupová práva. Jasně jsem vám napsal, že to z principu nejde, protože přesouvat můžete i soubory, u kterých ta práva měnit nesmíte. Nevím, zda očekáváte, že vám místo tohoto prostého vysvětlení začnu podrobně popisovat, co je to i-node a jak kontrola oprávnění v unixových systémech funguje, ale na rovinu vám řeknu, že to opravdu dělat nebudu. Místo toho vás odkážu na učebnice, kde je tohle jasně popsáno. Možná vám připadám jako nelida, že místo jednoduché odpovědi radši nebudu popisovat několik stránek tím, co si můžete nastudovat jinde. Pokud je to tak, nic se s tím holt nedá dělat. (Toto nechť považují za odpověď i ti, kdo mne nařkli z &qout;RTFM-ismu" Někdy prostě nezbyde, než si ten f***ing manuál přečíst.)

Jako nápovědu si představte následující situaci: v adresáři A mám soubor s právy r-- pro skupinu, dále mám adresář B, kde je SGID bitem nebo jinak zajištěno, že nově vytvořené soubory mají pro skupinu práva rw-. A teď udělám hardlink toho souboru do adresáře B. Jaká mají být podle vás přístupová práva souboru po této operaci?

Nemem9aa avatar 26.7.2006 15:51 Nemem9aa | skóre: 13
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Zajimave tema. Mohl byste byt trosku konkretni a odkazat na nejake kvalitni zdroje (teorie file systemu, pristupova prava)? pokud mozno elektronicke.

Dik.
26.7.2006 16:36 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Nemám moc přehled o učebnících na webu, takže se podívejte sem (doufám, že mi tam nezůstaly nějaké podstatné chyby). Podstatné pro to, o čem se tu bavíme, je hlavně pochopení těch obrázků a uvědomění si, že přístupová práva jsou uložena v i-nodu, zatímco při přesouvání souboru v rámci filesystému se přesouvá pouze adresářová položka (nebo spíš smaže stará a vytvoří nová).

Asi to zkusím nějak přehledně sepsat a dát to do zdejší učebnice, problémy s nepochopením toho, jak unixové filesystémy fungují, jsou bohužel poměrně časté.

26.7.2006 17:02 beranek
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ad obr.3, myslim, ze symlink je realizovan jinak, ma svuj i-node, a jeho data obsahuji cestu/path, velikost souboru odpovida delce cesty --honza
26.7.2006 17:06 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Jasně, díky za upozornění, zjednodušil jsem to víc, než bylo zdravé. Budu to muset opravit.
26.7.2006 16:22 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
zajimalo by me, kde jsem napsal, ze prava souboru maji vliv na to, zda ho lze smazat. ze to porad opakujete, i kdyz jsem napsal, ze se nedomnivam, ze to tak je. zrejme jste si to spatne vylozil.

kazdopadne, zda se mi, ze si pletete priciny a reseni. ja opravdu nepotrebuji znat priciny problemu s pravy pri presunu souboru. me zajima, jak to vyresit. nebo, jestli to vubec vyresit lze. nechci odkazy na dokumentaci systemu a ucebnice, chci odkaz na reseni problemu. nechci manual, chci odkaz na program, ktery umozni pracovat se systemem, aniz bych se musel stat guru. pc je pro lidi, a ne lidi pro pc. musite si uvedomit, ze 99% lidi neni ochotno venovat sprave pc vic casu, nez pouzivani pc samotneho, protoze by to bylo postaveny na hlavu, ze? pokud si tohle neuvedomujete, tak na foru spise skodite nez pomahate, protoze lidi jenom odrazujete. pokud mate takove vedomosti, ale nejste schopen jednoduse napsat napr. "1. presouvani souboru vyresit nelze; 2.kopirovani vyresit lze za pouziti acl", pripadne pridat odkaz na acl tutorial, tak je mozna lepsi nepsat vubec nic, nez jen lidem nadavat jak jsou hloupi, ze nestravili roky studiem unixu.

omlouvam se jestli to zni hrube, ale zatim jsem se od vas krome RTFM dozvedel akorat ze pripadne reseni by mohlo byt acl, vznikly problem jste mi vyresit nepomohl, a mezitim bylo par mlhavych vet o pravech pri presunu souboru, ktere jsem naprosto nepochopil. takze mi doted neni jasne, jestli budu moct kdy presunout soubor z domovskeho adresare do sdileneho tak, aby byl pristupny vsem. misto abyste napsal jednou jasnou vetu "neni to mozne/je to mozne(par slov jak)", tak aby to pochopil i naprosty noob, a vase zprava by mela tisickrat vetsi informacni hodnotu.
26.7.2006 16:47 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
zajimalo by me, kde jsem napsal, ze prava souboru maji vliv na to, zda ho lze smazat. ze to porad opakujete, i kdyz jsem napsal, ze se nedomnivam, ze to tak je. zrejme jste si to spatne vylozil.

Tak kdo tedy napsal tohle:

zase maska r--, tudiz nikdo jiny nemuze smazat soubor

To by dávalo smysl jedině že byste mluvil o právech adresáře, ale to by bylo hodně divné (adresář s 400 je skoro k ničemu). Byl to nějaký záškodník, který se za vás vydával, nebo jste to napsal vy?

ale nejste schopen jednoduse napsat napr. "1. presouvani souboru vyresit nelze; 2.kopirovani vyresit lze za pouziti acl

Ale přesně tohle jsem vám napsal, dokonce několikrát. Jenže vy jste to opakovaně ignoroval a pořád opakoval, že byste chtěl, aby to bylo jinak a že je chyba Linuxu, že to nejde, protože to každý začátečník očekává. Nedivte se, že po několikátém zopakování už mi došla trpělivost a doporučil jsem vám, abyste si nejdřív nastudoval, jak ten filesystém vlastně funguje, než z neznalosti začnete kritizovat jeho základní vlastnosti.

a mezitim bylo par mlhavych vet o pravech pri presunu souboru, ktere jsem naprosto nepochopil

Tak jste konečně pochopil v čem je problém: napsal jsem vám, že při přesunu souboru se práva změnit principiálně nemohou, a naznačil, proč tomu tak je. Vy jste to nepochopil. Takže problém není v tom, že bych vám neodpověděl, ale ve vašich nedostatečných znalostech. Proto je zcela legitimní vám doporučit, abyste si je doplnil. Což jsem také udělal. Zkuste se nad tím zamyslet, než kolem sebe zase začnete kopat a nadávat na "namyšlené linuxové guru".

26.7.2006 21:00 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ta maska plati i pro adresare (az na pridane x), takze si myslim, ze podstatu problemu vystihuje dobre.

mozna jste to vsechno opravdu vysvetlil, ale opravdu ne tak, aby to pochopil obycejny smrtelnik. alespon me, a myslim nejen me, by byly milejsi 2 strucne vety, ktere se nedaji mylne interpretovat, nez vas zpusob vysvetlovani. ja to po vasem nepochopil.

samozrejme ze mam nedostatecne znalosti. kdybych je mel dostatecne, tak se nemusim ptat. takze ano, jeden zpusob je vsechno si nastudovat. to se tady ale pak nemusim ptat, takovou odpoved znam sam. druha moznost je zeptat se, a doufat, ze se tu najde nekdo, kdo bude s danym problemem schopen pomoci behem nekolika hodin ci dnu, misto mesicu studovani literatury.

nemyslim si ze jste namysleny, pouze si myslim, ze nejste schopny lidsky vysvetlit reseni problemu. samozrejme, problem muze byt u me. at uz je to jakkoli, situace je vzdy stejna.
13.10.2009 23:37 Hobit
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Tak pod toto se podepisuji. Vim, ze tato diskuse je hooodne stara, ale sdileny adresar resim i ted a nemuzu vygooglit nejake rozumne reseni. A presne odpovedi na to, ze se mam naucit prava acl do podrobnosti jako expert, to fakt nejde. Za druhe jsem jen uzivatel PC, ne programator, ktery tyhle veci potrebuje, ja potrebuji funkci sdileneho adresare.
26.7.2006 18:30 zelial | skóre: 21
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Proste se mi nezachovava maska, a tudiz je to zas nepristupny pro skupinu. V cem je chyba?
tohle je fakt divne. trochu jsem patral a vypada to spis na feature nez bug.

man acl rika:
The access ACL of a file object is initialized when the object is created with any of the creat(), mkdir(), mknod(), mkfifo(), or open() functions. If a default ACL is associated with a directory, the mode parameter to the functions creating file objects and the default ACL of the directory are used to determine the ACL of the new object:
takze pri tvorbe noveho souboru (coz je nas pripad - pri kopirovani nebo presouvani z jineho oddilu se vytvari novy soubor) se acl vytvari nejen podle default acl adresare ale take podle nejakeho zahadneho mode parametru. tenhle mode je uplne v moci aplikace, ktera kopirovani provadi.

treba klasicke cp jej nastvuje podle prav zdrojoveho souboru a to i v pripade, ze mu vyslovne rekneme, ze nema zachovavat zadne atributy souboru (--no-preserve=all).

vysledkem pak je, ze absence -w- u zdrojoveho souboru se promitne do masky ciloveho souboru.

a jak to resit? netusim :(
26.7.2006 18:39 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ale take podle nejakeho zahadneho mode parametru

To není žádný záhadný parametr, to je prostě parametr, kterým proces říká systému, jaká práva má mít nově vytvořený soubor. To není samoúčelné, pokud aplikace chce vytvořit soubor s určitými právy, systém ho tak vytvaří (poté, co je ořeže podle umask). Vámi popisovaný případ se ale týká jen těch položek, které odpovídají klasickým přístupovým právům, tam je zachován pro zpětnou kompatibilitu. Pokud se jedná o položku typu ACL_GROUP, nic takového se dít nebude.

26.7.2006 21:04 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
potom by me zajimalo, proc se ta maska meni, a jak tomu zabranit.
26.7.2006 23:17 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Snazil jsem se nastudovat si toto (mimo man acl):

http://www.suse.de/~agruen/acl/linux-acls/online/

Z toho co jsem z toho pochopil, tak umask se nepouziva, pokud soubor obsahuje defaultni ACL, ale mode se pouziva vzdy. Navic, zda se, ze kazda funkce pro tvoreni apod. souboru pouziva jiny mode, a nelze to nijak ovlivnit.

Dale jsem se docetl:
Today, the most basic tools that are needed to operate a system with EAs and ACLs are available: there is EA and ACL support in the basic file utilities (ls, cp, and mv), there are utilities for manipulating EAs and ACLs from the command line, and there are solutions for backing up and restoring a system that uses those features. Still, there are many applications that are lacking support. Although for many of them this is irrelevant, there are some classes of applications for which this leads to problems. This includes file managers, editors, and file system synchronization tools.

File managers usually can copy and move files and allow permissions to be changed. UNIX kernels have no functions for copying files or for moving files across file system boundaries. Therefore, these operations are implemented by reading from the source file and copying the data to the destination file. The kernel has no way of telling which sequences of operations are file copies or moves and which are something else, so it cannot preserve EAs and ACLs automatically. This means that applications must take care of preserving EAs and ACLs themselves as needed.
Coz opravdu jsem zjistil, ze touch vytvori soubor s jinymi pravy, nez vytvoreni noveho souboru v nautilusovi. Coz je teda opravdu neprijemny, lehce receno.

Osobne se mi zda, ze ani ACL nebude schopne zajistit sdileny adresar pro uzivatele. A pokud nekdo vi jak to udelat, tak mi prosim ukazte funkcni priklad.

Zbyva tedy jeste periodicky spousteni skriptu opravujici prava (docela prasarna, ale co delat, kdyz to nejde slusne), nebo nejaka samba, ftp ci nfs (to teda osobne vubec neznam), coz je sice asi jednoduche reseni problemu, a "vyresi" to i presouvani souboru (protoze se bude zrejme vzdy kopirovat), ale zase pouzivani neni jednoduche. ach jo. asi du studovat sambu.
26.7.2006 23:26 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Navic, zda se, ze kazda funkce pro tvoreni apod. souboru pouziva jiny mode, a nelze to nijak ovlivnit.

Přesněji ne každá funkce, ale každý program. Nakonec každý program, ať už ten soubor vytváří jakkoli, ve skutečnosti volá open() (případně creat()), kterému musí předat práva nově vytvářeného souboru. Logika implementace je taková, že v případě nejasnosti raději přiřadí práva menší. Takže když si proces řekne, že ten soubor nemá mít zápis pro skupinu, systém se pokusí mu vyhovět (i když se to uživateli zrovna moc líbit nemusí).

Osobne se mi zda, ze ani ACL nebude schopne zajistit sdileny adresar pro uzivatele.

V tom smyslu, jak to chápete vy, asi ne. Možná by mohlo pomoci něco, co by využívalo famd nebo nějaký podobný mechanismus. Ale konkrétní řešení vám neporadím.

27.7.2006 01:45 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Dekuji.
V tom smyslu, jak to chápete vy, asi ne.
Priznavam, ze jsem odkojeny windowsovym svetem, takze mozna nektere postupy a zvyklosti nejsou v poradnych operacnich systemech obvykle. Netrvam na tom, aby to fungovalo presne tak jak rikam, ale nejakym lehce ovladatelnym (pro uzivatele) zpusobem by to melo umoznovat sdilet soubory mezi uzivateli. Pokud se to v unixu dela nejakym jinym zpusobem, nez jsem si predstavoval, tak me to take zajima.
27.7.2006 02:13 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ale nejakym lehce ovladatelnym (pro uzivatele) zpusobem by to melo umoznovat sdilet soubory mezi uzivateli

Možná je problém v tom, že si podvědomě představujete Linux jako náhradu za Windows. Ale tak tomu není, Linux je samostatný operační systém, který vznikl nezávisle na Windows, dokonce několik let před vznikem Windows 95, a navíc je založen na principech, které jsou ještě podstatně starší. V Linuxu samozřejmě není problém sdílet soubory mezi uživateli. To, že se to chová trochu jinak, než jste zvyklý, neznamená, že to nejde. Ve Windows také neuděláte (resp. ne tak snadno) spoustu věcí, které jsou v Linuxu naprosto přirozené. Ty systémy jsou prostě odlišné, jsou postaveny na odlišných principech a i když některé prvky těch systémů vypadají opticky podobně, nezřídka byly navrženy s velmi odlišnou motivací.

Možná vám teď pod dojmem jednoho konkrétního problému připadá myšlenka oddělení i-nodu od adresářové položky chybně navržená, protože vám přináší problémy při řešení požadavku, který vám připadá přirozený. Ale až budete třeba hned zítra potřebovat nahradit běžící program nebo používanou dynamickou knihovnu novou verzí, zjistíte, že ta myšlenka není tak nesmyslná a že má některé nezanedbatelné výhody.

27.7.2006 11:47 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
V Linuxu samozřejmě není problém sdílet soubory mezi uživateli. To, že se to chová trochu jinak, než jste zvyklý, neznamená, že to nejde.
Jakym zpusobem se to tedy dela?
27.7.2006 12:12 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Vždyť už to přeci víte, sám jste to podle vlastních slov zkoušel. Pochopte, že i když to nemá přesně takové vlastnosti, jaké od toho očekáváte, neznamená, že to nejde. To by byla stejná demagogie, jako kdybych tvrdil, že ve Windows nejde mazat soubory.
27.7.2006 14:28 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Nevim proc se vzdy snazite neodpovedet na otazku. Kdybych to vedel, tak se neptam.

Takze mam to chapat tak, ze sdileny adresar na linuxu neni problem zprovoznit, ale rozdil oproti windows je v tom, ze si kazdy uzivatel musi u sebou vytvorenych souboru hlidat prava, a zpristupnovat je i ostatnim? Takhle jste to myslel?

Nebo jste to myslel tak, ze to sice jde, ale uzivatele si musi nastavit vice nebezpecna prava? Tzn vsichni ve stejne primarni skupine, a umask 00x? Tak jste to myslel?
27.7.2006 14:33 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Máte spoustu možností, jak to udělat, pokud akceptujete, že se to nebude chovat přesně tak, jak jste si představoval. Mnohé z nich už tu zazněly, opravdu nemám chuť ani náladu vám je pořád dokola opakovat. Dokonce tu zazněl i náznak, jak by šlo zařídit, aby se to chovalo přesně tak, jak chcete vy, jen to nebylo dovedení za ručičku až k cíli. Takže ještě jednou: sdílený adresář na Linuxu udělat lze; lze dokonce udělat i sdílený adresář v ostře zúženém smyslu, jak ho chápete vy, jen to je o trochu složitější. Howgh.
27.7.2006 14:36 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
A pokud jste to přehlédl, ještě jednou: pokud tvrdíte, že na Linuxu nelze udělat sdílený adresář pro skupinu uživatelů, je to přesně stejný nesmysl, jako kdybych já prohlásil, že ve Windows nelze mazat soubory. Protože mazání souborů ve Windows skutečně nemá přesně všechny vlastnosti, na které jsem z Linuxu zvyklý. Jenže mne nenapadne kvůli tomu demagogicky prohlásit, že "ve Windows nelze mazat soubory". Takže vás prosím, abyste přestal stejně demagogicky prohlašovat, že "v Linuxu nelze udělat sdílený adresář".
27.7.2006 17:35 Dworkin
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Zdravim pane Kubecku
nechapu vasi demagogii odpovedi. Takto presne se chovaji lide z konzultantskych firem pokud se jich clovek zepta na konrektni vec. Vcelku se nic noveho nedovedi, jen to ze to delaji spatne nebo naznacuji ze konretni odpoved (kterou, bohuzel, ve vetsine pripadu neznaji) se zaplatilo malo penez.
Tim chci rici ze Vas cas straveny nad polemikou(byt chci verit s dobrym umyslem) byl investovany vcelku zbytecne, protoze z meho pohledu:

a) nevedl k jedoznacnemu vyreseni problemu
b) vec nezjednodusil, nybrz zcela umyslne a cilevedome zeslozitil
c) tazatele odvadel k vecem ne zcela nezbytnym pro zodpovezeni otazky
d) a ke konci uplne obratil pozici tazatele do role jakehosi "blbecka" co se dovolil zeptat.

Takze vec ktera je vcelku zajimava a mohla se konstruktive "technicky" rozvinout (jak se to deje s vetsim ci mensim uspechem ve druhem vlaknu teto otazky) se zvrhla v nic nerikajici obhajovani Vasi pozice(opet z toho citim jiste konzultantske metody).

Myslim, ze pokud opravdu mate znalosti, obzvaste kdyz se sam titulujete slovem guru, tak by k vysvetleni stacil jeden opravdu vecny prispevek ktery by vysvetlil jak se veci maji a ktery by byl i Vasi vizitkou a usetril spoustu casu. Takto jste si v mych ocich, jiste zcela zbytecne, vytvoril vizitku uplne jinou.

S pozdravem Vojtech Moravek
27.7.2006 20:01 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Prostě jsem tazateli (několikrát) sdělil, že

  1. Udělat přesně to, co požaduje, elementárními prostředky nelze.
  2. Jeho požadavek lze vyřešit, ale je to trochu složitější, jaké nástroje k tomu lze použít, to zde v diskusi padlo (několikrát).
  3. Tvrdí-li, že "V Linuxu nejde udělat sdílený adresář.", je to hrubé zkreslování skutečnosti.
  4. Odmítá-li tyto skutečnosti akceptovat, je to jeho problém.

Co je na tom demagogického?

Naopak, kdybych byl konzultantem, choval bych se úplně jinak. Prostě bych navrhl něco, co by pro klienta vypadalo jako to, co on si představoval, a bylo by mi úplně jedno, jestli rozumí tomu, jak operační systém funguje a proč. Ale právě proto, že zde nejsme ve vztahu konzultant-klient, snažím se slovy oblíbeného příměru "místo darování ryby učit ryby chytat." Možná někteří tazatelé nestojí o to, aby byli takto "vychováváni". V tom případě nechť si místo dotazu na veřejném fóru zaplatí tu konzultantskou firmu, která se vykašle na nějaké principy a bude skákat tak, jak oni budou pískat.

14.10.2009 00:06 Hobit
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Neda mi to. Tyhle odpovedi mi na foru nejvic vadi. P. Kubecek dela z tazatele blbecka. Pritom otazka neni zadna ptakovina, typu "poradte nefunguje to", ale naopak podle prispevku je to clovek, co cte nejdrive manualy, googluje a pak se teprve pta. Nevim jak si predstavuje diskusi na abclinuxu? To chce diskusi podobnou na zive.cz? To snad ne.

Docetl jsem diskusi az sem a taky me zajima alespon nakopnuti spravnym smerem k reseni, tak jak p. Kubecek ve svem pripsevku rika, ze sdileny adresar v linuxu lze udelat, ale jaksi nechce uz rici jak, pritom to je presne to o cem je tato diskuse. A jestli to p. Kubecek vi, tak se o te informaci s nami nechce podelit, protoze nam rika, ze si to mame vydedukovat z jeho nejasnych odpovedi a nebo naucit z manualu.

Tak ale proc tedy vubec odpovidal na dotaz, kdyz ho nechce pomoci vyresit? P. Kubecek je asi opravdu odbornik, ktery zna principy, ale nechce, nebo neumi je sdelit jinym lidem co se to chteji dovedet. Ja sice Linux neznam tak dukladne jako p. Kubecek, ale za to mam jine znalosti, kvuli kterym mi nezbyva cas na studovani Linuxu, ktery chci pouzivat k nejakemu ucelu. A ten ucel je prave odpoved na tento dotaz. Skoda zatim jsem v diskusi nenasel jednoznacnou odpoved jestli to lze nebo ne, jen same naznaky typu "linux umi vse, ale jinak nez windows", ale konkretni reseni ne.

Kdyz zapomenu na window (Linux pouzivam jiz skoro 10 let, partition win jsem smazal asi pred 2 roky) tak me presne zajima otazka jak udelat tu funkcionalitu, ktera zajima tazatele, tj. sdileny adresar, tak aby fungoval pri kopirovani i presouvani a nemusel se starat o to, co mi dany uzivatel da za prava.
28.7.2006 12:54 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Ano presne s vami souhlasim.

Pan Kubecek asi dobre nepochopil o co tu jde, i kdyz ma absolutni prehled v systemu.

Tazatel chce udelat sdileny adresar, kde normalni uzivale sdileji soubory a nenastavuji prava. A jak se zda, tak to v linuxu nejde jednoduse zajistit. Ja osobne si myslim, jestli to nejde, ze je to pekne v hajzlu.

Jdu se na to sam kouknout a tazateli napsat strucne, jestli to jde a nebo ne, a nebo co musi udelat.

28.7.2006 14:23 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Ahoj,

pokud nevíš k čemu slouží v html <pre> tag, tak ho prosím nepoužívej (v komentáři jsem to opravil).
-- Nezdar není hanbou, hanbou je strach z pokusu.
28.7.2006 16:31 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Ale ano, přesně tak jsem to pochopil a přesně na tuto otázku jsem mu odpověděl. Dokonce několikrát, podívejte se pořádně. Že se tazateli (a některým dalším moralistům) má odpověď nelíbí, to je jen a jen jejich problém.
28.7.2006 16:50 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Se vsi uctou pane Kubecku, bylo by nejlepsi, kdybyste do meho tematu uz nepsal. Nic, co by mi pomohlo, jsem se od vas nedozvedel, akorat jsem ztratil spoustu casu a ztracim dale ctenim hadek s vama. Nevim jak u registrovanych, ale neregistrovani uzivatele se tady v tomto foru velice spatne orientuji, protoze nejde lehce poznat, ktere prispevky jsou od posledni navstevy nove. Takze mi to prosim jeste vice nezneprijemnujte, dekuji.
28.7.2006 17:05 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Se vší úctou, budu si psát, kam budu chtít a co budu chtít. Pokud jste nechtěl odpověď podle pravdy, ale tak, aby se vám líbila, tak k tomu tady opravdu fórum není. Ode mne jste se dozvěděl pravdivou a úplnou (v mezích možností) odpověď na svou otázku. Že se vám nelíbila, to je váš osobní problém, s tím vám nepomohu. S tím prostě musíte počítat.

Teď jsem třeba zrovna před chvílí odpovídal na dotaz, proč určitá věc nejde v C++ přeložit. Napsal jsem, proč to nejde a co by se s tím dalo dělat. Přesně jako u vás. Jenže ten druhý tazatel místo aby kolem sebe začal kopat jako vy a vykřikovat, že to je nesmysl a že je to C++ na houby, se nad odpovědí zamyslel, zařídil se podle ní a všichni jsou spokojeni. Podobných dotazů bylo samozřejmě víc - schválně se zkuste podívat, kolik dotazů jsem tady zodpověděl za dobu, kterou vy jste místo řešení problému strávil kopáním kolem sebe a brečením, jak jsem na vás zlý a ošklivý. Zkuste se nad tím zamyslet, než si budete zase stěžovat, jak "jste se nic nedozvěděl a jen ztrácel čas". Kdybyste se totiž místo toho ztrácení času hádkami pokusil pochopit odpověď, kterou jste už dávno dostal, mohli jsme teď být oba v klidu a pohodě.

27.7.2006 19:11 zelial | skóre: 21
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
prosim vas, bud mate konkretni radu - pak ji sem napiste, nebo ji nemate a pak mlcte.
27.7.2006 20:02 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
A já vás poprosím, abyste si trhnul nohou. Promiňte, ale na váš příspěvek se jinak reagovat nedá. Nelíbí-li se vám mé rady, nečtěte je.
27.7.2006 20:21 zelial | skóre: 21
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
jsem zvedavy, jak (a jestli vubec) se podari ripperovi jeho problem vyresit. proto tuhle diskuzi sleduju. a nezda se mi, ze by vase prispevky (az na par vyjimek jako ty prvni dva) k reseni vedly. treba se pletu a nakonec to s spolu s ripperem nejak vyresite. pak si milerad trhnu treba obema.
27.7.2006 20:27 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Pro mne je problém vyřešen, tazatel dostal odpověď na svou otázku. Dostal několik návrhů, jak postupovat, teď je na něm, aby si některý zvolil a realizoval ho. Pokud při realizaci narazí na nějaký konkrétní problém, zeptá se na něj. Pokud teď vysvětluji svůj přístup, je to proto, že byl označen za nevhodný, ale domnívám si, že je správný, protože fórum je něčím jiným, než support, takže není potřeba se zabývat tím, zda je odpověď taková, jakou tazatel/klient chtěl slyšet.
27.7.2006 21:18 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
ja uz se poucil, a pana kubecka uz se radsi na nic neptam :) sice toho pravdepodobne hodne vi, ale dostat z nej konkretni ukazku reseni by me vzalo vic casu a nervu, nez si precist nejakou bichli o administraci linuxu, mozna i nekolik. kazdopadne se zde objevilo nekolik lidi ochotnych pomoci konkretne skriptem ci par prikazy, takze se snad k nejakemu reseni dopracuji, i kdyz to asi bude slozitejsi nez jsem pri kladeni dotazu predpokladal.

myslim ze nejlepe udelame, kdyz uz pana kubecka nebudeme nutit k dalsim odpovedem, protoze toto tema se pak stava zbytecne rozvlekle, neprehledne a plne sporu a neprilis konkretnich "rad", ktere alespon me nevyhovuji. vzhledem k tomu, ze toto tema treba zajima vic lidi nez jen me, tak se mi zda zbytecne hadat se zde o kvalitu prispevku, a jeste vice to zde zneprehlednovat. takze toto vlakno proste skonceme jako slepou vetev vyvoje, a soustredme se na vlakno druhe, evolucniho naslednika :)
27.7.2006 14:38 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
:-|
25.7.2006 20:20 jekub | skóre: 9 | blog: noblog
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co vytvořit oddíl (nebo přidat další disk) s FAT32?
26.7.2006 11:45 svatekr | skóre: 18 | blog: Svatekr | Teplice
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Jojo, takhle to mám doma a jsem spokojenej. Fat32 sice žádná bezpečnost, ale zde je to vlastně účel.
Každé zbytečně vyřčené slovo je vyřčeno zbytečně.
26.7.2006 13:34 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
to me teda naprosto neuspokojuje, uz z toho duvodu, ze bych to musel mit na zvlastnim oddile, limit 4GB na soubor, zadna obnova po havarii, atd. neporizuju si linux abych mel data na fat32, to me pripada trhly.
multi avatar 26.7.2006 14:55 multi | skóre: 38 | blog: JaNejsemOdsut
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ja podoby problem resil poci pragramu, kterej je standartni v mandrive (prepokladam ze i v ostatnich distrech).
Nastavoval jsem to pres GUI.
Je to vlastne bezpecnostini utilita, ktera hlida prava v dresarich.
Fitness ajťák: kutilův web; bezdrátová čidla teploty vývoj softwaru linux server
26.7.2006 15:02 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
neco takoveho jsem hledal v ubuntu, bezuspesne. muzes mi rict nazev toho programu?
26.7.2006 15:09 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
msec nejspíš...
26.7.2006 16:23 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
nasel jsem ze to bude asi mandriva security, takze do ubuntu to asi nedostanu.
Josef Kufner avatar 27.7.2006 02:03 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Stáhni si zdrojáky a zkompiluj je na Ubuntu. Ten program neznám, ale myslím, že by mohl fungovat.
Hello world ! Segmentation fault (core dumped)
27.7.2006 08:44 Bronislav Klapuch | skóre: 8
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Já bych to ve vašem konkrétním případě řešil takto: Jedná se o domácí počítač, jsem administrátor. Nastavím všechny uživatele do stejné skupiny (users, shared...). Pro nesnížení bezpečnosti se ujistím, zda je u domovského adresáře uživatele odebráno oprávnění skupinám. Další možností je vytvořit sdílený prostor na FAT disku.
27.7.2006 11:54 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Pokud vas spravne chapu, tak navrhujete nastavit uzivatelum stejnou primarni skupinu (users napr.), a pak jim nastavit umask treba 002. Nad tim jsem uvazoval, domovske adresare samozrejme umim nastavit tak, aby do nich mel pristup jen vlastnik, ale moc se mi do toho nechtelo z toho duvodu, ze si nedokazu domyslet vsechny pripadne dusledky, ktere by toto nastaveni mohlo mit. Prece jen, kazdy vytvoreny soubor bude citelny i zapisovatelny pro vsechny uzivatele, i kdyz to bude chranit nastaveni domovskeho adresare, tak nevim, jestli nemuze nastat nejaka situace, kdy by jiny uzivatel ziskal pristup k souborum jineho uzivatele (vyjma toho jednoho sdileneho adresare).
27.7.2006 12:32 Cuda
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Vím, že už to tu bylo řečeno, ale já bych to osobně řešil pomocí Samby. Je to jednoduchý nástroj, dá se tam nastavit maska pro nové soubory či adresáře. Pokud by byl v systému i uživatel i s Win, tak se k tomu taky připojí. Snad jediný zádrhel bude udržovat aktuální jména a hesla (nebo budou muset při otevírání to jméno a heslo zadat, pokud se nedá někde uložit, to teď nevím) v sambě a na jejich strojích. Jinak snad nic. Pro rychlé studium samby doporučuji http://www.sweb.cz/samba/samba/index.htm plus dodám stránku s krátkým vysvětlením. Sám jsem podle toho jel a v pohodě se to dá rozchodit. Jen si dej pozor na část s heslem pro Sambu smbpasswd to mě nějak uteklo a nemohl jsem se do adresářů dostat :-D. Hodně zdaru. Jen dovysvětlení, pro koncové uživatele je skoro jedno, či to je přes sambu, jen to budou mít v jiném adresáři, pokud to nenastavíš jinak :-D (douf. že se nepletu? :-? )
27.7.2006 14:33 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
no, musi k tomu pristupovat pres smb://pc/adresar, ne? coz neni sikovny, protoze to ani vsechny programy neumi (spis naopak, umi to malokterej).

pokud si nemyslel, ze by se to mountovalo do nakyho adresare pri startu systemu. to by asi slo, ale zatim jsem to nedelal, tak nevim. vyzkousim to.
27.7.2006 14:43 Cuda
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Mám Mandrivu (jen pro upřesnění) a tam je nějaký smb klient (bohužel jsem teď v práci (děláme na Win), takže nemůžu teď více upřesnit), a ten právě zajistil, že se mi do /home/cuda/ namountovala složka samba a tam už byly adresáře, které jsem měl povolené. Ta cesta by se možná dala i změnit, nebo možná by se dalo nastavit automount, teď ale bohužel sambu nevyužívám, tak vše říkám dle paměti. Výhoda je i v tom, že by se někdo mohl připojovat přes Win. Dokonce to umí, že pracuješ (nějaký program) s daty ve složce, kterou Ty přímo nevidíš (vyzkoušeno jen s Samba - klient ve Win :-( )
27.7.2006 14:49 Cuda
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
jejda, druhý odkaz jsem tam nevložil, takže http://interperson.ic.cz/index.php mám jich víc, ale tohle by na začátek mohlo stačit. Zakladní rozjetí i s nastudováním dle toho příkladu praxe vezme dle mě tak max. 3-4 hod.
27.7.2006 09:20 lefti | skóre: 18 | blog: OneAndOnlyTrueBlog
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pomoci dnotify by se to dalo vyresit takhle (je to o chloupek lepsi, nez cron):
#!/bin/bash
dir=/home/lefti/pokus
own=lefti:users
perm=660
dir_perm=770
cmd="/home/lefti/bin/check_foo"
if [ $# -eq 0 ]; then
  while [ true ];do
    dnotify -ra "$dir" --times 1 -e $cmd asdf
    echo "reloading"
  done
elif [ $# -eq 1 ]; then
  chown -R "$own" "$dir"
  find "$dir" -type d -exec chmod -R "$dir_perm" {} \;
  find "$dir" ! -type d -exec chmod -R "660" {} \;
fi
Nastaveni prav ne cely adresar je kvuli
"Due to limitations of the kernel interface which dnotify uses, it is not possible to see the name of the file changed in the monitored directory."
A while [ true ];do ...done, kvuli:
"dnotify will only scan directories once to find out subdirectories to monitor when recursive mode is enabled. If you want to monitor any subdirectory created, you will have to stop and restart dnotify every time a create or delete event occurs."

Oboji mozna resi inotify.
Zkusim pohledat neco o inotify nebo famd
PS: Prijde mi zbytecne kvuli tomuhle pouzivat takovou slozitost/neprehlednost jako je POSIX ACL, a jeste k tomu, kdyz to nedokaze vyresit. Mimochodem dokaze to vyresit SELinux ACL?
27.7.2006 12:02 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Dekuji moc za skript. Myslim ze celkem i rozumim co dela. Akorat nevim jak funguje dnotify, takze presne nevim jak se tento skript pouziva.

Predpokladam, ze se spusti jednou bez parametru, coz nastartuje nejakeho demona, a on uz pri pridani noveho souboru sam tento skript znova spusti, a nastavi prava?

Musi se spoustet po kazdem restartu pocitace?
28.7.2006 12:21 lefti | skóre: 18 | blog: OneAndOnlyTrueBlog
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Ten script byl osklivosti skoro na urovni hlidani prav pomoci cronu kazdou minutu, protoze dnotify to dost omezovalo.
Napsal jsem trochu lepsi verzi, vyuzivajici (py)inotify a ta uz funguje uspokojive.
script (pastebin)
Pouzijes to tak,ze script ulozis do souboru, nastavis exectutable prava. ./foo -h ti napise jak to pouzit.
Jako daemon, ktery bezi na pozadi a predavaly by se mu ruzny adresare co ma sledovat, to bohuzel (zatim?) nefunguje.
Jasne, ze to musis pustit po kazdym restartu.

Potrebujes k tomu mit nainstalovany pyinotify(psal jsem to s 0.6.x) a kernel idealne >=2.6.15, jestli kernel kompilujes rucne, tak si pohlidej volbu inotify u filesystemu.
A na zdrojak se raci nedivej, je to spis takovej pokus, jestli inotify fakt funguje.
27.7.2006 16:43 razor | skóre: 33
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pomocí nfs bych to udělal nějak takhle:
a] mkdir /path/share
b] nastavit nfs export: echo "/path/share (rw,all_squash,anonuid=idshareuzivatele,anongid=gidshareskupiny)" >> /etc/exports
c] vyexportovat share: exportfs -a
d] namountovat share: mount -tnfs localhost:/path/share /mnt/share
to all_squash zajistí, že se kdokoliv při nějake operaci s /mnt/share stane idshareuzivatele:gidshareskupiny . Tím pádem v tom share budou všechny soubory patřit jednomu uživateli a skupině, a kdokoliv je bude moci mazat atd, protože se "přepne" na toho vlastníka:skupinu. Snad se ti to bude hodit.
27.7.2006 17:02 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Dekuji moc. jeste pred chvili jsem myslel ze to zabalim, a ted se mi tu vyrojila takova spousta reseni(samba,nfs,dnotify), ze nevim, co mam zkouset driv :) diky. pokusim se vyzkouset vsechno, a zjistit, jestli nejsou nekde nejake hacky ;)

jinak bych mel jeste jeden dotaz k tomuto - kdyz presouvam soubor pomoci nfs, tak se v podstate zkopiruje (takto to je predpokladam u samby nebo ftp), nebo se presune a upravi prava, nebo se presune a prava se neupravi? Prvni moznost je snesitelna, druha idealni, a treti spatna. Predpokladam, ze ale kdyz to jde jeste pres nakou sluzbu, tak uz by tam s presouvanim "problem" (v mem pojeti) byt nemusel...
27.7.2006 21:15 razor | skóre: 33
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
oprava:

b] nastavit nfs export: echo "/path/share *(rw,all_squash,anonuid=idshareuzivatele,anongid=gidshareskupiny)" >> /etc/exports

ad prava: Při mv se soubor do share zkopíruje, práva zůstanou stejná a změní se vlastník a skupina souboru na anonuid a anongid.

ještě teda dodám, že vlastník a skupina /path/share by měli být anonuid a anongid.
4.8.2006 23:00 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Takze zprovozneni pres NFS vypada naprosto funkcni. Diky tomu, ze NFS dokaze zmenit majitele souboru pomoci anonuid, tak nikdy nenastava problem s pravy.

Problem, na ktery jsem narazil, je automaticke primountovavani po startu pocitace a odmountovavani pri ukoncovani. Chci totiz mit tuto slozku hned po startu pocitace primountovanou, jeste nez se prihlasi jakykoliv uzivatel. Tudiz jsem to pridal do /etc/fstab. Problem je, ze filesystemy z fstab se primountovavaji drive, nez se spusti NFS server. Tudiz dany adresar primountovan neni. Toto se da vyresit nastudovanim jak funguji startovaci skripty v dane distribuci (u me Ubuntu) a pridani vlastniho skriptu nekdy na konec procesu, az NFS demon bezi. Ten stejnej problem se tyka odmountovavani, NFS server se opet ukoncuje driv nez se odmountovavaji filesystemy. Nevim jestli je to nejaky problem, ale nerad bych aby mi data zustala nekde v cache, a pak se ztratila do prazdna, takze je nutne zrejme pres dane rc skripty i odmountovat adresar pred ukoncenim NFS serveru.

Dalsi mirna nevyhoda je ze presouvane soubory se musi kopirovat, misto aby se dalo nak zaridit ze se presunou a zmeni prava, ale to je proste dan za funkcnost.

Celkove, castecne protoze jsem lina ves a nechcou se me ucit rc skripty (trochu je umim akorat v gentoo), protoze se mi nechce mit spustenou dalsi sluzbu na pocitaci, a kdyz zvazim pomer funkcnost/slozitost oproti ostatnim resenim, tak asi zatim NFS odlozim stranou, a zkusim jak funkcni bude proste reseni pomoci prilezitostneho chmod/chown. Zatim nevim jestli bude pro me jednodussi prostej skript kterej v pripade potreby pomoci sudo nastavi rekurzivne celej adresar, nebo zde poskytnutej skript pomoci inotify (kterymu moc nerozumim, a tudiz trochu vaham s jeho pouzitim, kazdopadne za nej dekuju).

Kdyz jsem zakladal tenhle dotaz, tak jsem si myslel, ze jenom neco prehlizim, a reseni je trivialni; pozoruju, ze zas tak trivialni asi neni. Povazuju to za celkem velkej problem, asi u sve distribuce postnu bug na chybejici nastroj, ktery by zaridil sdilenou slozku pro uzivatele. Predstavoval jsem si, ze az zas budou nejaci technicky nezkuseni pratele potrebovat nainstalovat system, tak jim tam hodim linux, ale nevim, jak bych jim vysvetlil, ze nemuzou mit spolecnou slozku :) Takze to zas skonci u oken :-/
28.7.2006 13:17 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Jak to vyresit v linuxovem souborovem systemu zatim nevim. Proste to moc dobre nejde, protoze kazda aplikace si vse zapisuje jak chce (jak ji nastavime). Ale komu se chce neco takoveho nastavovat.

Nabidnu tedy jen reseni pres Sambu. Mam server a na nej se v podniku pristupuji jen windows klienti pres sambu. Sdilene adresare mam v smb.conf takhle:

[support]
        comment = support directory
        path = /data01/support
        writeable = yes
        inherit acls = yes
        force group = users
        create mask = 0770
        directory mask = 0770
Tim jsem zabezpecil, ze vsechna prava pro skupinu (jakoukoliv si zvolite, maji rwx, pro vsechny soubory a adresare, ktere tam prijdou pres sambu.

28.7.2006 14:31 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Tak v tuto chvili preskoumani celeho problemu muzu akorad doporucit prikazem umask 002 zmenit masku pro uzivatele. Od chvile zmeny se soubory boudou vytvaret s rw pravy i pro skupinu.

Defaultne se to nastavuje bud v /etc/profile pro vsechny, nebo v ~/.bash_profile pro konkretniho uzivatele.

Musite si pak dat samozrejme bacha na skupinu, aby nekdo jiny nemohl menit nebo mazat.

U starsich souboru, ktere maji jen read prava pro skupinu, se musi zmenit prava manualne.

Nebo udelat script na dany adresar, ktery bude menit prava prubezne ve stanoveny cas pomoci cronu.

28.7.2006 15:58 michal00 | skóre: 14 | blog: OpenStreetMap
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
nikedy to nefunguje (aj ked neviem, ci to nie je nahodou pomocou umasku, stroj mi nejak nechce nabootovat). niektore programi si ich sejvuju ako chcu... :-(
28.7.2006 17:46 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Takze, cely dnesni den jsem venoval zprovoznovani toho adresare pres sambu. Kdyz to shrnu, tak neni problem zprovoznit dany sdileny adresar, funguje to dobre. To se ale tyka pouze pristupu pres smb://, coz neumi spousta programu, neda se tam dostat z shellu, a tak. Takze jednoznacne jsem chtel sambu namountovat. A tam jsem uz narazil. Pouzival jsem mount.cifs.

V smb.conf jsem experimentoval s temito atributy:
force user
force group
create mask
directory mask
security mask
directory security mask
force security mode
force directory security mode
acl group control
inherit acls
inherit permissions
inherit owner
Pri mountovani jsem zkousel obycejne:
mount //ripper/share /share -t cifs -o guest
az po takoveto veci:
mount //ripper/share /share -t cifs -o guest,noperm,file_mode=0664,dir_mode=0775
Zadnou kombinaci se mi nepovedlo poradne to rozchodit. Strucne receno, kopirovani pres nautila (file manager v gnome) funguje vzdy bezvadne, i do namountovaneho adresare. Ale napriklad v midnight commanderu uz to nejde. Pri mountovani prvnim zpusobem to hazi hlasky "chmod: operation not permitted", prava souboru jsou dle nastaveni smb.conf bud v poradku nebo v neporadku. Kazdopadne hlasi to porad, takze i kdyz si prava vynutim, tak se neda kopirovat vice souboru. Zrejme to je proto, ze po zkopirovani chce zmenit chmodem prava, ale uz neni vlastnikem souboru (samba ho zmenila na nobody). To by slo vyresit mountovanim s uzivatelskym jmenem a heslem pro kazdeho uzivatele, ale to by zase slozka nebyla pristupna, aniz by se uzivatel lokalne neprihlasil, coz mi nevyhovuje. Pri mountovani druhym zpusobem uz errory nehazi, ale prava nove vytvorenych souboru jsou spatne.

Takze se mi nepovedlo prijit na to, jak namountovat samba sdileni tak, aby to fungovalo za kazdych okolnosti ve vsech aplikacich :-( Takze sambou to zrejme nepujde a budu se muset podivat po ostatnich resenich.
5.8.2006 16:54 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

muzes vyzkouset smbmount?

5.8.2006 19:50 Ripper
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
bohuzel bych to musel vse znova nastavit. ale v mc by zrejme stacilo odskrtnout polozku "zachovat atributy" a mozna by uz problemy nehlasil. nenapadlo me to vyzkouset. smbmount by se podle me choval stejne, protoze vlastnika souboru (a vubec atributy) prenastavuje server, takze by to melo fungovat stejne at uz to primountuju cimkoli.
5.8.2006 19:11 neal_cz | skóre: 29
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Taky řeším podobný problém. Někdo tu zmiňoval dnotify, příp. inotify. Touhle cestou jsem to zkusil. A výsledek:
#!/bin/bash

dir=/home/media/Fotky
group_owner=dospelaci

file_perm=660
dir_perm=770

acl_dir_perm=rwx

function unix_perms {
    if [ `echo $retval | cut -d " " -f 4`="" ]; then
        dir=$(echo $retval | cut -d "," -f 1)$(echo $retval | cut -d " " -f 3)
        echo File: $dir : $retval
        chmod $file_perm $dir
        chown :$group_owner $dir
    else
        if [ `echo $retval | cut -d " " -f 3`="ISDIR" ]; then
            dir=$(echo $retval | cut -d "," -f 1)$(echo $retval | cut -d " " -f 4)
            echo $dir : $retval
            chmod $dir_perm $dir
            chown -R :$group_owner $dir
        fi
    fi
}

function acl_perms {
    if [ `echo $retval | cut -d " " -f 3`="ISDIR" ]; then
        # vytvoren/presunut adresar
        dir=$(echo $retval | cut -d "," -f 1)$(echo $retval | cut -d " " -f 4)
        acl_users=$(cat /etc/group | grep $group_owner | cut -d ":" -f 4)
        acl_perm_part=$(echo $acl_users | awk 'BEGIN { FS="," } {for (i=1; i <= NF; ++i) {printf "u:%s:rwx", $i; if ( i < NF ){printf(",")}} printf("\n")}')
        setfacl -m $acl_perm_part $dir
    fi
}

while true;
do
    retval=`inotifywait -f -r -e create -e moved_to $dir`
#    acl_perms $retval
    unix_perms $retval
done
Žádný zázrak to není, ale zatím to vypadá, že to funguje. Je k tomu zapotřebí balík inotify-tools. Spuštění chvíli trvá, ale změny jsou pak sledovány velice rychle. Pokud vidíte prasárny (moji osobní hitparádu vede způsob zjištění uživatelů patřících do oprávněné skupiny), tak prosím o shovívavost. Je to můj doposud největší projekt :)
neo.taa avatar 5.8.2006 20:51 neo.taa | skóre: 15
Rozbalit Rozbalit vše FAT pro Re: adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jde o jeden PC s linuxem na něm tři uživatelé? Nepomohla by FAT ?

(tj. přihlásí se pepa, nahraje fotky, odhlásí se a jde spát, příjde kamila a přihlásí se na tomtéž PC, chce si fotky prohlédnout a přidat tam nějaké mp3, odhlásí se, přijde ........)?

Moc linuxu nerozumím, ale možná by pomohlo udělat oddíl ve FAT, to namontovat a nezapomenout pod root-em dát-povolit pro montovací adresář práva pro ostatní uživatele. Já takhle řeším fotky.
5.8.2006 21:49 joeSVK | skóre: 3
Rozbalit Rozbalit vše takto to mam ja
Odpovědět | | Sbalit | Link | Blokovat | Admin
uzivatel pripaja takto: mount -t smbfs -o username=friends,password=heslo,gid=users,fmask=0777,dmask=0777

zdielanie nadefinovane nasledovone:

[friends]

comment = friends

path = /mnt/hd/friends

public = no

writable = yes

printable = no

valid users =@friends

force create mode = 0770

force directory mode = 0770

force directory security mode = 770

force security mode =770

security je user
10.9.2006 23:32 Jiri Smitka
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Srdecne zdravim,

nejdrive bych rad shrnul problem, jak ho vidim ja.

Je treba vytvorit sdileny prostor s nasledujicimi vlastnostmi:

- vsechny soubory ve sdilenem prostoru musi byt dostupne vsem ostatnim, kteri maji povolen pristup, a to pro r/w nebo read only

- moznost definovat skupiny uzivatelu pro jednotlive prostory a jestli jsou pro tohoto uzivatele r/w nebo read only

- moznost kopirovat/presouvat soubory prostym volanim prislusneho prikazu, tedy bez volani chmod ci chown uzivatelem (aby to zvladla sekretarka) a to i z domovskeho adresare na sdileny disk (jiny vlastnik, skupina a prava)

- na pocitaci pracuje vice lidi najednou, kazdy smi pouze do nadefinovanych prostoru.

Jak na to? Ve foru zaznelo:

umask: Nevyhovuje, nenastavuje nic krome prav. Navic bezpecnostni riziko jine soubory.

Samba a NFS pres localhost: Bud jsou nebo nejsou namontovane. Nevyhovuje pro viceuzivatelsky rezim.

ACL: Castecne jsem to rozchodil, ale neumim vyresit problem zakladani novych adresaru - vzdy dostanou vlastnika a skupinu podle zakladatele. Mozna to jde nejak resit, pokud to nekdo zvladate, ozvete se.

inotify: Vyzkousel jsem skriptik s inotifywait, coz nadherne funguje a vyhovuje to vsem bodum podle zadani. Ma to hacek - nestiha to. Provedl jsem test ve sdilenem adresari: for ((i=0;$i<100000;i++)) do touch $i; done a dopadlo to tak, ze spravne melo prava a skupinu pouze asi 5 procent souboru. Ano, mel jsem to prepsany do perlu, ano, slo by to napsat v cecku, ale neverim, ze by to vedlo ke stoprocentnimu vysledku.

Pravidelne nastavovani vlastnika a prav kazdych N sekund: Zcela funkcni, ale vytezujici stroj, a vubec, tohle je fakt osklive. Nehlede na to, ze uzivatele jsou nuceni obcas cekat na provedeni zmen.

Nabourat jadro: Zatim jedina mne znama cesta, ktera vede k cistemu vysledku. Neznate nejake rozjete projekty v tomto smyslu?

Zdravi

Jiri Smitka

11.9.2006 10:46 michal00 | skóre: 14 | blog: OpenStreetMap
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
k definícii by som ešte pridal: - možnosť predefinovať prístupové práva centrálne relatívne on the fly (teda prehodiť skupinu z r prístupu na rw)

ešte je niekoľko možností:

fuse - asi no comment :) ukladá dáta niekam inde (ext2, cvs) bez prístupových práv, pri čítaní a zapisovaní ich kontroluje podľa nejakého konfiguráka

inotify - nad inotify už je nieľko knižníc (aj céčkových), možno tam stačí čosi dorobiť.
11.9.2006 10:51 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Nabourat jadro - to nie je spravna cesta, lepsie je napisat fs v userspace
Project Satan infects Calculon with Werecar virus
11.9.2006 21:20 Jiri Smitka
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

To vypada velmi dobre! Vyzkousim, co by s tim slo delat...

Diky !

20.9.2006 10:08 Jiri Smitka
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Zatim jsem to vyresil pres lokalni Sambu montovanou pri bootovani do domovskych adresaru jednotlivych uzivatelu, kazdemu podle jeho prav.

Funguje to a splnuje to snad vsechny uvedene podminky.

Zdravi

Jiri Smitka

20.9.2006 11:27 r_b_l | skóre: 3
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Docela mě udivuje, že nikdo nenavrhuje použít samostatný oddíl na disku kterému v fstab přiřadíte uid,gid a umask (pokud mají mít přístup úplně všichni bez rozdílu tak stačí jenom umask). Jenom se musí správně vybrat souborový systém, protože podle manuálu k mount nelze takto postupovat u všech, ale jen u některých (fat32,...).

Ztratí se tím sice možnost používat vymoženosti jiných filesystémů (symlinky,...), ale jako domácí sdílený prostor pro filmy a muziku se mi toto jeví jako nejjednodušší možnost.
20.9.2006 11:43 r_b_l | skóre: 3
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu
Mno, nakonec koukám, že už tu tento návrh přeci jen je, akorát jsem ty tři malé řádky mezi těmi mohutnými odstavci o cron/acl/inotify/samba přehlédl.
21.9.2006 16:27 Jiri Smitka
Rozbalit Rozbalit vše Re: jak vytvorit sdileny adresar pro vice uzivatelu

Nevyhovuje to napr. v situaci, kdy jedna skupina uzivatelu ma mit plny pristup, druha skupina pouze pro cteni a treti vubec zadny. Jinak je pravda, ze pro sdileni filmu atd. to bohate staci. Pro sdileni ruzne utajovanych informaci jiz ale ne.

Zdravi

Jiri Smitka

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.