GNU/Linux >> Znalost Linux >  >> Linux

Proč chmod +w nedává oprávnění k zápisu ostatním (o)

Vaše konkrétní situace

Ve vaší konkrétní situaci můžeme odhadnout, že váš aktuální umask je 002 (toto je běžná výchozí hodnota) a to vysvětluje vaše překvapení.

V této konkrétní situaci, kdy umask hodnota je 002 (všechna čísla osmičková).

  • +r znamená ugo+r protože 002 & 444 je 000 , který umožňuje nastavit všechny bity
  • +x znamená ugo+x protože 002 & 111 je 000 , který umožňuje nastavit všechny bity
  • ale +w znamená ug+w protože 002 & 222 je 002 , což brání nastavení bitu "o".

Další příklady

  • S umask 022 +w by znamenalo u+w .
  • S umask 007 +rwx by znamenalo ug+rwx .
  • S umask 077 +rwx by znamenalo u+rwx .

Co by odpovídalo vašim očekáváním

Když změníte umask na 000 , provedením

umask 000

ve vašem terminálu a poté

chmod +w file

nastaví oprávnění na ugo+w.

Poznámka

Jak navrhuje ilkkachu, všimněte si, že umask 000 neznamená, že každý může číst a zapisovat všechny vaše soubory.

Ale umask 000 znamená každý, kdo má nějaký přístup k jakémukoli uživatelský účet na vašem počítači (který může zahrnovat programy běžící na serverových službách ofc) může číst a zapisovat všechny soubory, které vytvoříte s touto maskou aktivní a nemění se (pokud to také umožňuje řetězec adresářů obsahujících až kořenový adresář).


S:

chmod +<perms>

perm jsou přidány k uživateli , skupina a jiné ale stále platí umask. Zajišťuje, že souboru není uděleno více oprávnění než nově vytvořenému souboru.

Pokud chcete přidat perm uživateli , skupiny a jiné bez ohledu na umask použijte

chmod a+<perms>

což je zkratka pro

chmod ugo+<perms>

Linux
  1. Proč potřebuje uživatel root oprávnění sudo?

  2. Linux – Proč Setuid nefunguje?

  3. Linux – Proč Locale Es_mx funguje, ale Es ne?

  1. Proč Mv(1) kopíruje objekty, pokud je odepřeno povolení k pohybu?

  2. Proč „ukončit &“ nefunguje?

  3. Linux – Proč Rsync na Linuxu nezachovává všechna časová razítka (čas vytvoření)?

  1. Proč Tomcat pracuje s portem 8080, ale ne s 80?

  2. Proč kontejner dockeru zobrazí výzvu Permission denied?

  3. Proč yum updateinfo nezobrazuje všechny aktualizace?