Dobrý den,
takže včera nastala ta správná chvíle, jelikož jsem místo upgrade udělal kompletní přeinstalaci včetně rozdělení disku a vyřešil jsem vše, co jsem potřeboval ke svojí spokojenosti, pro ty, komu by se mohlo tohle hodit, není to nic složitého, ani světoborného, ale už se mě na to dva lidi z mého okolí ptali, takže stručný "návod", vše co jsem na fóru našel mi sice pomohlo, ale tak úplně neřešilo všechny problémy, uvedený postup je trošku kostrbatý, zejména v příkazech, kdy by šlo někdy vše udělat jedním a já jich ťukám více, ale funguje a dovoluji si požádat zkušenější kolegy, kteří budou kroutit hlavou, že někdo takhle obšírně popisuje takovoto samozřejmost, ať jsou ve svých soudech trošku zdrženliví, jelikož oni taky někdy začínali... Navíc měli možnost napsat svoje řešení :-):
Nejprve si rekapitulujme, jaké byly požadavky:
- Domácí počítač, více uživatelů, chtějí navzájem sdílet nějaká data a to vždy, kdy budou chtít a nebudou muset pro ta sdílená data nastavovat práva.
- Data na samostatném oddílu, systém na samostatném oddílu - je to velice rozumné např. pro zálohování, jalikož pak stačí pravidelně zálohovat např. přes rsysnc adresář, kde je namountovaný disk s daty (nastavil jsem to tak, že mám v počítači druhý disk a ten se využívá jen pro zálohu dat)
- V oddíle, kde jsou data má každý uživatel svoje /home/uzivatel a navíc je tam adresář, který je pro oba společný, kam mohou oba zapisovat a číst, kdykoli se jim zlíbí a nemusí se starat o nastavování práv vždycky, když tam něco dají. Moje řešení není na 100% funkční, viz níže bod 6), ale problém je takový, že ho ani nepoznáte :-)
Postup:
Postup popisuji od instalace systému, předpokládám, že ten, kdo si bude chtít udělat něco takového až po instalaci je už dost zběhlý v tom, aby si dokázal změnit příslušné partitions, aby mu vše zafungovalo tak jak má:
1) Při instalaci ve chvíli, kdy se dělí disk si udělejte dvě partitions - jednu na systém a druhou na data, tu na systém (první) připojte do / a tu na data připojte do /home je jen na Vás, jak si zvolíte velikosti, já mám disk 320GB, na sytém mám 20GB (sda1, někdo říká, že je to moc), na data 296GB (sda2) a na swap dvojnásobek velikosti RAM kvůli hybernaci (i když jsem ji ještě nevyužil), takže 4GB (sda3) - čísla berte s rezervou, není to přesně, systém si to zaokrouhluje trochu dolů, datová a aplikační Partition je typu ext3
2) po instalaci Vám v /home vzniknou standardní adresáře všech uživatelů - nazývejme je mamka, tatka, ty nás teď nezajímají, protože do nich si každý uživatel může sypat co chce a nikdo mu tam nemá co lézt.
3) vytvořte skupinu uživatelů, ktera bude moci přistupovat do sdíleného adresáře - já ji nazývám "sdileni" a přidejte do ní všechny uživatele, kteří mají mít právo přístupu do sdíleného adresáře:
sudo adduser tatka sdileni
sudo adduser mamka sdileni
4) Vytvořte v /home sdílený adresář:
sudo mkdir /home/share
5) Adresář se teď vytvořil, ale s právy roota, takže tam nikdo nemůže, já jsem se rozhodl, že v tomhle sdíleném bude vlastník všeho "tatka" a pro všechny ve skupině "sdileni" bude přístup s plnými právy, takže nastavit vlastníka a práva:
sudo chown tatka.sdileni /home/share
sudo chmod 770 /home/share
6) Teď se zdá, že je vše vyřešeno, ale chyba lávky, ve chvíli, kdy cokoli kdokoli zapíše do /home/share, zapíše to tam jako vlastník s implicitními právy svojí skupiny a ostatní uživatelé stejně nic číst nebudou moci, pokud jim to on nedovolí, ale to jsme nechtěli, prý by to šlo řesit guid bitem a umask, což je věc, kterou my lámové neznáme, takže jsem to vyřešil tak, že při startu systému se prostě nastaví rekurzivně práva pro celý /home/sdileny příkazy umístěnými v rc.local. V čemž je zakopaný ten jediný pes, totiž, že pokud někdo něco zapíše a neodhlásí se a druhý uživatel se zase nepřihlásí, ale jen se přepne, nedojde k přepisu oprávnění a tím pádem to pro druhého uživatele zůstane nepřístupné, dokud se nerestartuje systém... Vypadá to jako problém, ale asi tři měsíce jsem si to doma testoval a nikdy se mi nestalo, že bych musel cíleně restartovat (tj. kvůli těm právům) prostě běžná domácí práce na PC má takový "rytmus" alespoň u nás, že tohle řešení dostačuje, pro toho, kdo by chtěl mít jistotu, může si tuto změnu práv naplánovat např cronem kadých pět minut, ale fakt je to zbytečné, teď jak na to:
- otevřete si soubor rc.local:
sudo nano /etc/rc.local
- na konci je text exit 0
, před tento text vložte řádky:
sudo chown -R tatka.sdileni /home/share
sudo chmod -R 770 /home/share
- uložte (Ctrl+O) a zavřete (Ctrl+X)
7) A to je vše, já jsem s tím spokojený, pokud se najde aspoň jeden člověk, kterému tohle pomůže, dejte vědět. Start systému provedení těchto příkazů nezpomalí, resp. asi tak o nějaké milisekundy...