Määritä luku-/kirjoitusoikeus käyttäjälle tietyssä hakemistossa Linuxissa


Edellisessä artikkelissa näytimme, kuinka luoda jaettu hakemisto Linuxissa. Tässä kuvataan, miten annetaan luku-/kirjoitusoikeus käyttäjälle tietyssä Linux-hakemistossa.

Tätä varten on kaksi mahdollista tapaa: ensimmäinen on käyttäjäryhmien luominen tiedostojen käyttöoikeuksien hallitsemiseksi, kuten alla selitetään.

Tässä opetusohjelmassa käytämme seuraavia asetuksia.

Operating system: CentOS 7
Test directory: /shares/project1/reports 
Test user: tecmint
Filesystem type: Ext4

Varmista, että kaikki komennot suoritetaan pääkäyttäjinä, tai käytä sudo-komentoa vastaavilla oikeuksilla.

Aloitetaan luomalla hakemisto reports käyttämällä mkdir-komentoa:

# mkdir -p /shares/project1/reports   				

ACL: n käyttö luku-/kirjoitusoikeuden antamiseksi käyttäjälle hakemistossa

Tärkeää: Jos haluat käyttää tätä menetelmää, varmista, että Linux-tiedostojärjestelmäsi tyyppi (kuten Ext3 ja Ext4, NTFS, BTRFS) tukee ACL-luetteloita.

1. Tarkista ensin järjestelmän nykyinen tiedostojärjestelmätyyppi ja myös tukeeko ydin ACL: ää seuraavasti:

# df -T | awk '{print $1,$2,$NF}' | grep "^/dev"
# grep -i acl /boot/config*

Alla olevasta kuvakaappauksesta tiedostojärjestelmän tyyppi on Ext4 ja ydin tukee POSIX ACL: itä, kuten CONFIG_EXT4_FS_POSIX_ACL = y -vaihtoehto osoittaa.

2. Tarkista seuraavaksi, onko tiedostojärjestelmä (osio) asennettu ACL-vaihtoehdolla vai ei:

# tune2fs -l /dev/sda1 | grep acl

Edellä olevasta lähdöstä voimme nähdä, että oletusasennusvaihtoehdolla on jo tuki ACL: lle. Jos se ei ole käytössä, voit ottaa sen käyttöön tietylle osiolle (/ dev/sda3 tässä tapauksessa):

# mount -o remount,acl /
# tune2fs -o acl /dev/sda3

3. Nyt on aika määrittää luku-/kirjoitusoikeus käyttäjän tecmint -kohtaan tiettyyn hakemistoon nimeltä reports suorittamalla seuraavat komennot.

# 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

Yllä olevassa kuvakaappauksessa käyttäjällä tecmint on nyt hakemiston/share/project1/raporttien luku-/kirjoitusoikeudet (rw) toisen getfacl-komennon tuloksesta nähden.

Saat lisätietoja ACL-luetteloista tutustumalla seuraaviin oppaisiimme.

  1. Kuinka käyttää ACL: itä (kulunvalvontaluetteloita) käyttäjien/ryhmien levykiintiöiden määrittämiseen
  2. Kuinka käyttää ACL-luetteloita (kulunvalvontaluetteloita) verkko-osuuksien liittämiseen

Katsotaan nyt toista tapaa määrittää luku/kirjoitusoikeus hakemistoon.

Ryhmien käyttäminen luku-/kirjoitusoikeuksien antamiseen käyttäjille hakemistossa

1. Jos käyttäjällä on jo oletuskäyttäjäryhmä (tavallisesti sama nimi kuin käyttäjänimi), vaihda yksinkertaisesti hakemiston ryhmän omistaja.

# chgrp tecmint /shares/project1/reports

Vaihtoehtoisesti voit luoda uuden ryhmän useille käyttäjille (joille annetaan luku-/kirjoitusoikeudet tiettyyn hakemistoon) seuraavasti. Tämä kuitenkin luo jaetun hakemiston:

# groupadd projects

2. Lisää sitten käyttäjä tecmint ryhmään projektit seuraavasti:

# usermod -aG projects tecmint	    # add user to projects
# groups tecmint	            # check users groups

3. Vaihda hakemiston ryhmän omistaja projekteiksi:

# chgrp	projects /shares/project1/reports

4. Aseta ryhmän jäsenille luku-/kirjoitusoikeus:

# chmod -R 0760 /shares/projects/reports
# ls  -l /shares/projects/	    #check new permissions

Se siitä! Tässä opetusohjelmassa näytimme sinulle, kuinka voit antaa luku-/kirjoitusoikeuden käyttäjälle tietyssä Linux-hakemistossa. Jos sinulla on ongelmia, kysy alla olevan kommenttiosan kautta.