Odpowiedzi:
Greg wspomina attrib - ale attrib nigdzie nie jest blisko chmod- attribmoże ustawić atrybuty tylko do odczytu / ukryte pojedynczego pliku - nie zapewnia precyzyjnych kontroli, jak to icaclsrobi.
icaclsustawia / resetuje listy kontroli dostępu, dzięki czemu można przyznawać / odmawiać uprawnień dla poszczególnych identyfikatorów SID i grup. Jest to jednak dość skomplikowane.
Oto przykład, który zapisałem w mojej githubist ; resetuje listę własności i kontrolę dostępu do wszystkich plików w folderze i jest szczególnie przydatny do naprawy tych irytujących „Potrzebujesz uprawnień z ... do wykonania tej akcji”, szczególnie przy przenoszeniu plików z poprzedniej instalacji:
icacls * /reset /t /c /q
Resetuj zastępuje istniejącą domyślną listą.
/tdziała rekurencyjnie na wszystkie pliki, foldery i podfoldery
/q, nie wyświetla żadnych komunikatów o powodzeniu,
/ckontynuuje pozostanie plików nawet w przypadku wystąpienia błędu.
Możesz także wykonać kopię zapasową istniejących list ACL i zastosować je we wszystkich. Spójrz na ss64, który bardzo dobrze wyjaśnia różne opcje i przełączniki.
cmdktóry otrzymujesz po naciśnięciu [Win] + [R], nie ma ich. Na specjalne potrzeby mam skrót „Powłoka administratora” z zaznaczoną opcją „Wykonaj jako administrator” (lub podobny; korzystam z niemieckiego systemu Windows) (z ciemnoczerwonym kolorem tła).
(Niestety) nie może być dokładnym odpowiednikiem, ponieważ Linux i DOS / Windows używają atrybutów do różnych celów i (jak powiedział wcześniej Chathuranga) model bezpieczeństwa jest inny:
H) i „system” ( S), które nie mają odpowiednika w systemie Linux; tam pliki są ukryte, poprzedzając nazwę kropką ( .).Aatrybutu „archive” ( ) systemu Windows .xatrybutach plików DOS / Windows nie ma odpowiednika atrybutów Linux „wykonywalnego” ( ).D) atrybutu (ale to i tak nie można zmienić).Atrybut pliku DOS R(tylko do odczytu) to taki, który można uznać za równoważny: ten zestaw atrybutów jest mniej więcej podobny do watrybutu braku wszystkich; ale zezwolenie na zmianę tego atrybutu jest uzależnione od list ACL.
Fajnie byłoby mieć chmod/ chownodpowiednik w systemie Windows, być może napisany w jakimś języku skryptowym, który z kolei wywołuje attribi cacls(lub następców), ale ja go nie mam.
CAP_LINUX_IMMUTABLEproces), podczas gdy dostęp do zestawu atrybutów w systemie Windows to wszystko lub nic. Powszechnym błędem w implementacjach chmodsystemu Windows jest używanie tego polecenia do ustawiania atrybutu pliku tylko do odczytu. Niestety systemy są tak dobrze poinformowane, jak programiści, którzy je rozwijają.
chattrpoleceniu. Ale nie miałeś na myśli mnie, że „mylę atrybuty plików i uprawnienia”, prawda? AFAICS, każde słowo, które napisałem o atrybutach DOS jest nadal poprawne.
chattr, z wyjątkiem tego, że system Windows ma atrybut katalogu, ponieważ nie ma i-węzła.
chmodsystemie Windows nie ma bezpośredniego odpowiednika, ponieważ nie ma nic takiego jak atrybut „tryb” pliku. Standardowy zestaw atrybutów plików systemu Windows nie ma z tym nic wspólnego. Atrybut tylko do odczytu nie jest uprawnieniem do pliku. Mówi w zasadzie, że plik jest zapisany w kamieniu, więc wszelkie próby jego modyfikacji muszą zakończyć się niepowodzeniem. „Niezmienny” atrybut pliku systemu Linux jest podobny. System Windows używa list ACL tylko dla uprawnień, więc icacls.exe i tym podobne są jedynymi podobnymi poleceniami na temat uprawnień.
icacls "C:\folder" /grant:r "Domain\Users":(OI)(CI)M /T /C
Działa jak urok, aby zmienić uprawnienia do folderu dla użytkowników domeny. Dodatkowe informacje dotyczące caclsi icacls.
attribKomenda jest najbliższy mecz na bardzo podstawowe rzeczy (tylko do odczytu, archiwizacji flag). Następnie jest polecenie ACL (lista kontroli dostępu) cacls. Last but not least, ponieważ system Windows jest w rzeczywistości zgodny z Posixem, istnieją flagi uniksopodobne. Jeśli zainstalujesz zestaw narzędzi Cygwin, otrzymasz chmod. (Trochę nie na temat, ponieważ szukasz odpowiednika polecenia uniksowego, pobranie i zainstalowanie Cgygwin może być dla Ciebie interesujące).
Korzystam z polecenia systemu Windows, takeown.exeaby zmienić uprawnienia do pliku na mój bieżący zalogowany identyfikator użytkownika: http://technet.microsoft.com/en-us/library/cc753024.aspx
W systemie Windows nic nie nazywa się chmod, ponieważ model bezpieczeństwa systemu Windows jest inny niż Linux. Możesz użyć attribpolecenia, aby zmienić właściwości obiektów. (Ale są bardziej w kierunku globalnych właściwości).
Dla mnie obejściem tego problemu jest zainstalowanie Cygwin i dodanie jego folderu bin do ścieżki systemowej. Następnie, jeśli uruchomisz „chmod” w wierszu poleceń, zadziała. Chociaż nie zweryfikowałem jego poprawności.
Jeśli masz do czynienia z czymś podobnym do CHMOD (który jest tylko poleceniem UNIX / Linux, użyj, aby zmienić uprawnienia do pliku), musisz kliknąć prawym przyciskiem myszy plik lub folder, a następnie przejść do właściwości, a następnie w papierach wartościowych.
Stamtąd możesz zmienić uprawnienia do folderu lub pliku, jeśli zalogowałeś się jako administrator.
Istnieją trzy rodzaje uprawnień (odczyt, zapis i wykonywanie) W systemie Linux lub UNIX widać symbol jak r dla odczytu, w dla zapisu i x dla wykonania, ale w oknach widać całe słowo.
Możesz także przypisać własność pliku innemu.