Come rimuovere ACL da una directory e tornare al normale controllo di accesso?


29

Usiamo un server di hosting di FreeBSD 10.3, in cui non abbiamo l'autorità di essere un superutente. Usiamo il server per eseguire apache2 per le pagine Web della nostra azienda. Il precedente amministratore delle nostre pagine Web sembrava impostare un'autorizzazione ACL su una directory, ma vogliamo rimuoverla. Diciamo che si chiama la directory foobar.

Ora il risultato di ls -al foobarè il seguente:

drwxrwxr-x+   2 myuser  another_user   512 Nov 20  2013 foobar

E l'autorizzazione è la seguente:

[myuser@hosting_server]$ getfacl foobar
# file: foobar/
# owner: myuser
# group: another_user
user::rwx
group::rwx
mask::rwx
other::r-x

Qui vogliamo rimuovere l'autorizzazione ACL e il segno più nell'ultimo elenco di autorizzazioni. Pertanto, abbiamo fatto

setfacl -b foobar

Ha eliminato l'autorizzazione speciale regolata dall'ACL, ma non ha cancellato il segno più +.

La nostra domanda è: come possiamo cancellare il segno più +nell'elenco dei permessi, mostrato da 'ls -al foobar'?


getfaclindica non ACL. Tuttavia lssta mostrando a +. Sei sicuro di guardare lo stesso file ogni volta? (questo è di solito il motivo per me)
ctrl-alt-delor

@richard sì, sicuramente lo stesso file.
Taiki Bessho,

Risposte:


28

Il nostro problema è stato risolto utilizzando:

setfacl -bn foobar

Il punto era che dovevamo anche rimuovere aclMask dalla directory con un'opzione -n ​​... La pagina man di setfacldice come segue:

 -n      Do not recalculate the permissions associated with the ACL mask
         entry.  This option is not applicable to NFSv4 ACLs.

Non siamo sicuri del motivo per cui questa opzione ha funzionato, ma ha funzionato ...


Nel caso in cui si ottenga l' d?????????autorizzazione dopo la soluzione sopra, provare chmod -R a+rXcome due commentati di seguito.


Questo ha reso i miei file: d?????????è strano
JREAM

1
Aggiornamento: risolto il problema con chmod -R a+rXla X maiuscola
JREAM

@JREAM Quale sistema Linux usi?
Taiki Bessho,

Ho avuto lo stesso d ?????? cosa con Ubuntu 16. Risolto con il chmod sopra. Strano.
TonyG

3

Dispari ... impossibile riprodurre:

ls -l | grep foobar
drwxr-xr-x+ 2 maulinglawns maulinglawns 4096 jan 24 14:25 foobar

setfacl -b foobar/
ls -l | grep foobar
drwxr-xr-x 2 maulinglawns maulinglawns 4096 jan 24 14:25 foobar

Sfortunatamente non ho accesso a BSD per testare adesso.


Informazioni di sistema:

Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:    8.7
Codename:   jessie

In effetti, non riesco a riprodurre sul server Ubuntu 16.04.1 ...
Taiki Bessho,

Alla fine, sono stato in grado di eliminare il segno più setfacl -bn foobarma non so perché l' nopzione ha funzionato così.
Taiki Bessho,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.