Sziasztok!
Megküzdöttem a https://hup.hu/node/181159 bejegyzésben említett problémával. Többmilló fájlt és többtízezer POSIX ACL-t migráltam a convmv parancs, illetve megfelelő chroot környzetekben futtatott getfack/setfacl párosokkal. Néhány hét használat után azonban észrevettem, hogy a SaMBa (4.16.4) mintha felesleges POSIX ACL bejegyzéseket generálna. Először egy Word dokumentumnál bukott ki a probléma: Azt vettem észre, hogy amikor egy (esetleg más által tulajdonolt fájlt) szerkesztek, akkor a Word egy új fájl hoz létre, majd mentéskor törli az eredetit, az újat pedig átnevezi és megpróbálja a jogosultságait az eredetihez hasonlóra beállítani. A jogosultságok/Windows ACL-ek szerkesztése viszont gyakorlatilag mindig ahhoz vezet, hogy (szerintem) felesleges bejegyzések tömege kerül a POSIX ACL-be.
Pl. a file.docx nevű fájl eredeti jogosultsági beállításai így néztek ki:
# file: file.docx
# owner: user_2 #Valaki más, nem én.
# group: group_2 #A tulajdonos egyik csoportja (nem elsődleges).
user::rw-
group::rw-
other::rw- #Az írást számomra lehetővé tevő jogosultsági bitek.
Két MS Word-os szerkesztés után így néz ki a fájl POSIX ACL-je (ez persze már nem ugyanaz a fájl, mert a Word újat hozott létre, majd mentéskor törölte az eredeti fájl, az újat pedig átnevezte, és megpróbálta rá átvinni az eredeti fájl jogosultságait):
# file: file.docx
# owner: user_1 #Az új fájl már az én tulajdonomban van.
# group: domain\040users #Az én elsődleges csoportom.
user::rw-
user:domain\040users:rw- #Az elsődleges csoportom GID-je hozzáadva az UID-ek listájához. Nyilván nincs ilyen nevű user.
user:user_2:rw- #Az eredeti fájl tulajdonosa.
user:group_2:rw- #Az eredeti tulajdonos csoport GID-je hozzáadva az UID-ek listájához. Nincs ilyen nevű user.
group::rw-
group:domain\040users:rw- #A tulajdonos GID még egyszer hozzáadva. Nem felesleges?
group:user_1:rw- #Az én UID-em hozzáadva a GID-ek listájához. Nincs ilyen nevű csoport.
group:user_2:rw- #Az eredeti tulajdonos UID-je hozzáadva a GID-ek listájához. Nincs ilyen nevű csoport.
group:group_2:rw- #Az eredeti tulaj csoport.
mask::rwx
other::rw-
Fájlkezelővel is megpróbáltam egy könyvtáron dolgozni. user_1-ként létrehoztam egy könyvtárt, amely az alábbi jogosultságokkal jött létre:
# owner: user_1
# group: domain\040users
user::rwx
group::rwx
other::---
Ezután nem csináltam mást, mint írási jogot adtam a könyvtárra az user_2 felhasználó számára, de ezen felül (szerintem) felesleges és hibás ACE-k adódtak hozzá a POSIX ACL-hez:
# file: directory_name
# owner: user_1
# group: domain\040users
user::rwx
user:domain\040users:rwx #UID-ként hozzáadott GID. Nincs ilyen nevű user.
user:user_2:rwx #Csak ezt a jogosultságot szándékoztam hozzáadni.
group::rwx
group:domain\040users:rwx #A tulajdonos GID még egyszer hozzáadva. Nem felesleges?
group:user_1:rwx #GID-ként hozzáadott UID. Nincs ilyen nevű csoport.
group:user_2:rwx #GID-ként hozzáadott UID. Nincs ilyen nevű csoport.
mask::rwx
other::---
A kérdésem annyi, hogy van-e elképzelésetek arról, miért kerül ez sok - látszólag - felesleges információ a POSIX ACL-be, és főként az, hogy miért veszi fel a POSIX ACL-be a SaMBa az UID-eket GID-ként és viszont?