Umask Linux Pro
Innehållsförteckning:
På operativsystem Linux och Unix skapas alla nya filer med en standarduppsättning behörigheter. Med
umask
verktyget kan du visa eller ställa in skapningsmask för filläge, som bestämmer behörighetsbitar för nyskapade filer eller kataloger.
Det används av mkdir, touch, tee och andra kommandon som skapar nya filer och kataloger.
Linux-behörigheter
Innan vi går vidare, låt oss kort förklara Linux-behörighetsmodellen.
I Linux är varje fil associerad med en ägare och en grupp och tilldelas behörighetsbehörighet för tre olika klasser av användare:
- filägaren. gruppmedlemmarna. alla andra.
Det finns tre behörighetstyper som gäller för varje klass:
- lästillståndet. skrivtillståndet. utföra tillståndet.
Med detta koncept kan du ange vilka användare som får läsa filen, skriva till filen eller köra filen.
För att se filbehörigheterna använder du kommandot
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
Det första tecknet representerar filtypen som kan vara vanlig fil (
-
), katalog (
d
), symbolisk länk (
l
) eller någon annan speciell filtyp.
De nästa nio tecknen representerar behörigheterna, tre uppsättningar med tre tecken vardera. De första uppsättningarna visar ägarbehörigheter, den andra gruppbehörigheterna, och den sista uppsättningen visar alla andra behörigheter.
Tecken
r
med ett oktalt värde på
4
står för läsning,
w
med ett oktalt värde på
2
för skrivning,
x
med ett oktalt värde på
1
för exekvering av tillstånd och (
-
) med oktalt värde på
0
för inga behörigheter.
Det finns också tre andra speciella
setuid
:
setuid
,
setgid
och
Sticky Bit
.
I exemplet ovan (
rwxr-xr-x
) betyder att ägaren har läst, skrivit och genomfört behörigheter (
rwx
), gruppen och andra har läst och genomfört behörigheter.
Om vi representerar filtillståndet med en numerisk notation kommer vi upp till numret
755
:
- Ägare:
rwx=4+2+1 = 7Grupp:rx=4+0+1 = 5Övrigt:rx=4+0+1 = 5
När de representeras i numerisk notation kan behörigheterna ha tre eller fyra oktala siffror (0-7). Den första siffran representerar de speciella behörigheterna och om den utelämnas betyder det att inga specialbehörigheter är inställda på filen. I vårt fall är
755
samma sak som
0755
. Den första siffran kan vara en kombination av
4
för
setuid
,
2
för
setgid
och
1
för
Sticky Bit
.
Filbehörigheter kan ändras med
chmod
kommandot och ägandet med hjälp av
chown
kommandot.
Förstå umask
Som standard på Linux-system är standardtillståndet
666
för filer, vilket ger läs- och skrivtillstånd för användare, grupp och andra, och
777
för kataloger, vilket innebär att läsa, skriva och utföra behörighet till användare, grupp och andra. Linux tillåter inte att en fil skapas med exekverande behörigheter.
Standardrättigheterna för skapande kan ändras med hjälp av
umask
verktyget.
umask
påverkar endast den nuvarande skalmiljön. På de flesta Linux-distributioner ställs standardsystemets hela umaskvärde in i
pam_umask.so
eller
/etc/profile
filen.
Om du
umask
se det aktuella
umask
skriver du bara
umask
utan några argument:
umask
Utgången kommer att inkludera
022
umask
innehåller behörighetsbitarna som INTE kommer att ställas in på de nyligen skapade filerna och katalogerna.
Som vi redan har nämnt är standardrättigheterna för filer
666
och för kataloger
777
. För att beräkna behörighetsbitarna för de nya filerna subtraheras umaskvärdet från standardvärdet.
För att beräkna hur
uname 022
kommer att påverka nyskapade filer och kataloger använder du till exempel:
- Filer:
666 - 022 = 644. Ägaren kan läsa och ändra filerna. Group och andra kan bara läsa filerna.Kataloger:777 - 022 = 755755. Ägaren kan cd in i katalogen och lista läsa, ändra, skapa eller ta bort filerna i katalogen. Grupp och andra kancdin i katalogen och lista och läsa filerna.
Du kan också visa maskvärdet i symbolisk notation med alternativet
-S
:
umask -S
u=rwx, g=rx, o=rx
Till skillnad från den numeriska notationen innehåller det symboliska notationsvärdet behörighetsbitar som kommer att ställas in på de nyligen skapade filerna och katalogerna.
Ställa in maskvärdet
Filskapningsmasken kan ställas in med oktal eller symbolisk notation. För att göra ändringarna permanent ställer du in det nya
umask
i en global konfigurationsfil som
/etc/profile
som kommer att påverka alla användare eller i en användares
~/.profile
som
~/.profile
,
~/.bashrc
eller
~/.zshrc
som kommer endast att påverka användaren. Användarfilerna har företräde framför de globala filerna.
Innan du gör ändringar i
umask
, se till att det nya värdet inte utgör en potentiell säkerhetsrisk. Värden som är mindre restriktiva än
022
bör användas med stor försiktighet. Till exempel betyder
umask 000
att vem som helst har läst, skrivit och kört tillstånd för alla nyskapade filer.
Låt oss säga att vi vill ställa in mer restriktiva behörigheter för de nyligen skapade filer och kataloger så att andra inte kan
cd
till katalogerna och läsa filer. Behörigheterna vi vill ha är
750
för kataloger och
640
för filer.
För att beräkna
umask
helt enkelt de önskade behörigheterna från standardtillbehöret:
Umaskvärde:
777-750 = 027
Det önskade
umask
representerat i numerisk notation är
027
.
För att ställa in det nya värdet systemöver hela öppna
/etc/profile
med din textredigerare:
sudo nano /etc/profile
och ändra eller lägg till följande rad i början av filen:
/ Etc / profile
umask 027
För att ändringar ska träda i kraft kör följande källkommando eller utloggning och logga in:
source /etc/profile
För att verifiera de nya inställningarna kommer vi att skapa en ny fil och katalog med
mkdir
och
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
Ett annat sätt att ställa in filen för att skapa filer är att använda den symboliska notationen. Till exempel är
umask u=rwx, g=rx, o=
samma som
umask 027
.
Slutsats
I den här guiden har vi förklarat Linux-behörigheterna och hur man använder
umask
kommandot för att ställa in behörighetsbitar för nyskapade filer eller kataloger.
För mer information, skriv
man umask
i din terminal.
Oktober månad kan ha dominerats mer eller mindre av Ubuntu Linux för de som förutser den senaste Quantal Quetzal-versionen, men i veckan gjorde Linux Mint-projektet ett spännande meddelande om
I synnerhet lanserade Linux Mint-projektet på tisdag att det nu har en onlinebutik komplett med flera datorer som erbjuder Linux Mint förladdad. "
Samlingen "Linux Diversity": Ett kit, 10 Linux distros
Om du handlar om ett nytt OS , kommer den här uppsättningen att ge dig en mängd olika de senaste populära alternativen.
Linux: Linux Live USB Creator gör det lättare att installera Linux
Linux har alltid stött på de flesta som något för komplicerat att installera och lära. Men med Linux Live USB Creator kan du nu installera ett av många Linux-operativsystem på din USB-stick och använda det helt enkelt.







