Pasirinktinio „umask“ nustatymas „macOS“

Kiekvienas „Mac“ failas ir aplankas turi leidimų rinkinį. Kai kuriate naują failą ar aplanką, „umask“ nustato šiuos leidimus.

Šie papildomi veiksmai pirmiausia skirti sistemos administratoriams ir tiems, kurie yra susipažinę su komandine eilute. Būkite atsargūs, keisdami failų teises ir „umask“. Suklydę, galite sumažinti „Mac“ failų, aplankų ar programų saugumą arba neleisti veikti programoms.

Apie leidimus ir „umask“

Leidimai. Kiekvienas jūsų „Mac“ saugomas failas, aplankas ir programa turi leidimų nustatymus, numatančius, kurių naudotojų paskyros gali skaityti, rašyti arba paleisti failą, aplanką ar programą. Šiuos leidimus sudaro POSIX leidimai ir prieigos kontrolės sąrašai (ACL). Kad naudotojo POSIX leidimai būtų griežčiau arba švelniau ribojantys, galite koreguoti jų „umask“ reikšmę.

„Umask“. Trijų skaitmenų skaičius gali nurodyti failo POSIX leidimus. Galite pamatyti tokiu būdu pateiktus leidimus, kai juos peržiūrite programoje „Terminal“. Kiekvienas skaitmuo yra nuo 0 iki 7. Kai kuriate failą, „umask“ reikšmė atimama iš numatytosios vertės (paprastai 666 failams ir 777 aplankams), kad būtų galima nustatyti naujo failo ar aplanko leidimus. Pavyzdžiui, numatytoji „umask“ reikšmė 022 nustato 644 leidimus naujiems failams ir 755 naujiems aplankams. 

Galite nustatyti „umask“ keliose vietose – kiekviena vieta veikia skirtingas programas. Jei neteisingai nustatysite „umask“, galite netekti prieigos prie failų arba suteikti prieigą kitiems naudotojams. Jei reikia daugiau informacijos, žr. vadovo puslapio „chmod(1)“ dalį MODES (režimai).

„Umask“ naudotojų programoms

Prisijunkite kaip administratorius ir įveskite šią komandą programoje „Terminal“, pakeisdami nnn į „umask“ reikšmę, pavyzdžiui, 027 arba 002. Ši komanda nustato naudotojų „umask“ kiekvienoje atidarytoje programoje, įskaitant programas, kurias jie pasiekia iš komandinės eilutės, ir naujus failus, kuriuos sukuria tos programos. Įvedus šią komandą gali reikėti iš naujo paleisti „Mac“. 

sudo launchctl config user umask nnn

Jei terminalas atsako „Could not write configuration: No such file or directory“ (nepavyko parašyti konfigūracijos: tokio failo ar katalogo nėra), įsitikinkite, kad paleisties diske yra aplankas, esantis /private/var/db/com.apple.xpc.launchd/config. Jei nėra konfigūracijos aplanko, pabandykite dar kartą įvedę jo sukūrimo komandą:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

„Umask“ sistemos procesams

Prisijunkite kaip administratorius ir įveskite šią komandą programoje „Terminal“, pakeisdami nnn į „umask“ reikšmę, pavyzdžiui, 027 arba 002. Ši komanda nustato naudotojų „umask“ kiekvienam „daemon“, kurį jie vykdo sistemos kontekste. Tai primygtinai nerekomenduojama, nes taip galima pakeisti sistemos naudojamų failų teises. Per daug ribojantys leidimai gali neleisti programinei įrangai veikti, o per atviri leidimai gali sukelti saugos problemų. Įvedus šią komandą gali reikėti iš naujo paleisti „Mac“.

sudo launchctl config system umask nnn

Jei terminalas atsako „Could not write configuration: No such file or directory“ (nepavyko parašyti konfigūracijos: tokio failo ar katalogo nėra), įsitikinkite, kad paleisties diske yra aplankas, esantis /private/var/db/com.apple.xpc.launchd/config. Jei nėra konfigūracijos aplanko, pabandykite dar kartą įvedę jo sukūrimo komandą:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Sužinokite daugiau

Norėdami gauti daugiau informacijos apie tai, kaip nustatyti „umask“, programoje „Terminal“ įveskite „man launchctl“.

Publikavimo data: