Svar på FAQ fråga
Fråga: Hur ändrar jag rättigheter på filer eller mappar?
Svar: Först ska kanske sägas att denna lilla HOWTO grundar sig på ett linux system och berör inte operativsystemet WINDOWS.
Om någon känner eller orkar skriva hur man ändrar rättigheter i Win så besvara gärna inlägget.
Nu till svaret.
För att ändra ägarskapet på en mapp eller fil använder man ett komando som heter:
chown - (change file owner and group)
För att ändra rättigheterna på en fil använder man kommandot:
chmod - (change file access permissions)
Det jag presenterar nedan är grundläggande användandet av dessa båda kommandon. Om du känner att detta inte är tillräckligt skriv:
man chmod
man chown
för att få mer information.
För att se hur rättigheterna ser ut samt se vem som äger filen/kaltalogen är det lättast att använda kommandot:
Kod:
ls -la
Resultatet man får då är följande:
Kod:
ludberg@LiBBLi:/disk1/docs/php/login/$ ls -la
drwxr-sr-x 3 ludberg ludberg 4096 2002-11-18 14:41 .
drwxr-sr-x 32 ludberg ludberg 4096 2002-11-11 17:11 ..
-rw-r--r-- 1 ludberg ludberg 1541 2002-11-13 15:01 index.php
-rw-r--r-- 1 www-data www-data 260 2002-06-30 16:36 inloggad.php
drwxr-sr-x 2 ludberg ludberg 4096 2002-06-30 16:36 jocke
-rw-r--r-- 1 ludberg ludberg 3715 2002-06-30 16:36 new.php
Detta är självklart lite individuellt hur det ser ut men det som är här är standard utformningen, i mitt fall Debian.
Det som står till vänster är rättigheterna fölt av vem som äger filen/mappen.
Rättigheterna är som följer:
d - indikerar katalog
w - write (skriv rättigheter)
r - read (läs rättigheter)
x - execute (kör rättigheter)
Ett streck indikerar att det inte finns några rättigheter.
Denna serie av bokstäver delas in i 3 grupper
u = user
g = group
o = other
U G O
- --- --- ---
Ett par exempel:
drwxrwxrwx
Det är en katalog.
user har read,write och execute rättigheter.
group och other har också read,write samt execute
drwxrx-r--
Det är en katalog.
user = read, write, execute
group = read, execute
other = read
User är den som äger filen. group är dom som är i samma grupp som usern. Other är alla andra som inte äger filen eller är i samma grupp.
Hur ändrar man då rättigheterna.
Det finns två enkla sätt att ändra rättigheterna.
1. Använder siffror och skriver ett värde som tolkas och ändrar rättigheten
2. Man skriver exakt vilka rättigheter man vill att filen/katalogen skall ha.
ALTERNATIV NUMMER 1:
Read (r) har värdet 4
Write (w) har värdet 2
Execute (x) har vädet 1
Man lägger ihop de siffror man vill ha till ett tre siffrigt tal som symboliserar rättigheten.
Exempel: 644
För att sedan ändra skriver man följande
Kod:
chmod <värde> fil/katalog
Första siffran i det tresiffriga talet representerar rättigheten usern skall ha. Siffra nummer 2 är group och tredje siffran är other.
I fallet 644 får usern 4+2=6 alltså read och write.
group och user får 4 vilket resulterar i bara read.
ALTERNATIV NUMMER 2:
I detta fall skriver man inga siffror utan man fokuserar på att använda bokstäverna r,w,x.
För att sätta samma värde som vi hade i föregående alternativ (644) skrive rman följande
Kod:
chmod u=rw,g=r,o=r fil/katalog
Om du vill att bara att tex user eller group skall ha några rättigheter skriver man:
Kod:
chmod u=,g=rw,o= fil/katalog
Om du bara ska ta bort tex read för user eller lägga till execute för other räcker det att skriva
Kod:
chmod u-r fil/katalog
chmod u+x fil/katalog
Om du skall ändra på alla filer i en katalog skriver du (med bokstäver alternativet):
Kod:
chmod u-x *
En bra sak att känna till är -R
-R, --recursive (change files and directories recursively)
Om du sätter in -R efter chmod ändrar du på alla underkataloger och filer hos den katalog du vill ändra på.
Exempel:
En katalog som heter "php" har 30 underkataloger och du vill att alla skall ha rättigheterna 644 skriver du.
Kod:
chmod -R 664 php/
För att ändra ägar skapet på en fil eller man används kommandot 'chown'.
Om du bara skall ändra ägarskapet på en fil eller man skriver du följande:
Kod: