Sida 1 av 1

Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 10:06
av devos
Hej,
Hur ändrar jag permission på en mapp?
Står helt still och inget fungerar, det skall vara RW på mappen för användare btsync.
Har testat

sudo chmod -rf btsync /home/Sync

men fungerar inte, och när man googlar runt så skall man köra med siffror m.m vilket inte var hur jag gjorde förut utom då gav jag endast 1 användare extra access så att säga.

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 11:11
av Osprey
Du kan inte ändra rättighet för en specifik användare, de "fält" som finns är användaren, gruppen och övriga.

Rättigheterna anges som "rwx" dvs. läs, skriv och exekvera, där "r" har ett (oktalt) värde av 4, "w" har ett värde av 2 och "x" ett värde av "1".

När en fil skapas så får den ofta får den ofta rättigheterna "rwxr-xr-x" vilket alltså motsvaras av "4214-14-1" och om man delar in det i tre grupper (ägare, grupp och övriga), så blir summan i varje grupp 755.

Rättigheterna "rw" motsvaras alltså av 4+2 = 6. Så för att sätta rättigheten "rw" för ägaren så sätter man den till "6xx" där "x" är det tidigare värdet för gruppen och övriga, om man inte vill ändra dem. Om btsync däremot inte är ägare utan bara ingår i gruppen, så blir det istället "x6x".

Om du nu inte vill ha eller om det inte behövs, rättigheter för att exekvera (köra) filen, så skulle jag gissa att du vill ha "660". Det vill säga:

Kod: Markera allt

sudo chmod 660 /home/Sync
Det finns sätt att fixa till det här med plus och minus och r,w,x också, men det här är det gamla vanliga, traditionella sättet... :)

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 11:32
av devos
Osprey skrev:Du kan inte ändra rättighet för en specifik användare, de "fält" som finns är användaren, gruppen och övriga.

Rättigheterna anges som "rwx" dvs. läs, skriv och exekvera, där "r" har ett (oktalt) värde av 4, "w" har ett värde av 2 och "x" ett värde av "1".

När en fil skapas så får den ofta får den ofta rättigheterna "rwxr-xr-x" vilket alltså motsvaras av "4214-14-1" och om man delar in det i tre grupper (ägare, grupp och övriga), så blir summan i varje grupp 755.

Rättigheterna "rw" motsvaras alltså av 4+2 = 6. Så för att sätta rättigheten "rw" för ägaren så sätter man den till "6xx" där "x" är det tidigare värdet för gruppen och övriga, om man inte vill ändra dem. Om btsync däremot inte är ägare utan bara ingår i gruppen, så blir det istället "x6x".

Om du nu inte vill ha eller om det inte behövs, rättigheter för att exekvera (köra) filen, så skulle jag gissa att du vill ha "660". Det vill säga:

Kod: Markera allt

sudo chmod 660 /home/Sync
Det finns sätt att fixa till det här med plus och minus och r,w,x också, men det här är det gamla vanliga, traditionella sättet... :)

Okej, så om jag kör sudo chmod 660 /home/Sync så kommer alla användare kunna skriva, läsa och använda filerna?

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 12:22
av Barre
devos skrev: Okej, så om jag kör sudo chmod 660 /home/Sync så kommer alla användare kunna skriva, läsa och använda filerna?
Nej, inte riktigt. Ett exempel på en testfil

Kod: Markera allt

$$ ls -l /tmp/test.fil
-rw-r--r-- 1 jonas users 0 Jan 29 11:07 /tmp/test.fil
-rw-r--r-- = vilka rättigeter som är satta på filen.
De första rw- = ägaren till filen får läsa och skriva i filen (jonas i detta exempel)
de nästa r-- = gruppens rättigheter till filen, dvs enbart read (users i detta exempel)
de sista r-- = Alla andra användares rättigheter till filen, läs (read) i detta exempel.

Så om du gör en chmod 660 på filen

Kod: Markera allt

$chmod 660 /tmp/test.fil
$ ls -l /tmp/test.fil
-rw-rw---- 1 jonas users 0 Jan 29 11:07 /tmp/test.fil
så innebär det att ägaren och alla användare som ligger i gruppen users har läs och skrivrättigheter till filen. Ingen annan kan läsa eller skriva i filen.

Du kan också använda bokstäver istället för siffror för att sätta rättigheterna, det kan ibland vara lättare att förstå, detta framgår i man-sidan för chmod.

När det kommer till kataloger så måste de som skall kunna läsa vad katalogen innehåller för filer ha execute-rättigheter i katalogen, detta framgår också i man-sidan.

Om man av någon anledning skulle behöva en mer granuljär struktur kring rättigheter för vissa filer och/eller kataloger så går detta göra med ACL (Access Control Lists), filsystemet måste då vara monterat med parametern acl.
För att manipulera accesslistorna så använder du följande kommandon, setfacl & getfacl.
En intro till detta hittar du här: https://help.ubuntu.com/community/FilePermissionsACLs

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 12:27
av Osprey
Litet tillägg bara...
devos skrev:Okej, så om jag kör sudo chmod 660 /home/Sync så kommer alla användare kunna skriva, läsa och använda filerna?
Med "660" så kan ägaren och gruppen skriva och läsa, men för att alla ska kunna göra det så måste du ange "666"...

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 12:47
av devos
Barre skrev:
devos skrev: Okej, så om jag kör sudo chmod 660 /home/Sync så kommer alla användare kunna skriva, läsa och använda filerna?
Nej, inte riktigt. Ett exempel på en testfil

Kod: Markera allt

$$ ls -l /tmp/test.fil
-rw-r--r-- 1 jonas users 0 Jan 29 11:07 /tmp/test.fil
-rw-r--r-- = vilka rättigeter som är satta på filen.
De första rw- = ägaren till filen får läsa och skriva i filen (jonas i detta exempel)
de nästa r-- = gruppens rättigheter till filen, dvs enbart read (users i detta exempel)
de sista r-- = Alla andra användares rättigheter till filen, läs (read) i detta exempel.

Så om du gör en chmod 660 på filen

Kod: Markera allt

$chmod 660 /tmp/test.fil
$ ls -l /tmp/test.fil
-rw-rw---- 1 jonas users 0 Jan 29 11:07 /tmp/test.fil
så innebär det att ägaren och alla användare som ligger i gruppen users har läs och skrivrättigheter till filen. Ingen annan kan läsa eller skriva i filen.

Du kan också använda bokstäver istället för siffror för att sätta rättigheterna, det kan ibland vara lättare att förstå, detta framgår i man-sidan för chmod.

När det kommer till kataloger så måste de som skall kunna läsa vad katalogen innehåller för filer ha execute-rättigheter i katalogen, detta framgår också i man-sidan.

Om man av någon anledning skulle behöva en mer granuljär struktur kring rättigheter för vissa filer och/eller kataloger så går detta göra med ACL (Access Control Lists), filsystemet måste då vara monterat med parametern acl.
För att manipulera accesslistorna så använder du följande kommandon, setfacl & getfacl.
En intro till detta hittar du här: https://help.ubuntu.com/community/FilePermissionsACLs

Jag testade det precis men får detta meddelande:
drwxrwxr-x 3 btsync snurre 4096 Jan 25 22:15 Other
drwxrwxr-x 9 btsync snurre 4096 Jan 29 10:41 Private
drwxrwxr-x 7 btsync snurre 4096 Jan 29 10:30 Work
snurre@snurre:~$ -rw-rw---- 1 snurre snurre /home/snurre/Sync
-rw-rw----: command not found
snurre@snurre:~$


Dom jag vill ska kunna läsa / skriva / använda filerna i Sync mappen är följande users btsync och snurre.

snurre är själva användaren, antar att den har en egen grupp eller stämmer inte det?

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 13:53
av devos
NU håller man på att få ett mindre psyke!

vad fan, har 2st mappar i min hemmapp som skall delas ut i nätverket m.m

btsync och snurre ska komma åt Sync

Snurre och debian-transmission ska komma åt Downloads.


Får det verkligen inte att fungera.

Någon som kan posta så att det fungerar? snälla.

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 15:02
av Gunnar Hjalmarsson
devos skrev:Dom jag vill ska kunna läsa / skriva / använda filerna i Sync mappen är följande users btsync och snurre.
Låter som om det kan vara läge att skapa en särskild grupp för de två användarna:

Kod: Markera allt

~$ mkdir Sync
~$ sudo addgroup btsnu
Adding group `btsnu' (GID 1003) ...
Done.
~$ sudo adduser btsync btsnu
Adding user `btsync' to group `btsnu' ...
Adding user btsync to group btsnu
Done.
~$ sudo adduser snurre btsnu
Adding user `snurre' to group `btsnu' ...
Adding user snurre to group btsnu
Done.
~$ sudo chgrp btsnu Sync
~$ sudo chmod 2770 Sync
Om du sedan sätter 0664 på filerna som skapas i katalogen, antingen genom chmod-kommandot eller genom att sätta umask 0002, så borde du uppnå vad du frågar efter. Men du behöver nog läsa på en del.

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 16:22
av devos
Hej,
Jo jag vet att jag lär läsa på lite, men grejen är att jag har endast denna server som jag lär flytta över massa bilder till innan jag säljer datorn.

Gjorde precis som du sa, men när jag ansluter mot Sync folder via SMB så får jag inte flytta över filerna till den mappen från min andra dator =(
Ansluter som snurre via SMB som sagt.

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 17:44
av Osprey
Äh, kör "sudo chmod -R 777 /home/snurre/Sync" så funkar det... lite quick'n'dirty och följer inga vettiga regler för säkerhet... men bara för nu liksom... :)

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 29 jan 2014, 19:58
av devos
Tack för allas hjälp, hittade programmet webmin som gjorde underverk
La in alla i en grupp som någon skrev ovan, btsnu sedan gjorde jag att ägare för filerna va snurre och gruppen btsnu.

Så nu kan alla få access till mapparna och alla underfiler m.m.

Re: Står still, hur ändrar jag permission på en mapp?

Postat: 16 feb 2014, 19:10
av Johnny Rosenberg
Jag har inga större kunskaper inom området, men av ren nyfikenhet:
Hade inte detta varit enklare att göra med ACL?