Viimeaikoina olen "joutunut" säätämään paljon linux-palvelinta, jossa pyörii mm. Gitlab. Palvelimelta otetaan backupit SSH:n yli.
Ongelma: kun gitlabiin lisätään uusi repo (kansio), ei backup-käyttäjällä ole oikeuksia kyseiseen kansioon.
Olen yrittänyt lisätä backuppc-käyttäjän git-ryhmään (joka omistaa kansiot) tuloksetta...
immobileadmin@localhost:/var/opt/gitlab/git-data/repositories$ ls -l drwxrwxr-x 2 git git 4096 Mar 28 11:37 repo1 drwxrwxr-x 2 git git 4096 Apr 11 12:34 repo2 immobileadmin@localhost:/var/opt/gitlab/git-data/repositories$ groups git git : git immobileadmin@localhost:/var/opt/gitlab/git-data/repositories$ groups backuppc backuppc : backuppc git
Olen saanut systeemin toimimaan ainoastaan chmodaamalla 0775, mutta ei tunnu hyvältä tavalta sekä nimenomaan uusiin kansioihin ei ole oikeuksia kuitenkaan. Miksei backuppc-käyttäjä pääse hakemistoihin, vaikka kuuluu grouppiin?
Oletko katsonut, millaiset oikeudet ovat lähtötilanteessa ja miksi? (Ongelman kannalta ei ole mitään hyötyä siitä, että esittelet oikeuksia sen jälkeen, kun olet tehnyt tarvittavat muutokset.) Sitä paitsi olet nyt ihan turhaan tunkemassa ryhmälle kirjoitusoikeutta, jos tarkoitus on vain lukea dataa; 0755 riittäisi ihan hyvin.
Jos Gitlab tekee hakemistot oletusoikeuksilla, jotka jostain syystä ovat väärät, voit laittaa oikeudet periytymään automaattisesti (ks. tämä ohje):
DIR=/var/opt/gitlab/git-data/repositories chmod -R ug+rwX,o-rwx "$DIR" chmod -R ug-s "$DIR" find "$DIR" -type d -print0 | xargs -0 chmod g+s
ACLeilla asia menisi helposti. Laitat vain hakemistoille vakiona rx tuolle käyttäjälle, tällöin menevät jokaiselle lisätylle tiedostolle ja hakemistolle.
Aihe on jo aika vanha, joten et voi enää vastata siihen.