Umask Linux Pro
Tartalomjegyzék:
Linux és Unix operációs rendszereken az összes új fájlt alapértelmezett engedélykészlettel hozzák létre. Az
umask
segédprogram lehetővé teszi a fájlmód létrehozási maszk megtekintését vagy beállítását, amely meghatározza az újonnan létrehozott fájlok vagy könyvtárak engedélyezési biteit.
Az mkdir, touch, tee és más parancsok használják, amelyek új fájlokat és könyvtárakat hoznak létre.
Linux engedélyek
Mielőtt továbbmennénk, röviden ismertesse a Linux engedélyek modelljét.
Linuxban minden fájl társítva van egy tulajdonoshoz és egy csoporthoz, és engedély hozzáférési jogokkal rendelkezik három különböző felhasználói osztályra:
- a fájltulajdonos. a csoport tagjai.mások.
Három engedélytípus vonatkozik minden osztályra:
- az olvasási engedély.az írásbeli engedély.a végrehajtási engedély.
Ez a koncepció lehetővé teszi annak meghatározását, hogy mely felhasználók használhatják a fájlt, olvassa el a fájlt vagy futtathatja azt.
A fájljogosultságok megtekintéséhez használja az
ls
parancsot:
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
Az első karakter azt a fájltípust jelöli, amely lehet szokásos fájl (
-
), könyvtár (
d
), szimbolikus link (
l
) vagy bármilyen más speciális fájltípus.
A következő kilenc karakter az engedélyeket képviseli, mindegyik három, három karakterből álló sorozatot. Az első halmaz a tulajdonos engedélyét mutatja, a második csoportos engedélyt, az utolsó halmaz pedig mindenki más engedélyét mutatja.
A
4
oktális értékű
r
karakter az olvasást jelenti,
w
az oktális érték
2
az íráshoz,
x
az oktálértékkel
1
az engedély végrehajtásához és (
-
)
0
oktálértékkel, ha nincs engedély.
Három további speciális fájljogosultságtípus létezik:
setuid
,
setgid
és
Sticky Bit
.
A fenti példában (
rwxr-xr-x
) azt jelenti, hogy a tulajdonos engedélyeket olvasott, írt és végrehajtott (
rwx
), a csoport és mások engedélyeket olvastak és hajtottak végre.
Ha a fájljogokat numerikus jelöléssel ábrázoljuk, akkor a
755
számot fogjuk elérni:
- Tulajdonos:
rwx=4+2+1 = 7Csoport:rx=4+0+1 = 5Egyéb:rx=4+0+1 = 5
Ha numerikus ábrázolásban szerepel, akkor az engedélyeknek három vagy négy oktális számjegy lehet (0-7). Az első számjegy a speciális engedélyeket jelöli, és ha kihagyják, akkor a fájlban nincs megadva különleges engedély. Esetünkben a
755
ugyanaz, mint a
0755
. Az első számjegy kombinációja lehet
4
a
setuid
, a
2
a
setgid
és az
1
a
Sticky Bit
.
A fájljogosultságok megváltoztathatók a
chmod
paranccsal és a tulajdonjoggal a
chown
paranccsal.
Az umask megértése
Alapértelmezés szerint Linux rendszereken az alapértelmezett létrehozási engedélyek
666
fájloknál, ami olvasási és írási engedélyt ad a felhasználónak, csoportnak és másoknak, és
777
könyvtáraknak, ami azt jelenti, hogy olvasási, írási és végrehajtási engedélyt adhat a felhasználó, csoport és mások. A Linux nem engedélyezi a fájl létrehozását végrehajtási engedélyekkel.
Az alapértelmezett létrehozási engedélyek az
umask
segédprogrammal módosíthatók.
umask
csak az aktuális héjkörnyezetet érinti. A legtöbb Linux disztribúciónál az alapértelmezett rendszerszintű umask értéket a
pam_umask.so
vagy az
/etc/profile
fájlban
pam_umask.so
be.
Az aktuális maszk értékének megtekintéséhez egyszerűen írja be az
umask
argumentum nélkül:
umask
A kimenet tartalmazza a
022
Az
umask
érték tartalmazza az engedély biteket, amelyeket NEM állíthat be az újonnan létrehozott fájlokon és könyvtárakon.
Mint már említettük, a fájlok alapértelmezett létrehozási engedélyei a
666
, a
777
könyvtárak. Az új fájlok engedélybiteinek kiszámításához vonjuk le az umask értéket az alapértelmezett értékből.
Például annak kiszámításához, hogy a
uname 022
hogyan befolyásolja az újonnan létrehozott fájlokat és könyvtárakat:
- Fájlok:
666 - 022 = 644. A tulajdonos el tudja olvasni és módosíthatja a fájlokat. A csoport és mások csak a fájlokat tudják olvasni.Direktóriumok:777 - 022 = 755A tulajdonos beírhatja a könyvtárat a CD-be, és felsorolhatja, megváltoztathatja, létrehozhatja vagy törölheti a könyvtárban található fájlokat. A Csoport és mások bekerülhetnek a könyvtárba, felsorolhatják és elolvashatják a fájlokat.
A maszk értékét szimbolikus ábrázolásban is megjelenítheti az
-S
opcióval:
umask -S
u=rwx, g=rx, o=rx
A numerikus jelöléssel ellentétben a szimbolikus jelölés értéke tartalmazza az engedély biteket, amelyeket az újonnan létrehozott fájlokon és könyvtárakon beállítunk.
A maszk értékének beállítása
A fájlkészítő maszk oktális vagy szimbolikus jelöléssel állítható be. A változtatások állandóvá tételéhez állítsa be az új
umask
értéket egy olyan globális konfigurációs fájlban, mint például az
/etc/profile
fájl, amely hatással lesz az összes felhasználóra, vagy a felhasználó shell konfigurációs fájljaiban, például
~/.profile
,
~/.bashrc
vagy
~/.zshrc
amelyek csak a felhasználót érinti. A felhasználói fájlok elsőbbséget élveznek a globális fájlokkal szemben.
Az
umask
érték módosítása előtt ellenőrizze, hogy az új érték nem jelent-e potenciális biztonsági kockázatot. A
022
nél kevésbé korlátozó értékeket nagyon óvatosan kell használni. Például az
umask 000
azt jelenti, hogy bárki elolvassa, írja és végrehajtja az új újonnan létrehozott fájlok engedélyét.
Tegyük fel, hogy szigorúbb engedélyeket akarunk beállítani az újonnan létrehozott fájlok és könyvtárak számára, hogy mások ne tudják a
cd
t a könyvtárakba beolvasni és a fájlokat olvasni. A kívánt engedélyek: könyvtárakhoz
750
, fájlokhoz pedig
640
.
Az
umask
érték kiszámításához egyszerűen vonja le a kívánt engedélyeket az alapértelmezettől:
Umask-érték:
777-750 = 027
A numerikus ábrázolásban ábrázolt kívánt
umask
érték
027
.
Az új érték egész rendszerre történő végleges beállításához nyissa meg az
/etc/profile
fájlt a szövegszerkesztővel:
sudo nano /etc/profile
és módosítsa vagy adja hozzá a következő sort a fájl elejére:
/ Etc / profile
umask 027
A módosítások érvénybe lépéséhez futtassa a következő
source
vagy kijelentkezést, és jelentkezzen be:
source /etc/profile
Az új beállítások ellenőrzéséhez létrehozunk egy új fájlt és könyvtárat az
mkdir
használatával és
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
A fájlkészítő maszk beállításának másik módja a szimbolikus jelölés használata. Például
umask u=rwx, g=rx, o=
megegyezik az
umask 027
.
Következtetés
Ebben az útmutatóban elmagyaráztuk a Linux engedélyeket és az
umask
parancs használatát az újonnan létrehozott fájlok vagy könyvtárak engedélyezési
umask
beállításához.
További információ: írja be az
man umask
terminálját.
Chmod parancs a linuxban (fájljogosultságok)
Linux alatt a fájlokhoz való hozzáférést a fájljogosultságokon, attribútumokon és tulajdonjogon keresztül kezelik. Ez az oktatóanyag ismerteti, hogyan lehet a chmod parancsot használni a fájlok és könyvtárak hozzáférési engedélyeinek megváltoztatásához.
Chgrp parancs a linuxban (csoport módosítása)
Linuxban minden fájl társítva van egy tulajdonoshoz és egy csoporthoz, és rendelkezik olyan engedélyekkel, amelyek meghatározzák, hogy mely felhasználók olvashatják, írhatják vagy végrehajthatják a fájlt. A chgrpc parancs megváltoztatja az adott fájlok csoporttulajdonát.
Cp parancs a linuxban (fájlok másolása)
A cp parancssori segédprogram a fájlok és könyvtárak másolására Unix és Linux rendszereken.







