Android

Utos ng umask sa linux

Umask Linux Pro

Umask Linux Pro

Talaan ng mga Nilalaman:

Anonim

Sa mga operating system ng Linux at Unix, ang lahat ng mga bagong file ay nilikha gamit ang isang default na hanay ng mga pahintulot. Pinapayagan ka ng umask na tingnan mo o upang itakda ang mask ng paglikha ng file mode, na tinutukoy ang mga pahintulot ng mga bits para sa mga bagong nilikha na file o direktoryo.

Ginagamit ito ng mkdir, touch, katangan at iba pang mga utos na lumikha ng mga bagong file at direktoryo.

Mga Pahintulot sa Linux

Bago magtuloy pa, ipaliwanag natin sa maikling sandali ang modelo ng pahintulot ng Linux.

Sa Linux, ang bawat file ay nauugnay sa isang may-ari at isang pangkat at itinalaga na may karapatan sa pag-access ng pahintulot para sa tatlong magkakaibang klase ng mga gumagamit:

  • ang may-ari ng file.the members members.every else.

Mayroong tatlong mga uri ng pahintulot na nalalapat sa bawat klase:

  • ang binasang pahintulot.the sumulat ng pahintulot.the magpatupad ng pahintulot.

Pinapayagan ka ng konseptong ito na tukuyin kung aling mga gumagamit ang pinapayagan na basahin ang file, sumulat sa file, o isagawa ang file.

Upang makita ang mga pahintulot ng file, gamitin ang utos ng ls :

ls -l dirname

drwxr-xr-x 12 linuxize users 4.0K Apr 8 20:51 dirname | | | | | | | | | | | | +-----------> Group | | | | +-------------------> Owner | | | +----------------------------> Others Permissions | | +-------------------------------> Group Permissions | +----------------------------------> Owner Permissions +------------------------------------> File Type

Ang unang character ay kumakatawan sa uri ng file na maaaring regular na file ( - ), direktoryo ( d ), simbolikong link ( l ) o anumang iba pang espesyal na uri ng file.

Ang susunod na siyam na karakter ay kumakatawan sa mga pahintulot, tatlong hanay ng tatlong character bawat isa. Ipinapakita ng mga unang set ang mga pahintulot ng may-ari, ang pangalawang isang pahintulot ng pangkat, at ang huling hanay ay nagpapakita ng mga pahintulot sa lahat.

Ang character r may isang halaga ng octal na 4 ay binabasa para sa mabasa, w may isang halaga ng octal na 2 para sa pagsulat, x may isang oktiko na halaga ng 1 para sa pagpapatupad ng pahintulot at ( - ) na may octal na halaga ng 0 para sa walang pahintulot.

Mayroon ding tatlong iba pang mga espesyal na uri ng pahintulot ng file: setuid , setgid at Sticky Bit .

Sa halimbawa sa itaas ( rwxr-xr-x ) ay nangangahulugan na ang may-ari ay nagbasa, sumulat at nagsagawa ng mga pahintulot ( rwx ), binasa at rwxr-xr-x ng grupo at iba pa.

Kung kinatawan namin ang mga pahintulot ng file gamit ang isang notipikasyong numero ay darating kami sa bilang na 755 :

  • May-ari: rwx = 4+2+1 = 7 Pangkat: rx = 4+0+1 = 5 Iba pa: rx = 4+0+1 = 5

Kung kinakatawan sa numerong notasyon, ang mga pahintulot ay maaaring magkaroon ng tatlo o apat na mga octal na numero (0-7). Ang unang numero ay kumakatawan sa mga espesyal na pahintulot kung kung hindi ito tinanggal ay nangangahulugan ito na walang mga espesyal na pahintulot na nakatakda sa file. Sa aming kaso 755 ay pareho sa 0755 . Ang unang numero ay maaaring isang kumbinasyon ng 4 para sa setuid , 2 para sa setgid at 1 para sa Sticky Bit .

Ang mga pahintulot ng file ay maaaring mabago gamit ang chmod command at pagmamay-ari gamit ang chown command.

Pag-unawa sa gawain

Bilang default, sa mga system ng Linux, ang mga default na pahintulot sa paglikha ay 666 para sa mga file, na nagbibigay ng basahin at pagsulat ng pahintulot sa gumagamit, grupo, at iba pa, at sa 777 para sa mga direktoryo, na nangangahulugang magbasa, magsulat at magsagawa ng pahintulot sa gumagamit, grupo, at iba pa. Hindi pinapayagan ng Linux ang isang file na nilikha gamit ang mga pahintulot.

Ang default na mga pahintulot sa paglikha ay maaaring mabago gamit ang utility ng umask .

umask nakakaapekto lamang sa kasalukuyang kapaligiran sa shell. Sa karamihan ng mga pamamahagi ng Linux ang default na halaga ng halaga ng umask ay nakalagay sa pam_umask.so o /etc/profile file.

Upang matingnan ang kasalukuyang halaga ng maskara, i-type lamang ang umask walang anumang mga argumento:

umask

Ang output ay isasama ang

022

Ang halaga ng umask naglalaman ng mga bits ng pahintulot na HINDI mai-set sa mga bagong nilikha file at direktoryo.

Tulad ng nabanggit na natin, ang mga default na pahintulot sa paglikha para sa mga file ay 666 at para sa mga direktoryo 777 . Upang makalkula ang mga pahintulot na mga piraso ng bagong mga file ibawas ang halaga ng umask mula sa default na halaga.

Halimbawa, upang makalkula kung paano makakaapekto ang hindi uname 022 bagong nilikha na file at direktoryo, gamitin:

  • Mga file: 666 - 022 = 644 . Maaaring basahin at baguhin ng may-ari ang mga file. Maaari lamang basahin ng grupo at iba pa ang mga file.Directories: 777 - 022 = 755 .Ang may-ari ay maaaring cd sa direktoryo at magbasa ng listahan, magbago, lumikha o magtanggal ng mga file sa direktoryo. Ang grupo at iba pa ay maaaring mag- cd sa direktoryo at maglista at magbasa ng mga file.

Maaari mo ring ipakita ang halaga ng maskara sa simbolikong notasyon gamit ang pagpipilian na -S :

umask -S

u=rwx, g=rx, o=rx

Hindi tulad ng numerong notasyon, ang simbolikong halaga ng notasyon ay naglalaman ng mga pahintulot na mga piraso na itatakda sa mga bagong nilikha na file at direktoryo.

Pagtatakda ng halaga ng maskara

Ang mask ng paglikha ng file ay maaaring itakda gamit ang octal o simbolikong notasyon. Upang gawing permanenteng ang mga pagbabago ay nagtakda ng bagong halaga ng umask sa isang global na file ng pagsasaayos tulad ng /etc/profile file na makakaapekto sa lahat ng mga gumagamit o sa mga file ng pagsasaayos ng shell ng isang gumagamit tulad ng ~/.profile , ~/.bashrc o ~/.zshrc na makakaapekto lamang sa gumagamit. Ang mga file ng gumagamit ay nauna sa pandaigdigang mga file.

Bago gumawa ng mga pagbabago sa halaga ng umask siguraduhin na ang bagong halaga ay hindi magpose ng isang potensyal na peligro sa seguridad. Ang mga halaga na mas mahigpit kaysa sa 022 ay dapat gamitin nang may malaking pag-iingat. Halimbawa ang umask 000 nangangahulugang ang sinumang magbasa, magsulat, at magsagawa ng pahintulot para sa lahat ng mga bagong nilikha na file.

Sabihin nating nais na magtakda ng higit pang mga paghihigpit na pahintulot para sa mga bagong nilikha file at direktoryo upang ang iba ay hindi makapag- cd sa mga direktoryo at basahin ang mga file. Ang mga pahintulot na nais namin ay 750 para sa mga direktoryo at 640 para sa mga file.

Upang makalkula ang halaga ng umask ibawas lamang ang nais na mga pahintulot mula sa default na:

Halaga ng 777-750 = 027 : 777-750 = 027

Ang ninanais na halaga ng umask kinakatawan sa numerikong notasyon ay 027 .

Upang permanenteng itakda ang bagong halaga ng system na malawak na buksan ang /etc/profile file ng /etc/profile ang iyong text editor:

sudo nano /etc/profile

at baguhin o idagdag ang sumusunod na linya sa simula ng file:

/ etc / profile

umask 027

Para sa mga pagbabago na magpapatakbo patakbuhin ang sumusunod na source utos o pag-logout at mag-log in:

source /etc/profile

Upang mapatunayan ang mga bagong setting ay gagawa kami ng isang bagong file at direktoryo gamit ang mkdir at touch :

mkdir newdir touch newfile

drwxr-x--- 2 linuxize users 4096 Jul 4 18:14 newdir -rw-r----- 1 linuxize users 0 Jul 4 18:14 newfile

Ang isa pang paraan upang itakda ang mask ng paglikha ng file ay sa pamamagitan ng paggamit ng simbolikong notasyon. Halimbawa ang umask u=rwx, g=rx, o= ay katulad ng umask 027 .

Konklusyon

Sa gabay na ito, ipinaliwanag namin ang mga pahintulot sa Linux at kung paano gamitin ang utos ng umask upang maitakda ang mga pahintulot ng mga bits para sa mga bagong nilikha na file o direktoryo.

Para sa higit pang impormasyon uri ng man umask sa iyong terminal.

terminal ng umask