ændre rettigheder for mappe
Hej.
Jeg skal have ændret rettighederne for min mappe /var/www således at jeg ikke skal være root for at ligge filer i denne mappe, men hvordan gør jeg det?
Jeg skal have ændret rettighederne for min mappe /var/www således at jeg ikke skal være root for at ligge filer i denne mappe, men hvordan gør jeg det?
Kommentarer9
sv: ændre rettigheder for mappe
ls -lh /var/www
Gruppen skulle gerne være www-data www-et_eller_andet eller sådan noget
Kør så:
useradd -G www-data dinBruger
Du skal logge ud og ind igen, før din bruger opdager ændringerne. Men det burde virke.
efter jeg gjorde det, så er
hov min fejl - det virkede
Jeg skriver som sagt i #1 men det virker ikke:
dbr@dbr:~$ ls -lh /var/www
totalt 4,0K
drwxr-xr-x 2 root root 4,0K 2007-12-28 15:59 apache2-default
dbr@dbr:~$ useradd -G www-data dbr
useradd: brugeren dbr eksisterer
dbr@dbr:~$
Har du pillet?
Hvilken dist bruger du?
drwxr-xr-x | 2 root | root | 4,0K 2007-12-28 15:59 apache2-default
Rettigheder | ejer | gruppe |
dbr@dbr:~$ useradd -G www-data dbr
useradd: brugeren dbr eksisterer
Kan kun root gøre.
Hvad siger:
cat /etc/group | grep www
Jeg bruger ubuntu.
Jeg
Jeg prøvede også at gøre det som root, men det giver samme resultat.
cat /etc/group | grep www giver:
root@dbr:/home/dbr# cat /etc/group | grep www
www-data:x:33:
Du skal tilføje dit brugernavn til gruppen www-data
Skriv din adgangskode.
I vinduet Brugerindstillinger klikkes på knappen Håndtér grupper.
I vinduet Gruppeindstillinger vælges gruppen www-data og der klikkes på knappen Egenskaber.
I vinduet Egenskaber for gruppen "www-data" sættes flueben ved din brugerkonto og klikkes på knappen O.k..
I vinduet Gruppeindstillinger klikkes på knappen Luk.
I vinduet Brugerindstillinger klikkes på knappen Luk.
Hvis du bruger tekstkonsollen istedet, så kan du ændre det direkte i /etc/group først med denne kommandolinje (skal stå på en enkelt linje):
sudo sed -i 's/^\(www-data:.*:[a-z][^:]*\)$/\1,brugernavn/' /etc/group
som tilføjer brugernavn til www-data, hvis der er brugere tilknyttet i forvejen. og dernæst denne:
sudo sed -i 's/^\(www-data:.*:\)$/\1brugernavn/' /etc/group
Hvis der ikke er brugere i forvejen. Husk rækkefølgen, hvis du er i tvivl, for ellers risikerer du at tilknytte brugeren to gange, hvilket kan give problemer.
En god idé kunne være at tvinge alle nye filer og kataloger til at have samme gruppeejerskab som /var/www, det gøres ved at sætte en såkaldt sticky bit på. I en tekstkonsol skrives følgende:
sudo find /var/www -type d | xargs chmod g+s
en nemmere måde uden nørdede kommandoer :)
gud :D det havde jeg ikke
Jeg skal jo bare skrive
sudo nautilus
finde mappen, højre klikke og ændre rettighederne.. hehe tænkte ikke lige klartTak for hjælpen
Mange måder at løse samme opgave på
Og nu er grupperettighederne for /var/www allerede tildelt www-data, så det skal jo ikke ændres.
Men når det gælder om at ændre sticky bit'en, så der oprettes nye filer og kataloger med samme gruppeejerskab som det pågældende katalog, så kan dette ikke gøres i Nautilus - og det er kun katalogerne, som skal have det - ikke de almindelige filer og links.
Så her er der brug for en kommando i stedet for et grafisk værktøj.