Pakeiskite visų katalogo failų ir aplankų teises į 644/755

Kaip pakeisti visus failus į 644 ir visus aplankus iki 755, naudojant „ chmod iš „ linux komandų eilutės? (Terminalas)

143
16 сент. paklausė Hugo der hungrige rugsėjo 16 d 2013-09-16 00:36 '13 prie 0:36 2013-09-16 00:36
@ 8 atsakymai

Vienas iš būdų būtų naudoti rasti:

katalogams

 find /desired_location -type d -print0 | xargs -0 chmod 0755 

failams

 find /desired_location -type f -print0 | xargs -0 chmod 0644 
294
16 сент. atsakymas pateikiamas hugo der hungrige rugsėjo 16 d 2013-09-16 00:40 '13 0:40 2013-09-16 00:40

Paprasčiausias būdas tai padaryti:

 chmod -R u+rwX,go+rX,go-w /path/to/dir 

tai iš esmės reiškia:

k ch ange mod es failai -R ecursively suteikiant:

  • u Ser: r EAD, w ritualas ir e X ekute leidimai,
  • g Roap and o Ther naudotojai: r EAD ir e X leidimai ecute, bet ne -w apeigų leidimas.
border=0

Atkreipkite dėmesį, kad X padarys katalogo vykdomąjį, bet ne failą, jei jis nebus ieškomas / vykdomas.

+X - padaryti katalogą ar failą prieinamą visiems paieškai / vykdymui, jei jis jau yra prieinamas paieškai / vykdymui.

Jei reikia daugiau informacijos, patikrinkite man chmod .

Taip pat žiūrėkite: Kaip paleisti chmod visuose kataloguose, išskyrus failus (rekursyviai)? SU

84
23 мая '15 в 0:53 2015-05-23 00:53 atsakymas pateikiamas kenorbui gegužės 23 d., 15 val. 0:53 2015-05-23 00:53

Trumpiausias, kurį galėčiau galvoti, yra:

 chmod -R a=r,u+w,a+X /foo 

kuris veikia GNU / Linux, ir aš tikiu Posix apskritai (iš mano skaitymo: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/chmod.html ).

Kas tai yra:

  • Nustatykite failą / katalogą į r__r__r__ (0444)
  • Pridėti w savininkui, kad gautumėte rw_r__r__ (0644)
  • Nustatykite visiems, jei katalogas (katalogo 0755, failo 0644).

Svarbu, kad 1 žingsnio skiriamoji geba išvalytų visus vykdomuosius bitus, taigi 3 žingsnis tik įtraukia atgal į vykdomuosius bitus į katalogus (niekada failus). Be to, visi trys veiksmai atliekami prieš katalogo atkūrimą (pvz., Tai nėra lygiavertė, pvz.,

 chmod -R a=r /foo chmod -R u+w /foo chmod -R a+X /foo 

kadangi a = r pašalina x iš katalogų, todėl chmod negali jų perrašyti.)

19
26 дек. John Allsup atsakymas gruodžio 26 d 2016-12-26 15:52 '17 at 15:52 2016-12-26 15:52

Jis dirbo man:

 find /A -type d -exec chmod 0755 {} \; find /A -type f -exec chmod 0644 {} \; 
8
07 июля '15 в 19:24 2015-07-07 19:24 Atsakymą pateikė Jair Reina liepos 15 d. 15 val. 19:24 2015-07-07 19:24

Lengviausias būdas prisiminti dvi operacijas:

 chmod -R 644 dirName chmod -R +X dirName 

Simbolis + X veikia tik katalogus.

7
18 мая '16 в 2:08 2016-05-18 02:08 Marko D atsakymas gegužės 18 d., 16 d., 02:08 2016-05-18 02:08

Padarykite abu viename leidime:

 find -type f ... -o -type d ... 

Kaip ir rasti tipą f AR ARBA įveskite d ir užfiksuokite pirmuosius ... failams, o antrąjį ... - dir. Visų pirma:

 find -type f -exec chmod --changes 644 {} + -o -type d -exec chmod --changes 755 {} + 

Jei norite, kad jis veiktų tyliai, palikite mygtuką --changes .

6
31 дек. Atsakymas pateikiamas gruodžio 31 d. 2015-12-31 21:11 '16 at 21:11 2015-12-31 21:11

Https://help.directadmin.com/item.php?id=589 rašykite:

Jei jums reikia greito būdo atkurti „public_html“ duomenis apie 755 katalogus ir 644 failus, galite naudoti kažką panašaus:

 cd /home/user/domains/domain.com/public_html find . -type d -exec chmod 0755 {} \; find . -type f -exec chmod 0644 {} \; 

Aš patikrinau ir ... ji veikia!

0
31 янв. Atsakymą pateikė Christianas Michaelas sausio 31 d. 2019-01-31 17:07 '19, 17:07 val. 2019-01-31 17:07

Tai taip pat gali veikti:

 chmod -R 755 * // All files and folders to 755. chmod -R 644 *.* // All files will be 644. 
-7
01 июня '16 в 14:24 2016-06-01 14:24 atsakymą pateikė Puneet Tiwari birželio 1 d. 16, 14:24 2016-06-01 14:24

Kiti klausimai dėl žymių arba Užduoti klausimą