Gezocht: Linux command voor veilig recursief ownership

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
Hoi,

Wij runnen vps servers met daarop diverse dingen (voornamelijk websites). Een tijdje geleden was mijn collega onderhoud aan het plegen op een server en in zijn enthousiasme voerde hij tijdens het zetten van ownership op bestanden per ongeluk het commando recursief uit wat resulteerde in het compleet resetten van ownership op een groot aantal bestanden op een x aantal whm accounts. Needless to say dat we daarna veel werk hebben gehad om alles weer te zo in te stellen dat het werkt (niet eens dat het was zoals het was). Was leuk om erachter te komen dat onze data center stilzwijgend het contract had aangepast en niet meer backups voor ons maakte. :( Daar gaat nog wel werk van gemaakt worden.

Anyway, 1 van die accounts heeft nog best wat bestanden verkeerd ingesteld staan (alles werkt maar ze kunnen geen cms bestanden aanpassen). Helaas draait net op die account dat poep systeem joomla met zijn bloatware.

Nou ben ik zelf redelijk op de hoogte van linux maar niet een super pro (mijn collega doet dat maar is op vakantie dus aan mij de eer). Dus bij deze een vraag een de pro's.

Is er een manier zodat ik alle bestanden / folder in en onder de folder waar ik in zit kan aanpassen (ownership) op een veilige manier zonder dat hij links, ., .., etc. mee neemt? Ipv in elke folder chown owner * te typen? Dus dat hij op geen enkele manier bestanden buiten of hoger dan de tree waar ik in zit kan verkloten?

Ik werk via putty en heb complete acces naar alles (vandaar mijn angst dat ik shit kapot kan maken) btw.

Acties:
  • 0 Henk 'm!

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 15-07 15:35

leuk_he

1. Controleer de kabel!

script request... :X

code:
1
find /home/user     -exec chown user:usergroup {} \;


je kunt zo kijken wat hij gaat doen als dat te eng is:
code:
1
find /home/user     -exec echo chown user:usergroup {} \;

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


Acties:
  • 0 Henk 'm!

  • bas-r
  • Registratie: April 2005
  • Laatst online: 17:44
chown -R

Acties:
  • 0 Henk 'm!

  • ik222
  • Registratie: Maart 2007
  • Niet online
code:
1
sudo chown -R [username] /path/to/folder

Als je dit op de hoofdmap uitvoert zet dat de owner op alle onderliggende mappen en bestanden. Of begrijp ik je vraag nu verkeerd? Dit is namelijk wel erg basic...

/edit: Al te laat :o

[ Voor 53% gewijzigd door ik222 op 18-07-2011 12:14 ]


Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
ik222 schreef op maandag 18 juli 2011 @ 12:11:
code:
1
sudo chown -R [username] /path/to/folder

Als je dit op de hoofdmap uitvoert zet dat de owner op alle onderliggende mappen en bestanden. Of begrijp ik je vraag nu verkeerd? Dit is namelijk wel erg basic...

/edit: Al te laat :o
Het is op de hoofd map van de whm account maar niet de server. Misshien basic en de meeste van de genoemde commando's weet ik wel maar gezien het incident ben ik effing spooked. Het heeft ons wel geleerd om je nog eens achter de oren te krabben als je een commando uit voert op meerdere bestanden tegelijk. :'(

Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
Basically, het was een self destruct knop die 19 accounts onbereikbaar maakte (http, ftp, mail, etc.). Gelukkig hebben we niet alles op 1 server staan anders was ik uit het raam gesprongen. ;P

Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
leuk_he schreef op maandag 18 juli 2011 @ 12:11:
script request... :X

code:
1
find /home/user     -exec chown user:usergroup {} \;


je kunt zo kijken wat hij gaat doen als dat te eng is:
code:
1
find /home/user     -exec echo chown user:usergroup {} \;
Dank, die tweede lijkt te doen wat we willen. We hadden hem al via google gevonden maar wisten niet 100% zeker dat hij niet alles kapot zou maken.

Acties:
  • 0 Henk 'm!

  • johnkeates
  • Registratie: Februari 2008
  • Laatst online: 04-07 16:30
Als je een map en al zijn inhoud wil 'doen', ga dan naar die map en doe dan

code:
1
sudo chown -R username .

(inclusief die punt ja)

Acties:
  • 0 Henk 'm!

  • ik222
  • Registratie: Maart 2007
  • Niet online
actionInvoke schreef op maandag 18 juli 2011 @ 12:18:
[...]


Het is op de hoofd map van de whm account maar niet de server. Misshien basic en de meeste van de genoemde commando's weet ik wel maar gezien het incident ben ik effing spooked. Het heeft ons wel geleerd om je nog eens achter de oren te krabben als je een commando uit voert op meerdere bestanden tegelijk. :'(
Dan voer je bij path het path in naar de map van het 'whm' account ;) Dat kan zowel absoluut (vanuit de root van het filesystem) als relatief. Wat johnkeates hierboven zegt kan ook als je al in de map zit waar het moet gebeuren.

Acties:
  • 0 Henk 'm!

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 15-07 15:35

leuk_he

1. Controleer de kabel!

actionInvoke schreef op maandag 18 juli 2011 @ 12:28:
[...]


Dank, die tweede lijkt te doen wat we willen. We hadden hem al via google gevonden maar wisten niet 100% zeker dat hij niet alles kapot zou maken.
die 2e doet niks he, die toont aleen wat de eerst zal gaan doen

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
leuk_he schreef op maandag 18 juli 2011 @ 12:51:
[...]

die 2e doet niks he, die toont aleen wat de eerst zal gaan doen
Ja ;)

Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
Ik heb even alles naar een log files geschreven, wat absurd veel bestanden in joomla. Als ik die met de hand had moeten nalopen...

Alles fixed! Je bent een held. ;P

Acties:
  • 0 Henk 'm!

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

Ik zou die find wel wat uitbreiden.
Als er per ongeluk alsnog bestanden met een andere owner staan dan wil je die niet zomaar mee van owner veranderen:

Bash:
1
find <dir> -user <old> -exec chown <new> {} \;

ASSUME makes an ASS out of U and ME


Acties:
  • 0 Henk 'm!

  • actionInvoke
  • Registratie: November 2005
  • Niet online
H!GHGuY schreef op maandag 18 juli 2011 @ 13:03:
Ik zou die find wel wat uitbreiden.
Als er per ongeluk alsnog bestanden met een andere owner staan dan wil je die niet zomaar mee van owner veranderen:

Bash:
1
find <dir> -user <old> -exec chown <new> {} \;
Gelukkig is dat niet zo'n issue. De enige bestanden die waren aangetast bij die account waren cms bestanden & userfiles. Daarnaast maken ze gelukkig geen gebruik van onze andere diensten anders was het mogelijk een complexer verhaal geweest.

Acties:
  • 0 Henk 'm!

  • Rainmaker
  • Registratie: Augustus 2000
  • Laatst online: 14-07-2024

Rainmaker

RHCDS

gaat het hier nou om 1 gebruiker, of om meerdere?

Anders zou je ook zoiets kunnen doen:
code:
1
2
3
for i in /home/*; do
find /home/$i -exec chown $i:$i {} \;
done

We are pentium of borg. Division is futile. You will be approximated.

Pagina: 1