Portál AbcLinuxu, 2. května 2025 05:44
Ukážeme si dva nejčastější případy, které se řeší.
Je to asi rok, co jsem viděl krásný bordel, který upravil externí hdd. Všechny adresáře skryl, nastavil je jako systémový a místo nich vytvořil zástupce, které volaly jednak explorer a browse skryté složky, ale hlavně v mezikroku ten červík pomocí onoho zástupce spouštěl sám sebe a tak si zajišťoval šíření a kontrolu nad PC, kde se disk nacházel.
V takovém případě stačilo projet disk na linuxu, smazat červíka, smazat odkazy, ale již byl problém (i v samotných windows) zrušit skrytí složek. Je to jeden z těch případů, kdy Windows klikátka nestačí (adresář nedostane jen příznak skrytý, ale i příznak systémový, čímž dojde k zašednutí atributů ve vlastnostech souboru - tzn., nejde odškrtnout, aby adresář již nebyl skrytý), což uživatel netuší. V takovém případě nastupuje cmd. Tento konkrétní problém se řeší pomocí utilitky "attrib", konkrétně pak takto :
# odstraň read-only, system, hide ze složky : attrib -r -s -h "G:\Skyrta_slozka" /D # více viz : attrib /?
Zmíněný příkaz samozřejmě spouštíme nejlépe v cmd, které je spuštěno jako administrátor.
Může k tomu dojít různými způsoby. Práva na složku může odstranit/změnit nějaký červ/vir/bordel, nebo i špatný zásah administrátora, popř. nevhodně nastavenými oprávněními, kdy uživateli dáme práva pro jejich změnu. Jak se pak má řešit problém, kdy ani administrátor nemá oprávnění pro úpravu oprávnění?
Jednoduše se to řeší tak, že se přebere vlastník složky, na což má administrátor práva. Tzn., vlastnosti složky -> zabezečení -> Upřesnit -> Vlastník -> a zde nahradíme vlastníka administrátorem.
Dalším možným způsobem je to kombinovat s vypínáním / zapínáním dědění práv od nadřazených složek apod.
Toto řešení funguje, ale problémem je, že je sakra pomalé a vyřeší se tím problém jen na konkrétní složce, nikoli podsložkách, souborech v onom adresáři atd. Když má tedy člověk tento problém na nějaké složce, kde má stovky souborů a podadresářů, je téměř nereálně časově náročné to všechno překlikat. Řešení? Opět cmd. Nedjříve si však pomocí výše popsaného klikacího způsobu opravíme oprávnění na hlavní složce, např. "D:\share\data\" (nastavíme oprávnění pro vhodnou skupinu, uživatele atd.). Až toto budeme mít, tak si spustíme cmd jako správce a šup na opravu :
# hromadně přebereme jako administrátor vlastníka na sebe : takeown /F "D:\share\data\*" /R /A # vrátíme oprávnení do výchozího stavu (dědíme od složky "data"): icacls D:\share\data\* /reset /t /c /q # více viz : icacls /?
icacls samozřejmě umí i backup/restore acl.
Pro WinXP like zde máme "cacls".
NTFS neumí dědění práv jako takové, jednak pro změnu oprávnění na nadřazené složce klikátko projde všechny podsložky (změna práv na nějakém větším objemu dat trvá docela dlouho, stejně jako na linuchu), dále se člověk nemálokrát může setkat s tím, že podsložka má zapnuté dědění oprávnění, ale oprávnění má úplně jiná, než složka nadřazená). Windows má celkem funkční klikátko, které se o to umí postarat a umí hromadně změnit oprávnění na složkách, podsložkách atd. Ovšem i toto klikátko má občas nějaké menší problémy. Je tedy třeba vnímat dědění v rámci Windows (kdy to mají pekně ošefováno, nejen v rámci nastavování, ale i v rámci práce se soubory a adresáři, kdy člověk skutečně potřebuje dědění) vs. skutečná práva na ntfs.
S posledním zmíněným problém jsem se setkal i na Windows serveru 2012. Někdo si řekne, že zlatý chmod a chown (k nimž se ještě musí připočíst ACL). Osobně si myslím, že když zná člověk pár cmd, tak Windows nejsou v některých věcech tak nepohodlné, jak se zaujatě od nezasvěcených předpokládá.
Tiskni
Sdílej:
setfattr -n system.ntfs_attrib_be -v <hodnota> <file>
Může k tomu dojít různými způsoby. Práva na složku může odstranit/změnit nějaký červ/vir/bordel, nebo i špatný zásah administrátoraAlebo sa to posere samo, po random prépisaní nejakej bíkoviny, toto som neraz zažil keď som tento "system" ešte používal. Nedávno som sa účastnil rozhovoru ako pri čerstvej inštalácií sa pozerá na súbor a pritom sa nedá otvoriť, systém ho nenájde (ten win vyhladávač). Prieskumník ukazuje že má nejakú veľkosť. Hovorím mu, klikni na vlastnosti súboru a pozri si to tam. To mu ukázalo nulu. Tak mu hovorím stiahni si nejaký nástroj čo ti odstráni biele znaky zo súboru Win je na to háklivý. Po tom poučení som bol ignorovaný a debata čo sa tam strhla mi zdvihla žalúdok a musel som to ukončiť :)
attrib +s +h aaaPak si dej vlastnosti a zkus ten příznak "skrytý" zrušit.
Vždy, když čtu něco takového o právech v souborovém systému, ta se slzou v oku si vzpomenu na správu Novell Netware
NetwareProč, když něco dobrého bylo, se nikdo nepoučí? Že ano pamětníci. I když Netware zaniklo, mělo by se o jeho způsobu způsobu přidělování práv (i s GUI nadstavbou) vyučovat.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.