Tak, Mac ma wiele ulepszeń do Uniksa w obszarze plików. Ignorując cały problem związany z rozwidlaniem zasobów , który nie jest już często używany, istnieją:
- te standardowe uprawnienia Unix
ugo
rwx
i tak dalej. Obowiązują normalne narzędzia uniksowe.
- Listy ACL , widoczne
ls -le
i zmieniane za pomocą chmod [ -a | +a | =a ]
.
- flagi plików widoczne za pomocą
ls -lO
(Kapitał och, nie zero) i zmieniane za pomocą chflags
.
- rozszerzone atrybuty , widoczne za pomocą
ls -l@
(tylko klucze atrybutów) oraz widoczne i zmieniane za pomocą xattr
. (Skorzystaj xattr -h
z pomocy, jeśli man xattr
nic ci nie da.)
- Począwszy od systemu OS X 10.11 „El Capitan”, ochrona integralności systemu (SIP) dodatkowo chroni niektóre pliki przed zmianami ze zwykłych procesów, nawet podczas używania
sudo
jako root
. Pliki chronione przez SIP zostaną wyświetlone ls -lO
jako oznaczone restricted
flagą i / lub wymienione ls -l@
jako posiadające com.apple.rootless
atrybut.
Możesz odmówić operacji na pliku z powodu uprawnień uniksowych, list ACL, flag plików lub SIP. Aby w pełni odblokować plik:
sudo chmod -N file # Remove ACLs from file
sudo chmod ugo+rw file # Give everyone read-write permission to file
sudo chflags nouchg file # Clear the user immutable flag from file
sudo chflags norestricted file # Remove the SIP protection from file
sudo xattr -d com.apple.rootless file # Remove SIP protection from file
Jeśli Protection System Integrity (SIP) jest włączona, sudo chflags norestricted
a sudo xattr -d com.apple.rootless
także zwrócić "Operation not permitted" błąd. Aby usunąć flagę i / lub atrybutów trzeba uruchomić w MacOS Odzysk i albo uruchamiać polecenia z terminala (może być pierwszym użyciem Disk Utility, aby odblokować i zamontować dysk startowy, po czym pamiętać pliki będą pod /Volumes/Macintosh HD
lub niezależnie od bagażnika dysk ma nazwę) lub całkowicie wyłącz SIP, a następnie uruchom ponownie komputer, a następnie polecenia powinny działać. Należy jednak pamiętać, że przyszłe aktualizacje systemu operacyjnego prawdopodobnie przywrócą restricted
flagę i com.apple.rootless
przypiszą wszystkie pliki, z których je usunąłeś.
Wyłączenie SIP nie jest zalecane, ponieważ usuwa dużą ochronę przed złośliwym oprogramowaniem i przypadkowymi uszkodzeniami, a ponadto nie jest konieczne, gdy można po prostu usunąć ochronę dla poszczególnych plików. Jeśli wyłączysz SIP, włącz go ponownie po zakończeniu wprowadzania zmian.
Zauważ, że jeśli ls -lO
pokazuje, że schg
flaga jest ustawiona, musisz przejść do trybu jednego użytkownika, aby ją rozbroić. Nie zamierzam się tutaj zajmować, ponieważ istnieją większe pytania dotyczące tego, dlaczego plik ma ustawioną flagę i dlaczego próbujesz z tym popsuć i jakie będą tego konsekwencje.
sudo chgrp wheel ./entries
?