Van egy fájlszerver egy irodában, egy ubuntu 6.06
Van rajta kb 2-300 GB adat, kb. 100.000 fájlban.
Egy chello classic-on keresztül csatlakozik a netre, szóval a letöltés onnan elég gyér.
Az a feladatom, hogy találjak egy olyan webes felületet, amin keresztül keresni és letölteni lehet onnan viszonylag gyorsan ezen fájlok nevében.
A sok fájl miatt a find . -name "*holvagy*" típusú megoldások nem futnak le emberi időben, valami olyasmi kellene, ami leindexeli a fájlok neveit és abban keres.
Tud valaki erre valamilyen megoldást?
- 1641 megtekintés
Hozzászólások
findutils (legalábbis Debianon így hívják) csomag - updatedb+locate
Én ezt szoktam használni. Bár az is igaz, hogy lusta dög vagyok: régebben használt rendszereken automatikusan lefutott az updatedb, az etch-en meg nem hajlandó, mivel nem fut 7x24-ben és a crontab.daily-ben van elhelyezve az indítása... :)
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
Ez azért nem jó, mert az updatedb/locate-val vannak gondok, nem egy fájlt nem hajlandó leindexelni....
Ami elől menekülnek, az után szaladnak.
- A hozzászóláshoz be kell jelentkezni
Alapbeállítással azokat a könyvtárakat katalogizálja amelyekre minden usernek van olvasási joga - a nobody user nevében fut cron-ból.
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
A findutils nem rossz, a baj csak az, hogy cron-bol megy az updatedb, tehat ha valaki letrehoz egy uj fajlt, akkor az nem kerul be az adatbazisba, csak ha mar lefutott az updatedb. Inkabb valami olyasmi kellene, mint a Beagle, ami daemonkent fut, es azonnal indexel. Nemtom, hogy van-e parancssoros valtozata. Hm?
- A hozzászóláshoz be kell jelentkezni
Nem akarok kötekedni, de az eredeti kérdésben erről szó sem volt ;)
Beagle-t sajna nem ismerem, nem tudom, mit tud6.
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
Jaja, a beagle eszi az eroforrasokat, a findutils meg nem. Ez is fontos szempont. Csak egy irodaban en ugy kepzeltem, hogy Gizike reggel megcsinalja az adocsalas.xls fajlt, amit Mancikanak delutan meg kell talalnia, hogy le tudja torolni, mielott jon az ellenorzes. Ha a cron ejszaka fut le, akkor Mancika igencsak meg fog izzadni... Bocs az eletszeru peldaert :)
- A hozzászóláshoz be kell jelentkezni
:DDDDDDDDDDDDDDDDDD
Na jó, de itt valami webes applikációról volt szó, ha jól értem, viszonylag statikus file rendszerrel.
Nomeg az updatedb-t sem kötelező naponta egyszer futtatni. Más kérdés, hogy amíg fut, igencsak le tudja ültetni a gépet :)
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
http://php.resourceindex.com/Complete_Scripts/File_Management/
Meg szerintem nezz korul a guglin is. Mi lenne ha csak weben keresztul tolthetnenek fel a jonepek es akkor automatikusan bekerulne az indexbe a file?
- A hozzászóláshoz be kell jelentkezni
Ez egy jó megoldás, csak az a baj, hogy a legtöbb fájlt vagy samba megosztáson keresztül, vagy ftp-vel rakják hozzá a sok-sok fájlhoz.
Ezért kell valami olyan, hogy cron-ból fusson az indexer része.
Ami elől menekülnek, az után szaladnak.
- A hozzászóláshoz be kell jelentkezni
Egy olyan megoldashoz mit szolnal, hogy filerendszer szinten nezze egy daemon, hogy mi valtozott az adott konyvtarstrukturaban, majd az adott filet azonnal adja hozza az indexhez? Biztos van ilyen :)
- A hozzászóláshoz be kell jelentkezni
Pl. a korábban emlegetett Beagle ha jól értem.
;)
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
Nem ismerem a Beaglet, bar most megneztem es az hatarozottan nem ilyennek tunik :)
- A hozzászóláshoz be kell jelentkezni
Lehet... a korábbi hozzászólást leszámítva csak vírusként találkoztam vele ;)
--
Fel! Támadunk!
- A hozzászóláshoz be kell jelentkezni
Jaja, tényleg nem olyan, csak olyasmi. Ez a fajlokon belül is indexel, szóval kicsit túlteljesíti a feladatot. Ehhe. Az a famd cucc lesz az. A findes ötletet 20 percenkent remelem viccnek szantatok :)
- A hozzászóláshoz be kell jelentkezni
Akkor valamilyen fam/gamin kliens kell neki, mint a fileschanged (bár ezzel sok adat esetén nincsenek jó tapasztalataink).
- A hozzászóláshoz be kell jelentkezni
Jah, pont ilyet keresek.
Ami elől menekülnek, az után szaladnak.
- A hozzászóláshoz be kell jelentkezni
Kissé durva, de talán segíthet:
cronból 20 percenként find /path-to-share > $AKARMI
aztan grep pattern $AKARMI
Így a find csak 3x futna le óránként. Esetleg ezt még finomítani valahogy? :)
... hogy eljussunk oda, ahova emberi kéz még nem tette be a lábát.
- A hozzászóláshoz be kell jelentkezni
Itt egy leírás, kis példa C programmal a FAM-ról (File Alteration Monitor):
http://www.linuxdevcenter.com/pub/a/linux/2004/12/16/fam.html
Elindítod a famd szervert, a kliens progi megkéri, hogy ezeket a könyvtárakat és fájlokat figyelje, és szóljon neki, ha valami történt - a kliens pl beleteszi egy adatbázisba a módosításokat...
Ha jól gugliztam, van PHP-s könyvtár is hozzá.
- A hozzászóláshoz be kell jelentkezni
Ez hasznos link! El is mentem. Arra azért kíváncsi lennék, hogy rekurzív figyelésre képes-e, mert a fam alapból nem képes rá (a weboldala szerint), max azt tudja megmondani, hogy hány elem van a gyermekkönyvtárban.
http://oss.sgi.com/projects/fam/faq.html#limitations
mondjuk ez a project ad rá módot ha jól értettem, hogy több könyvtárat is meg lehessen neki adni, de az bolyolult könyvtárstruktúra esetén szerintem kellemetlen lehet, nem is beszélve az új könyvtárakról...
Tény, hogy viszont, hogy ez eddig a leghasználhatóbb megoldás, ha alkalmazható.
Esetleg más project, ami a kernel DNOTIFY-ra épül?
edaile: ha sikerül, feltétlen írd meg kérlek!
... hogy eljussunk oda, ahova emberi kéz még nem tette be a lábát.
- A hozzászóláshoz be kell jelentkezni
Amennyire tudom, a dnotify elég elavult. Mostanában inkább az inotify a menő. Meg a FAM helyett is van egy másik (újabb) project, a gamin. http://www.gnome.org/~veillard/gamin/
- A hozzászóláshoz be kell jelentkezni
Megtaláltam. Ez kell nekem. Köszi a segítséget.
http://www.zaval.org/products/file-search/index.html
Ami elől menekülnek, az után szaladnak.
- A hozzászóláshoz be kell jelentkezni