[ Megoldva ] Mágikus sshfs hiba

Fórumok

Sshfs-sel kapcsolódok egy proftpd szerverhez - a mod_sftp modulon keresztül -, szinte teljesen gond nélkül.

Mindent rendben megcsinál, de ha egy fájlt felül akarok írni mc-vel, akkor hibaüzenetet ad az mc, hogy engedély megtagadva.

Törölni tudok a szerveren, létrehozni is tudok. A fájlt más néven felmásolni, és mv paranccsal átnevezni is tudom. Csak felülírni nem.

A feltöltő felhasználónak van írási és olvasási joga is a fájlokra.

Ráadásul úgy tudtam, az mc biztonságos módban másol, tehát nem rögtön felülírja a felmásolandó fájlt, hanem először ideiglenes néven feltölti, és csak fent nevezi át a végleges nevére. Ezek után még kevésbé értem, mi okozza a hibát, és ötletem sincs, hogyan oldjam meg, azaz hogyan tudjak felülírni fájlokat.

Próbáltam már a mountnál opciókkal, de egyik sem vezetett eredményre. Sem az umask, sem az sshfs workaround opciói, sem egyéb, amit esélyesnek találtam.

Találkozott már valaki hasonlóval? Tud rá megoldást? Vagy van valakinek valami ötlete?

Megoldás:

Az "AllowOverwrite on" értéket az sftp konfigjában külön is meg kell adni, akkor is, ha a proftpd.conf-ban már meg volt adva.

Hozzászólások

a proftpd  configban az  AllowOverWrite  beálltással lehet le van tíltva

Az a kerdes, hogy csak proftpd-n keresztul van ez a hiba, vagy sima ssh/sftp kapcsolaton keresztul is?
Ha csak proftpd, akkor proftpd config, loglevel emeles, es megnezni pontosan miert nem engedi.
Ha filerendszer, akkor meg file, es az azt tartalmazo konyvtar jogosultsagait megnezni (owner, group, attributes, extended attributes pl: appned only), esetleg az egesz particiot megnezni hogy van mountolva, stb.

Tudom, hogy ismert, de hatha nem jutott eszedbe: ha nem a config hibas, a jogok a kovetkezo modon mukodnek: ha torolni akarsz file-t, akkor az azt tartalmazo konyvtarra kell irasi jog (mert az modosul). Ha uj file-t akarsz letrehozni, ertelemszeruen akkor is a konyvtarbejegyzes modosul. Viszont ha a file tartalmat akarod modositani, ahhoz a file-ra vonatkozo iras jog kell. (ACL es tarsai persze tovabb bonyolitjak)

Amit irsz, az pont osszhangban van azzal, hogy a konyvtart tudod irni, de a file-t nem (lehet a group/owner is rossz, annak is lehet ilyen hatasa).

A strange game. The only winning move is not to play. How about a nice game of chess?

Ennél trükkösebb a probléma. Ugyanis, ha létrehozok egy mappát, abban gond nélkül tudok törölni fájlt és újat létrehozni, tehát a mappát tudja módosítani, csak a fájlt nem. A jogok és tulajdonosok egyébként fájlok és mappák esetében is rendben vannak.

Most kipróbáltam egy egyszerű cat a.txt >> b.txt parancsot a felcsatolt fájlrendszeren két létező fájllal, de ez esetben is hibát ad.

Sikerült megtalálnom az egyetlen bejegyzést, amit a naplóban hagy egy ilyen hibás append esetén a proftp:

OPEN command for '/web/www/b.txt' blocked by 'APPE' handler

Erre 1 db találatot ad a Google - azért ez is ritkaság - ami szerint az "AllowStoreRestart" értékét kell "on"-ra állítani. Ott ez segített is a problémán.

Nálam sajnos nem. :(

Mindent rendben megcsinál, de ha egy fájlt felül akarok írni mc-vel, akkor hibaüzenetet ad az mc, hogy engedély megtagadva.

Ha masolas elott a copy ablakban a "Preserve attributes"-ot kikapcsolod akkor is hibat dob?

Aha, bar akettonek nincs sok koze egymashoz.

Mondjuk kerdes, hogy ez egyaltlaan tamogatott-e. Nem tudom hogy ezt hogyan intezi. Mert itt egy open + seek muvelet megy vegbe, amit szvsz. a protokoll csak ugy siman nem tamogat. 

A felulirasnak mondjuk mennie kell...

Ha ez tamogatott akkor fel kellene huzni a proftpd-t debug loglevelre es megnezni ugy a log tartalmat.

Sokat próbálgattam, mire kiderült, hogy hiába állítottam be a proftpd.conf fájlban az "AllowOverwrite on" értéket, az sftp modul saját konfigjában ezt külön újra meg kell adni.