[MEGOLDVA] SAMBA recycle - File másolás nélkül

 ( kalmarr | 2013. december 23., hétfő - 12:39 )

Sziasztok,

szeretnék "recycle" funkciót a SAMBA serveremhez az alábbi konfiggal, de sajnos nem jól működik, mert a Kuka-ba létrehozza a teljes könyvtárat, de magát a file-t nem másolja, csak a könyvtár struktúrát.
A LOG file viszont helyesen tartalmazza a file nevét és a könyvtár struktúrát is.

Nem tudom, hogy ide tartozik-e, de az SMBCLIENT is hibát jelez:

---
/usr/bin/smbclient -L //192.168.15.100/server
WARNING: The security=share option is deprecated
Enter root's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
Server requested LANMAN password (share-level security) but 'client lanman auth = no' or 'client ntlmv2 auth = yes'
tree connect failed: NT_STATUS_ACCESS_DENIED
---

Előre is köszönöm a segítségeteket!

KALMI


#======================= Global Settings =======================

[global]
name resolve order = wins lmhosts hosts bcast
;hosts allow = 192.168.15.0/24 172.16.200.0/24
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
obey pam restrictions = yes
prefered master = yes
time server = yes
passwd program = /usr/bin/passwd %u
fake directory create times = yes
dns proxy = yes
netbios name = server
browseable = yes
delete readonly = yes
local master = yes
workgroup = WORKGROUP
os level = 66
security = share
usershare allow guests = yes
max log size = 1000
dos filetimes = yes

log file = /var/log/samba/%U.%m.log
log level = 0 vfs:2

map to guest = bad user
follow symlinks = yes
domain master = yes
encrypt passwords = true
passdb backend = tdbsam
unix extensions = no
dos filetime resolution = yes
wide links = yes
server string = %h server (kozponti)
unix password sync = yes

;client lanman auth = yes

syslog = 0
unix charset = UTF-8
panic action = /usr/share/samba/panic-action %d
pam password change = yes

#======================= Share Definitions =======================

;[homes]
;comment = Home Directories
;path = /home/Kuka/
;browseable = yes
;guest ok = yes

[kozponti]
browseable = yes
writeable = yes
path = /mnt/sysop/users/%U/

#revalidate = yes
comment = Udvozellek %U! - Sajat fiok
valid users = users
create mode = 777
directory mode = 777

#Kuka
vfs objects = recycle
recycle:versions = Yes
recycle: keeptree = yes
recycle:repository = /home/Kuka/%U
recycle:exclude_dir = /home/Kuka/temp
vfs objects = extd_audit recycle
recycle:exclude = *.tmp *.temp *.swp
recycle:maxsize = 0
recycle:touch_mtime = true

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ő.

a "recycle: keeptree" lehet syntax erroros a space miatt.
a repository szerintem relatív a share root-hoz (egyébként is /home/Kuka? van egy olyan usered hogy Kuka?)
nem tudom, mit szól a szamba ahhoz, hogy 2x adtad meg a vfs_objects-et.
van "minsize" opció, akkor a "maxsize=0" nem logikus hogy végtelent jelentsen.

enyim:

vfs objects = recycle
recycle:repository = .Recycler
recycle:keeptree = yes
recycle:versions = yes
recycle:touch = yes
recycle:touch_mtime = no
recycle:minsize = 10 
recycle:maxsize = 104857600
recycle:exclude = *.tmp *.temp ~$*
recycle:exclude_dir = *.Recycler*

~~~~~~~~
Linux 3.2.0-4-486
Debian 7.1

Köszönöm a segítségedet!

A hibákat kijavítottam, de a helyzet változatlan. Sajnos a könyvtárak jönnek létre fileok nélkül...

Kuka user minek kell, hisz az nekem elvileg könyvtár? Az "%U" a user könyvtár neve...

globál options log level = 3 és nézzük a logokat hogy konkrétan mint mond.
milyen rendszeren akarod megvalósítani? RedHat/CentOS/SL? vagy Debian vonal?
előbbinél SELinux nem lehet?
Ha ubi akkor AppArmor nem figyel?

nézzük a logokat....
--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Debian Wheezy... küldöm a logokat is...

".172.16.200.10.log"

http://pastebin.com/PYazR4mM

user.172.16.200.10.log

http://pastebin.com/0UziC4Yw

Jelenleg OPENVPN keresztül csatlakozok a serverhez. Elvileg minden log-ot feltettem, mert töröltem mindent a teszt előtt.

Köszi a segítségedet...:)

legközelebb egy pastebin.com-ot légyszives (: mindenkinek jobb úgy

+100

Jogos, sorry. Gyorsan lőttem fel és nem vettem észre, hogy ezt a rengeteg logot 1-2 perc alat hozta létre a server.

U.i.

Bár szerintem ez sem túl normális, de lehet a log 3 miatt van....

Kedves jupiter2005ster!

Sikerült találni valami érdekeset a log-okban?

Köszi!

KALMI

Meg nem volt időm. Valószínűleg ma mar lesz.
--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

hali

Na, így másnaposan :) amit én látok a logokban és figyelemre méltónak ítélek:

Warning: security=share is deprecated!

Failed to fetch domain sid for WORKGROUP

[2013/12/23 22:19:22.850524, 2] lib/module.c:64(do_smb_load_module)
Module '/usr/lib/samba/vfs/recycle.so' loaded
[2013/12/23 22:19:22.850887, 3] ../libcli/security/dom_sid.c:208(dom_sid_parse_endp)
string_to_sid: SID USER is not in a valid format
[2013/12/23 22:19:22.851056, 3] passdb/lookup_sid.c:1754(get_primary_group_sid)
Forcing Primary Group to 'Domain Users' for USER

[2013/12/23 22:19:23.048662, 3] lib/sysquotas.c:432(sys_get_quota)
sys_get_vfs_quota() failed for mntpath[/mnt/500gb] bdev[/dev/mapper/server-home] qtype[2] id[1000]: Operation not permitted
[2013/12/23 22:19:23.048895, 3] lib/sysquotas.c:432(sys_get_quota)
sys_get_vfs_quota() failed for mntpath[/mnt/500gb] bdev[/dev/mapper/server-home] qtype[4] id[1000]: Operation not permitted

Ezeknek google-z utána. Most így fejből nem megy miért is dobja a quota hibát de ez többször ismétlődik a user logban, és feltételezem, hogy ez az oka a hibádnak.
--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Keresgéltem, de sajnos nem találtam megoldást a problémámra. A quota-t sem nagyon értem mivel elvileg nem állítottam be ilyet (legalábbis nem tudom, hogy hogyan kell...).
Szimbolikus link-el beteszem a megosztásba a kukát és gyönyörűen tudok beleírni, így végkép nem értem, hogy mi lehet az a qouta hiba....
Amit nem nagyon értek még, hogy a könyvtár struktúrát miért hozza létre, mivel ha ez nem volna, akkor valami írási hiba lenne....

A quota-t az fstab-an állítod be. Ha nincs akkor nincs beállítva.
első körben próbálkozz egyszerább konfiggal.
pl.:
http://www.samba.org/samba/docs/man/manpages/vfs_recycle.8.html
a végén van egy rövid rész. ha az megy akkor egyesével lépj tovább és tesztelj.

de nem bírom ki:

recycle:maxsize = BYTES
Files that are larger than the number of bytes specified by this parameter will not be put into the repository.

szóval szerintem mivel ott 0 byte van beállítva neked, így nem teszi oda a fájlt.
--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Letöröltem a beállításokat, újra megadtam, de kitartóan csak a könyvtárakat engedi létrehozni.... Nem lehet valami ütközés szerűség?

Tennék egy próbát így:

echo abc > %SHARE%/.../x/y/z/valami.txt
del %SHARE%/.../x/y/z/valami.txt

chmod 777 $RECYCLE/.../x/y/z/

aztán megint

echo abc > %SHARE%/.../x/y/z/valami.txt
del %SHARE%/.../x/y/z/valami.txt

És ellenőrizni, hogy második körben megjelent-e a törölt fájl.

Semmi megmagyarázható, vagy tapasztalt dolog, csak tipp.

Ez megy, tudok létrehozni userként fileokat és törölni is a temp könyvtáramban ebben semmi hiba nincs. Pont ez a bajom, ami gyanus nekem (ahol a megoldás lesz) a csak könyvtár struktúra létrehozása, ha ez megy, akkor mi a baja a fileokkal? Elvileg csak könyvtárt mikor lehet létrehozni a Linuxban? Ezt joggal lehet-e korlátozni?
Esetleg valami belállítást nem lehetne törölni, újra telepíteni, hátha valami felül írásra került valmivel... nem hiszem, hogy ilyen "bonyolult" lenne a megoldás.

és ha beállítanád ezt:
recycle:maxsize = 100000000000

csak hogy biztosan kizárható legyen h nem fájlméret probléma.

--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Nem jött be. Kb az a helyzet van most, hogy ilyen nem létezik...

Nem értettél meg.
Amit javasoltam, az annyi, hogy törölj egy konkrét fájlt, keresd meg azt a könyvtárat, amit ekkor létrehoz a $RECYCLED alatt (ahová a fájl kerülne, ha kerülne). Adj ennek a könyvtárnak 777-as jogot.
Aztán töröld ugyanazt a fájlt megint (vagy bármit ugyanabból a könyvtárból), és ezután nézd meg, hogy így már nem került-e véletlenül a töröltségét megillető helyre.

Kizárólag a holmesi utat járnám: jönnek a valószínűtlen megoldások.

chmod 0777 -R /home/Kuka parancsot is kiadtam a meglővő könyvtárakra (ahol teszteltem), de semmi file nincs :(
Amúgy a "recycle" modult melyik .log file naplózza? Hova kerülnek e modul log-jai, esetleg lehetne-e idéglenesen "külön naplóztatni"?

az h kiadtad a chmod -R 777 meg nem jeleni az hogy az ujonan letrejovo fajlok/mappaknak is 777 jogaik lesznek. a tulaj es a csoport okes? azt tudja irni a samba?
azutan h beallitottad a filesize limete es a 777 jogot a logok mit mondanak?
--
A legértékesebb idő a pillanat amelyben élsz.
https://sites.google.com/site/jupiter2005ster/

Szerintem probald meg szorol-szora kovetni, amit a srac ir, oka van, hogy pontosan ezt keri toled, es nem mast.

Egyebkent a sambaban a modulok kulon nem logolnak, a loglevel-lel allitasz log szintet, es a log.smbd -be fog valoszinuleg kerulni. Kulon naploztatni igy tehat nem tudod, a grep segitsegevel tudsz rakeresni a megfelelo log-sorokra.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.

A /home alatt nincs quota?

Ez mit is jelent?

Hogy a /home -t tartalmazo particio az usrquota/grpquota mount flagek egyikevel lett-e mountolva, ill. hogy XFS eseten a quotazas be van-e kapcsolva.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.

Én kipróbálnám a következő sorok nélkül:
recycle:repository = /home/Kuka/%U
recycle:exclude_dir = /home/Kuka/temp
recycle:maxsize = 0

Ekkor a törölt miskulanciának a /mnt/sysop/users/%U/.recycle alá kellene kerülnie. Lehet, hogy a recycle vfs nem tud a /mnt/... könyvtárakból a /home/... alá dolgozni. Bár akkor a könyvtárstruktúrát se kéne létrehoznia, fene érti.

sub

Kérdésem, hogy ez a hiba még valakinek előjött, esetleg meg tudta oldani?

Ugyan arra a partícióra tedd a Kuka-t, ahol a fájlok vannak.

smb.conf részlet:

        recycle:repository = /srv/projekt/Kuka/%U
        recycle:touch = Yes
        recycle:keeptree = Yes
        recycle:versions = Yes

A security=share-t töröld ki a smb.conf-ból, vagy helyette: security=user legyen

A módosítás után indítsd újra az smb-t és az nmb-t pl.:

# systemctl restart smb nmb

A testparm-al ellenőrizd le a samba configot.

Igen ez volt a hiba! Ugyan az a partíció??? Miért nem lehet csatolni mást, vagy más bűvészkedés van benne?

A szamba másolás nélkül, hogy helyezze át másik partícióra?

--------------------
http://grant-it.com/

Azert nem lehet, mert particiok kozott nem lehet siman csak athelyezni, hiszen ket particio ket eltero fajlrendszer, nem biztos hogy ugyanoda tud kerulni egy fajl, sot a legtobb esetben nem kerul ugyanoda.

Minden egyes esetben, amikor ket particio kozott helyezel at fajlt (akar egy sima mv paranccsal, akar Midnight Commanderbol, akar Samba segitsegevel), eloszor masolas tortenik, majd a forras oldalon torlodik a fajlbejegyzes.

Hogy fokozzam az izgalmakat, ez a dolog raadasul meg csak nem is Linux-specifikus, a Windows es az OS X is igy csinalja.
--
Blog | @hron84
Üzemeltető macik

:) Akkor ezt még egyszer. Ha fel mountolok két winyót, partíciót a rendszerbe (pl: ext4). Mind a két mountulásba tudok írni olvasni, akkor mi a probléma? Pl: áthelyezni win alat simán lehet két winyó között is, igaz akkor másol és utána töröl, de lehetséges.
Ha pedig ugyan azon a winyón dolgozok, akkor pedig partíciós táblában írja át a helyét a filenak (fizikálisan nem mozdul az adat). Következésképpen azt akarod mondani, hogy a "vfs objects = recycle", csak partíciót tudja kezelni és másolni nem tud?

Ha megpróbálsz áthelyezni egy több GB-os fájlt partíción belül, ill. másik partícióra, láthatod a különbséget.
Ha törlésnél egy néhány apró fájlból álló könyvtár, vagy egy nagy fájl törlése nagyságrendekkel több idő alatt törlődne le a recycle funkció bekapcsolása után, mint előtte, mene a hiszti, hogy milyen szar ez a recycle, mert lassítja a törlést, etc...
SZERINTEM

Hát igen, de talán erre vannak a kapcsolók, hogy enged vagy ne engedd, mint az hogy gőzöd nincs miért nem megy a dolog és hisztizek több, mint egy éve :(
A lényeg az, hogy megoldva! Még egyszer köszi!

"Pl: áthelyezni win alat simán lehet két winyó között is, igaz akkor másol és utána töröl, de lehetséges."

Na ez, marmint a kiemelt resz itt a lenyeg. Ha valaha is elmerultel volna egy ici-picit is a Windows lelkivilaganak melyeben, akkor tudnad, hogy a Windows a kukat - elegge el nem itelheto modon - particionkent kezeli, minden egyes nyuves particionak (ami nem cserelheto eszkozon vagy halozati meghajton van) sajat kuka mappaja van, nem veletlenul. A kuka funkcio csak es kizarolag ugy kepzelheto el a leghatekonyabban, ha egy particion belul kezeljuk, mert akkor nem kell masolni es utana torolni. Tehat a Windows sem kepes particiok kozott kukat kezelni, az, hogy te egyben latod az osszes particio kukajat a Lomtar ikonon belul, az pusztan az Explorer.exe folyamat teljesitmenyen mulik, semmi mason. Nem veletlen az sem, hogy a Lomtar mappa az valojaban egy specialis, csak CLSID ismereteben eloallithato mappa, olyan, mint a vezerlopult God mode-ja, abban a formajaban ahogy te latod, nem tarolodik sehol az egvilagon.

Ha ugyanis a paraszt kitorol egy tobbgigas fajlt, akkor az egy pillanat alatt csak ugy tortenhet meg, ha nincs szo masolgatasrol, csak egy szimpla athelyezesrol, csak ekkor lehet a kukas torles es a vegleges torles idoben teljesen transzparens, hiszen az athelyezes illetve a vegleges torles atomi muveletek, mig a masolas + torles nagyon nem atomi muvelet.
--
Blog | @hron84
Üzemeltető macik

Tudom, topic necromancer vagyok, de nem nyitnék újat, ha épp ezzel küzdök.

Szóval _tudom_, hogy a recycle mappának az adattal azonos partíción kell(ene) lennie és _tudom_, hogy ez a hiba nálam is, de a kérdés, hogy azóta át lehet-e ezt valahogyan hidalni?

Az adattárolási struktúra miatt egy samba share alatt több volume (filesystem) is be van mount-olva különböző könyvtárakba - a tárolási, megosztási struktúrán változtatni nem opció. Meg lehet valahogy mondani a Sambának, hogy pl. ne csak a share-re, hanem volume-onként kezeljen egy .recycle mappát az al-mappastruktúrára vonatkozóan?

szerk.: a vfs_crossrename használata részlegesen megoldja a problémát.

----------------------------------^v--------------------------------------
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"

sub

+1