GNU/Linux >> Znalost Linux >  >> Linux

chmod:změna oprávnění adresáře Operace není povolena

z úrovně nad adresářem :

chmod -R a+x *dir*

udělit všem uživatelům (a) oprávnění ke všem podadresářům a souborům (+x) nebo:

chmod -R a+X *dir*

udělit všem uživatelům oprávnění ke spuštění pouze pro všechny podadresáře (+X)


Protože jste pomocí chmod -R porušili strom adresářových oprávnění musíte je všechny opravit. Spusťte to z adresáře výše dir :

find dir -type d -exec chmod u=rwx,go=rx {} +
find dir \! -type d -exec chmod u=rw,go=r {} +

V případě, že vás to zajímá, potřebujete x oprávnění k přístupu do adresáře. Potřebujete rx abyste to mohli číst.

Pro uživatele s moderní (GNU) verzí chmod možná to všechno zvládnete v jednom kroku. Symbolicky se to rovná „všichni (skupina/ostatní) mají totéž co vlastník, ale odeberou skupině/ostatním oprávnění k zápisu“

chmod -R a=u,go-w dir

Linux
  1. Oprávnění pro Linux:Úvod do chmod

  2. Ssh a oprávnění k domovskému adresáři?

  3. Proč Find nepřijímá ‚-exec Cp {} Dir +‘?

  1. Rsync mění oprávnění k adresáři?

  2. umask:příkaz nenalezen

  3. chmod:příkaz nenalezen

  1. chmod:změna oprávnění 'my_script.sh':Operace není povolena

  2. bash:ulimit:velikost souboru jádra:nelze změnit limit:Operace není povolena

  3. net.c:577:sendmsg() se nezdařilo:Operace není povolena ve výstupu dig