Portál AbcLinuxu, 26. června 2025 12:58


Dotaz: Obnova home dir

14.2.2005 11:26 Kine
Obnova home dir
Přečteno: 298×
Odpovědět | Admin
Chtel bych se zeptat, zda je nejaka ceta, ci zda by nekdo mohl poskytnout script na znovuvytvoreni home adresaru existujicich uzivatelu. Po padu HDD jsem prisel o /home a potrebuji nyni znovuvytvorit vychozi adresarovou strukturu...

Rucne vytvaret adresare a nastavovat prava se mi zda jako ne moc dobra cesta...

Diky za help
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

14.2.2005 12:26 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: Obnova home dir
Odpovědět | | Sbalit | Link | Blokovat | Admin
Backup?

No jasne ... taaak trebars nejako takto:

for user_dir in  ` cut -d : -f6,1 /etc/passwd ` 
do
 ur=`echo $user_dir |cut -d : -f1`
 dr=`echo $user_dir |cut -d : -f2`
 mkdir $dr
 chown $ur.users $dr
done
14.2.2005 12:38 zlosyn | skóre: 24
Rozbalit Rozbalit vše Re: Obnova home dir
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nebo za predpokladu, ze jmena home jsou stejna jako jmena uzivatelu .. Da se take ocekavat, ze nechces home pro uzivatele typu sshd, rpc, operator, .. for I in `cat /etc/passwd | grep /home/ | cut -d : -f1,1`;
do mkdir /home/$I;
chown $I.users /home/$I;
done
14.2.2005 12:42 Kine
Rozbalit Rozbalit vše Re: Obnova home dir
OK, to je lepsi. opravdu chci pouze /home/... jeste prihodim aby se nevytvarel cisty dir ale kopie /etc/skel a je to...

Dik.
14.2.2005 12:50 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Obnova home dir
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jistým vodítkem by pro vás mohl být způsob, jak vypsat uživatele v nějakém rozmezí UID (zde UID vyšší než 1000 a zároveň nižší než 1011). Zkuste si:
awk -F: '{if($3>1000&&$3<1011)print$1}' /etc/passwd
Takže by se dal udělat jednoduchý script v BASHi, který by nějak, třeba takto:
for UZIVATEL in `awk -F: '{if($3>1000&&$3<1011)print$1}' /etc/passwd` ; do
  mkdir /home/$UZIVATEL
  __NEJAKA_AKCE__
  chown -R $USIVATEL:users /home/$UZIVATEL
  chmod 0700 /home/$UZIVATEL
done
vytvořil ty uživatelské adresáře, nastavil vlastníky a práva, zkopíroval do těch uživatelských adresářů obsah /etc/skel nebo co chcete v místě "__NEJAKA_AKCE__". Je to to první, co mě napadlo, tedy jestli dobře chápu váš dotaz. Snad to pomůže.

Pozn.: Některé distribuce místo toho, aby měly všechny uživatele v jedné skupine třeba "users", tak každý uživatel má vlastní skupinu. Pak by u toho "chown" namísto "-R $UZIVATEL:users" bylo samosebou "-R $UZIVATEL:$UZIVATEL".
14.2.2005 12:51 Kine
Rozbalit Rozbalit vše Re: Obnova home dir
Odpovědět | | Sbalit | Link | Blokovat | Admin
Výsledný script:
#!/bin/bash
for I in `cat /etc/passwd | grep /home/ | cut -d : -f1,1`;
do echo Creating home dir for user $I
 cp -r /etc/skel /home/$I;
 chown -R $I.users /home/$I;
done
14.2.2005 12:54 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Obnova home dir
Chybí nastavení práv. :-)
14.2.2005 12:56 Kine
Rozbalit Rozbalit vše Re: Obnova home dir
Default mi vyhovuje... :-)

(popr. bude zmenen na mam dojem 711)
14.2.2005 12:58 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Obnova home dir
V kategorii nejzbytečnější cat vyhrává... ;-)
14.2.2005 13:00 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Obnova home dir
Uff, ještě, že jsem ho tam nedal. :-D Ale moc nechybělo... :-D
14.2.2005 13:35 zlosyn | skóre: 24
Rozbalit Rozbalit vše Re: Obnova home dir
Ok, byl jsem to ja, kdo to tam zbytecne dal .. uz dlouho vim, ze je to blbej zvyk a nejak se ho ne a ne zbavit ..
v zasade jsem hned po odeslani cekal, ze s tim nekdo prijde .. no, co uz .. :-)
14.2.2005 17:57 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Obnova home dir
Eh, proč některé výpisy tam uvedené poměrně přesně sedí na některé části výpisu historie mého shellu? Sakra :-)
Copak toho není dost?
14.2.2005 13:08 Kine
Rozbalit Rozbalit vše Re: Obnova home dir
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ok, opravuji:
#!/bin/bash
for I in `grep /home/ /etc/passwd | cut -d : -f1,1`;
do echo $I
 cp -r /etc/skel /home/$I;
 chmod 711 /home/$I;
 chown -R $I.users /home/$I;
done
:-) Snad je to lepsi...
14.2.2005 13:17 Kine
Rozbalit Rozbalit vše Re: Obnova home dir
Vylepsena verze - bere skupinu dle nastaveni uzivatele
#!/bin/bash
for I in `grep /home/ /etc/passwd | cut -d : -f1,1`;
do echo $I
 cp -r /etc/skel /home/$I;
 chmod 711 /home/$I;
 chown -R $I:`id -gn $I` /home/$I;
done

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.