Írási/olvasási hozzáférés hozzárendelése egy felhasználóhoz egy adott Linux könyvtárban
Egy korábbi cikkünkben megmutattuk, hogyan hozhat létre megosztott könyvtárat Linuxon. Itt leírjuk, hogyan adhatunk írási/olvasási hozzáférést egy felhasználónak egy adott Linux könyvtárban.
Ennek két lehetséges módja van: az első az ACL-ek (Hozzáférés-vezérlési listák) használata, a második pedig a felhasználói csoportok létrehozása a fájljogosultságok kezeléséhez, az alábbiak szerint.
Ennek az oktatóanyagnak a céljára a következő beállítást fogjuk használni.
Operating system: CentOS 7
Test directory: /shares/project1/reports
Test user: tecmint
Filesystem type: Ext4
Győződjön meg arról, hogy az összes parancsot root felhasználóként hajtja végre, vagy használja a sudo parancsot egyenértékű jogosultságokkal.
Kezdjük azzal, hogy az mkdir paranccsal létrehozzuk a reports
nevű könyvtárat:
mkdir -p /shares/project1/reports
Az ACL használata olvasási/írási hozzáférés biztosítására a címtárban lévő felhasználónak
Fontos: A módszer használatához győződjön meg arról, hogy a Linux fájlrendszer típusa (például Ext3 és Ext4, NTFS, BTRFS) támogatja az ACL-eket.
1. Először ellenőrizze az aktuális fájlrendszer típusát a rendszeren, és azt is, hogy a kernel támogatja-e az ACL-t az alábbiak szerint:
df -T | awk '{print $1,$2,$NF}' | grep "^/dev"
grep -i acl /boot/config*
Az alábbi képernyőképen a fájlrendszer típusa Ext4, és a kernel támogatja a POSIX ACL-eket, amint azt a CONFIG_EXT4_FS_POSIX_ACL=y opció jelzi.
2. Ezután ellenőrizze, hogy a fájlrendszer (partíció) fel van-e csatolva az ACL opcióval vagy sem:
tune2fs -l /dev/sda1 | grep acl
A fenti kimenetből láthatjuk, hogy az alapértelmezett csatlakoztatási lehetőség már támogatja az ACL-t. Ha nincs engedélyezve, akkor engedélyezheti az adott partícióhoz (ebben az esetben /dev/sda3):
mount -o remount,acl /
tune2fs -o acl /dev/sda3
3. Itt az ideje, hogy olvasási/írási hozzáférést rendeljen a tecmint
felhasználóhoz egy adott, reports
nevű könyvtárhoz a következő parancsok futtatásával.
getfacl /shares/project1/reports # Check the default ACL settings for the directory
setfacl -m user:tecmint:rw /shares/project1/reports # Give rw access to user tecmint
getfacl /shares/project1/reports # Check new ACL settings for the directory
A fenti képernyőképen a tecmint
felhasználó immár olvasási/írási (rw) jogosultsággal rendelkezik a /shares/project1/reports könyvtárban, amint az a második kimenetéből látható. getfacl parancsot.
Az ACL-listákkal kapcsolatos további információkért tekintse meg alábbi útmutatóinkat.
- Az ACL-ek (Hozzáférés-vezérlési listák) használata a felhasználók/csoportok lemezkvótáinak beállításához
- Az ACL-ek (Hozzáférés-vezérlési listák) használata hálózati megosztások csatlakoztatásához
Most lássuk a második módszert az írási/olvasási hozzáférés hozzárendelésére egy könyvtárhoz.
Csoportok használata olvasási/írási hozzáférés biztosítására a címtár felhasználóinak
1. Ha a felhasználónak már van alapértelmezett felhasználói csoportja (általában ugyanazzal a névvel, mint a felhasználónévvel), egyszerűen módosítsa a címtár csoporttulajdonosát.
chgrp tecmint /shares/project1/reports
Alternatív megoldásként hozzon létre egy új csoportot több felhasználó számára (akik olvasási/írási engedélyt kapnak egy adott könyvtárban), az alábbiak szerint. Ez azonban létrehoz egy megosztott könyvtárat:
groupadd projects
2. Ezután adja hozzá a tecmint
felhasználót a projektek
csoporthoz az alábbiak szerint:
usermod -aG projects tecmint # add user to projects
groups tecmint # check users groups
3. Változtassa meg a címtár csoporttulajdonosát projektekre:
chgrp projects /shares/project1/reports
4. Most állítsa be az olvasási/írási hozzáférést a csoport tagjai számára:
chmod -R 0760 /shares/projects/reports
ls -l /shares/projects/ #check new permissions
Ez az! Ebben az oktatóanyagban megmutattuk, hogyan adhatunk írási/olvasási hozzáférést egy adott Linux könyvtárban lévő felhasználónak. Ha bármilyen probléma van, kérdezze meg az alábbi megjegyzés szakaszban.