permission probléma

 ( Linuxman15 | 2012. április 18., szerda - 0:16 )

Sziasztok!

Az lenne a problémám, hogy a létrehozott user alatt fut a deluged és a deluge-web deamonok.
Amikor befejezte a letöltést a ftpuser/ftpgroup által létrehozott mappába amit ugye a pureftp-mysql hoz létre, az a probléma, hogy az user jogai iródnak bele a letöltött fileba, tehát az ftp user csatlakozva total commanderrel nem birja törölni,megnyitni..stb.Csak ha kézzel átállítgatom, de az nagyon sok plusz. Hogy lehetne megoldani, hogy ne a deamon által futtatott user jogai iródjanak a file-ra?
Kicsit utána olvastam van valami umask, megpróbáltam 2x
$/home/torrent$ umask 0777 illetve umask 0777 /home/torrent
de nem jutottam érdemi dologra sajnos.

Köszönöm!

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Ugyan nem vagyok képben, de ahhoz, hogy egy file-t törölni tudj, lényegtelen, mik a jogai. A file-t tartalmazó directory-ra kell legyen írási jogod.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

A file-t tartalmazó directory-ra kell legyen írási jogod.
És magára a fájlra.

Ez nincs így:

mkdir proba
cd proba
echo Hello >valami
ls -l

total 4
-rw-r--r--. 1 locsemege users 6 Apr 20 23:31 valami
chmod a-w valami
ls -l

total 4
-r--r--r--. 1 locsemege users 6 Apr 20 23:31 valami
rm -f valami
ls -l

total 0


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Igazad van. Köszi, hogy kijavítottál.

-1

pure-pw usermod login [-f passwd_file] [-F puredb_file] [-u uid] [-g gid]
-D/-d home_directory -[c gecos]
[-t download_bandwidth] [-T upload_bandwidth]
[-n max_number_of_files] [-N max_Mbytes]
[-q upload_ratio] [-Q download_ratio]......
......

A teljes manualt a 'man pure-pw' paranccsal tudod megnézni. :)

ftpuser-rel inditod a deluged-t? A deluge-web mindegy, az csak egy UI.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal

Nem ftpuserrel, az ftpuser az mysql-ben megadott adatok alapján kezeli a könyvtárat, fel-letöltési sebesség,kvóta..stb. A probléma az ,hogy amit a deluge letölt a directoryba, tehát tud írni bele, de az emberke aki FTP-n csatlakozna a filokat amik le lettek töltve már törölni,módosítani nem tudja, ez lenne a probléma, erre keresnék megoldást. Mert kézzel elég nehézkes átírogatni a jogokat felhasználóként.

Az FTP szerver is fut valamilyen userrel. Nem roottal, valamilyennel. Na, ezzel a userrel kellene fusson a deluge.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal

+1

Én kicsit tovább is vinném a dolgot: szerintem érdemes lenne ACL-t használni, számtalanszor tapasztaltam már, hogy nagy segítség ilyen helyzetekben.

Ha még nem használtál ACL-t: a mágia lényege annyi, hogy a fájlrendszert "acl" mount opcióval csatolod fel, majd utána a "setfacl" paranccsal tudsz extra jogokat osztogatni, pl.:

### user1 létrehoz egy fájlt:
user1@teszt:~$ touch enyime
### ha azt szeretnéd, hogy user2 is írhasson a fájlba, de nem akarod a csoportokat vagy az umaskot piszkálni, akkor így is adhatsz jogot:
user1@teszt:~$ setfacl -m u:user2:rw enyime 
user1@teszt:~$ getfacl enyime
# file: enyime
# owner: user1
# group: user1
user::rw-
user:user2:rw-
group::r--
mask::rw-
other::r--
### ha ugyanezt könyvtárra állítod be, és szeretnéd, ha a jogok öröklődnének, akkor:
user1@teszt:~$ mkdir tesztkonyvtar
user1@teszt:~$ setfacl -m u:user2:rwx tesztkonyvtar
### az alábbi parancs átmásolja az effektív jogokat a default ACL-be (vagyis, örökölteti a meglévő ACL-t):
user1@teszt:~$ getfacl --access tesztkonyvtar | setfacl -d -M- tesztkonyvtar
### ha most létrehozol egy fájlt vagy könyvtárat a tesztkonyvtar alatt, akkor user2 automatikusan megkapja (örökli) a tesztkonyvtar-ra beállított jogokat:
user1@teszt:~$ cd tesztkonyvtar/
user1@teszt:~/tesztkonyvtar$ touch alma
user1@teszt:~/tesztkonyvtar$ getfacl alma 
# file: alma
# owner: user1
# group: user1
user::rw-
user:user2:rwx			#effective:rw-
group::r-x			#effective:r--
mask::rw-
other::r--

A getfacl/setfacl parancsok az "acl" csomagban vannak (apt-get-tel telepíthető).

hozz létre egy groupot és add hozzá a torrent usert meg az ftpusert is, és úgy állítsd be a jogokat hogy a group törölhessen. Legyen mindkét user elsődleges groupja az új group hint: man adduser, man usermod

Az umaskot pedig inverz chmodként kell használni tehát :

umask 777
touch umasktest
ls -l umasktest
 ---------- 1 tbana ntms_budapest 0 2012-04-18 13:06 umasktest

vagyis az így létrejött féjlokra senkinek semmi joga nem lesz.

umask 022
touch umasktest2
ls -l umasktest2
-rw-r--r-- 1 tbana ntms_budapest 0 2012-04-18 13:10 umasktest2

Nem fontos hogy az elsődleges csoportjai legyenek:
chgrp -R kozoscsoport mappa
chmod -R g+s mappa
Ekkor a mappában ami létrejön ezzel a csoporttal jön létre.

Azt gondolom, hogy én már megoldottam.
Leírom hát hosszabban.

'ls -l /home/torrent'
Megnézed a fájlok kinek a tulajdonában vannak.
'id tulajdonos'; 'id csoport'
Majd
pure-pw usermod ftp-usernév -u tulajdonos-id-je -g csoport-id-je
Ez a parancs azt okozza, hogy az ftp-vel (totalcommanderrel) belépő virtuális user a fájlrendszerben a /home/torrent mappa tulajdonosaként fog operálni, tehát nem lesz jogosultság probléma.

Természetesen a korábban hozzászólók megoldásai is jók, csak pl. az acl használata a kérdezőt újabb kihívások elé fogja állítani.

De a te megoldasod is csak akkor jo, ha puredb authentikacio van. Ha pam authentikacio van, akkor az egesz megint semmit se er.

Szerk: visszaolvasva: mysql auth van.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal