Mám složku udp_folder2
d------r-T 41 root root 4096 Apr 26 21:17 udp_folder2
když jsem s jiným uživatelem než root
, nemohu „t cp -r
to do nové složky říká: Permission denied
proč? a jak jej mohu zkopírovat s jiným uživatelem než root
Odpovědět
Bylo by to proto, že způsob, jakým jsou nastavena vaše aktuální oprávnění, nikdo nemůže přesunout tento soubor. (Jiné než root, protože root nedodržuje stejná pravidla.)
Budete muset buď změnit vlastníka souboru (chown), NEBO přidat dalšího uživatele do skupiny „root“ a chmod to, aby skupina mohla pracovat v adresáři, NEBO umožnit všem ostatním soubor spustit.
Takže rychlá oprava by byla:
chmod -R o+rwx udp_folder2
To dá každému možnost číst, zapisovat a spouštět v tomto adresáři.
Také … pokud se pokoušíte zkopírovat soubor „udp_folder2“ do stejného adresáře, ve kterém je nyní umístěn , budete také potřebovat oprávnění „w“ v tomto adresáři. Například:
/ foo / udp_folder2 – pro zkopírování tohoto adresáře do / foo budete potřebovat „w“ na / foo p>
Navrhuji naučit se oprávnění linuxových souborů: Výukový program pro povolení souborů Linux
Komentáře
Odpovědět
Adresář nemá oprávnění x
, takže ostatní (tj. v tomto případě libovolný uživatel) mohou adresář použít k přístupu k souborům uvnitř. T
znamená, že je lepkavý (smazat jej může pouze vlastník souboru). S x
oprávněním i lepivým bitem byste viděli malá t
; velká písmena T
říkají „žádné přístupové oprávnění, ale lepkavý bit, což je zvláštní kombinace“.
Přečtěte si o souborových / adresářových oprávněních Unixu. Není to příliš těžké a budete to potřebovat.
Odpovědět
Nemáte “ Nechci dát každému rwx
do adresáře, protože vytvoříte bezpečnostní riziko. A nechtěli byste -R
chmod protože to by zapisovalo změny rekurzivně.
Stačí chmod 755 "filename"
a vy jste dobří.
Tady je rozpis čísel:
- Číst = 4
- Psát = 2
- Spustit = 1
Pak máte 3 skupiny:
- Vlastník.
- Ti, kteří patří do skupiny.
- Všichni ostatní.
Takže pokud chci dát vlastníkovi rwx
, těm, kteří patří do skupiny rw
a všem ostatním rw
stačí přidat oprávnění: rwx
= 7, protože r
+ w
+ x
je 4 + 2 + 1 a rw
= 6, protože r
+ w
= 4 + 2.
Komentáře
- Proto můj výraz ' Rychlá oprava by tedy byla ' a já mu pošlu odkaz, kde se dozvíte více o oprávněních. Nezmínil ' obavy o bezpečnost ani nic podobného. Jen uvedl, že chce zkopírovat adresář.
- Také ' budeme potřebovat ' w ' oprávnění k adresáři, do kterého se ' pokouší zkopírovat.
- Don ' Nenávidím Tillmana.
Odpovědět
Zkopírovat složku, kam majitel ne“ Nemáte k tomu oprávnění, můžete tato oprávnění změnit.
Je-li složka omezena i pro vlastníka, existuje pro to nějaký důvod a udělit oprávnění všem ostatním (o
) není dobré řešení ( jak je uvedeno v první odpovědi).
Aby měl vlastník přístup ke složce, musí mít read (r
) a vykonávat / hledat bity (X
) set. Pokud ve složkách máte složky, měla by se každá řídit stejnými pravidly. U souborů stačí pouze bit pro čtení (r
).
Takže v zásadě, abyste složce udělali oprávnění ke čtení rekurzivně, musíte spustit:
chmod -vR u+rX folder/
Pokud jako uživatel běžíte nad příkazem, přidejte předponu sudo
(pokud máte oprávnění superuživatele), jinak spustit jako root.
Pokud některé soubory ve složce nejsou vlastněny rootem, změňte to rekurzivně pomocí:
sudo chown -vR root folder/
Potom zkopírujte jej jako obvykle nebo použijte rsync
následujícím způsobem:
rsync -vuar src/ dst/
Další vysvětlení výše uvedených příkazů naleznete na: man chmod
a man chown
.
r
oprávnění, samozřejmě existujer
oprávnění pro jiného uživatele, vidíte, tam i sar
d------r-T
r
je pro jiného uživateleT
je od ruky.