oc.at as a filesystem :O - Seite 2

Seite 2 von 3 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/oc-at-as-a-filesystem-o_248122/page_2 - zur Vollversion wechseln!


-=Willi=- schrieb am 27.01.2017 um 11:48

@GAT Bash versucht dir das Script als Bash-Script auszuführen. Entweder das Script per Python-Interpreter starten oder das Shebang "#!/usr/bin/env python" einsetzen. Scheint ja Python 2 zu sein was mich ein bisschen traurig macht :( ;).

Edit: Aso, hast es eh scho selber gecheckt :D. Wie mat sagt, Libs nachinstallieren.


XeroXs schrieb am 27.01.2017 um 11:55

cool :cool:

Auch von mir ein Sternchen auf Github :)


GrandAdmiralThrawn schrieb am 27.01.2017 um 12:02

Ok, requests per yum/rpm und bs4 per python-pip nachinstalliert, fusepy hab ich ja schon. Auf CentOS 6.8 jetzt:

Code:
$ python ./ocatfs.py ./localmountpoint
Traceback (most recent call last):
  File "./ocatfs.py", line 70, in <module>
    class OcatFs(fuse.LoggingMixIn, fuse.Operations):
AttributeError: 'module' object has no attribute 'LoggingMixIn'
Auf FreeBSD startet er und wartet dann einfach ewig nur (als root, wegen Rechten, hab hier die angegebenen Packages allesamt per python-pip nachinstalliert). Da kommen keine Fehlermeldungen.

Irgendwie rennt das ned so smooth oder ich bin einfach ein bisserl zu deppert. :rolleyes:


t3mp schrieb am 27.01.2017 um 12:06

Awesome, muss ich packagen. :D


mat schrieb am 27.01.2017 um 12:06

Die Version von fusepy ist zu alt. Am besten du holst dir die neueste über pip.


GrandAdmiralThrawn schrieb am 27.01.2017 um 12:11

Tjo, pip installiert mir fusepy 2.0.4. Auch wenn ich pip selber auf 9.0.1 hochziehe krieg ich nichts neueres für Python 2.6.6. Auf FreeBSD mit 2.7.13 ists dasselbe, fusepy-2.0.4. Der zuletzt gezeigte Fehler auf CentOS 6 bleibt. :(

Werd ich wohl noch mehr rumpfuschen müssen. Ideen?


issue schrieb am 27.01.2017 um 12:44

Zitat von -=Willi=-
@GAT Bash versucht dir das Script als Bash-Script auszuführen. Entweder das Script per Python-Interpreter starten oder das Shebang "#!/usr/bin/env python" einsetzen. Scheint ja Python 2 zu sein was mich ein bisschen traurig macht :( ;).

Edit: Aso, hast es eh scho selber gecheckt :D. Wie mat sagt, Libs nachinstallieren.

Grundsaetzlich sollte es python3 sein. ich habs zumindest nur mit py3k ausprobiert.
Auf Arch ist python3 default, drum kann ich es einfach mit python foo.py starten

@GAT: die test_ocatfs.py haetten unit tests werden sollen, der wille war da, das fleisch war schwach.
Ich werds daheim mal mit py27 ausprobieren und reporten.

fusepy und beautifulsoup sind die aktuellsten versionen ausm pypi
wenn man das git repo auscheckt sollte man einfach mit
Code:
pip install -r requirements.txt 
die deps installiert bekommen
Sollte man py2 und py3 installiert haben, aufpassen, dass man auch die richtige pip variante erwischt. bei arch heisst pip fuer py3 pip3


GrandAdmiralThrawn schrieb am 27.01.2017 um 13:38

Ok, aus jetzt, ich hab aufs neueste Python 3.6 hochgezogen und...:

Code:
# pkg install python36
# wget [url]https://bootstrap.pypa.io/get-pip.py[/url]
# python3.6 ./get-pip.py
# rm -f ./get-pip.py
# pip3.6 install requests bs4 fusepy
$ python3.6 ./ocatfs.py ./localmountpoint
Es hilft ned. Python rennt ewig. Ein kill <pid> geht auch nicht mehr durch, es braucht kill -9.

Vielleicht kanns mit dem FreeBSD Fuse Layer nicht? kA.

Und am CentOS gibts halt kein Python3, najo, ich hab mir das 3.4er aus'm EPEL Repo geholt, pip und die Packages nachinstalliert, und hab hier am Linux dasselbe Verhalten wie am UNIX: Er rennt einfach ewig?!

Und wenn ich keinen Mountpoint als Argument angebe, dann rennt er fehlerlos und terminiert sofort wieder. Nur mounted er auch nix?

Leider steht in der README.md auch ned drin, wie man das Ding eigentlich benutzt... --help hat's auch ned.

Mach ich was falsch im Aufruf (jetzt als root)?

Code:
# python3.4 ./ocatfs.py ./localmountpoint
Das Dir für'n Mountpoint gibt's natürlich auch vorher schon. Requirements sind laut # pip install -r requirements.txt erfüllt.


-=Willi=- schrieb am 27.01.2017 um 13:44

Zitat von IsSuE
Grundsaetzlich sollte es python3 sein. ich habs zumindest nur mit py3k ausprobiert.
Auf Arch ist python3 default, drum kann ich es einfach mit python foo.py starten

Achso. Dann würd ich die Klassen aber eher so schreiben:
Code:
class Foo:
    pass
statt
Code:
class Foo(object):
    pass
Du musst nicht mehr explizit von object ableiten in Python 3.


mat schrieb am 27.01.2017 um 13:59

GAT, du brauchst ein & zum Schluss beim Mount, damit der Task im Hintergrund weiterläuft.


GrandAdmiralThrawn schrieb am 27.01.2017 um 14:07

Ah, das issn Foreground Process? Danke! Muß man wissen! Jop, Funktioniert auf CentOS 6 mit von EPEL nachgezogenem Python 3.4! :) Exzellent!

Auch auf FreeBSD UNIX funktioniert das mit Python 3.4 und 3.6 einwandfrei!

Danke an alle für die Tipps! :cool:

Vielleicht sollte man das in die Readme dazuschreiben, damit der unbedarfte User auch weiß wie man das Ding zu benutzen hat. Super, endlich oc.at aufm vt(4) Terminal lesen. uglyspitze_220020.gif


issue schrieb am 27.01.2017 um 14:17

Zitat von GrandAdmiralThrawn
Ah, das issn Foreground Process? Danke! Muß man wissen! Jop, Funktioniert auf CentOS 6 mit von EPEL nachgezogenem Python 3.4! :) Exzellent!

Auch auf FreeBSD UNIX funktioniert das mit Python 3.4 und 3.6 einwandfrei!

Danke an alle für die Tipps! :cool:

Vielleicht sollte man das in die Readme dazuschreiben, damit der unbedarfte User auch weiß wie man das Ding zu benutzen hat. Super, endlich oc.at aufm vt(4) Terminal lesen. uglyspitze_220020.gif

Das ganze ist gestern nach ein paar bier entstanden. Ich werd das heute mal ein bisserl cleanen ;)

@willi: ah, stimmt. ich verwend in der arbeit py27, drum bin ich das object subclassen so gewoehnt.

Freut mich, dass es wirklich wer ausprobiert


GrandAdmiralThrawn schrieb am 27.01.2017 um 14:20

Kriegscht noch a Sterndi! :rolleyes: :D

Wär halt nice wenns mit Python 2.7/2.6 auch noch laufen könnt! Luxusfeatures wie Login und Posten müssen ja keine Eile haben. :p


XeroXs schrieb am 27.01.2017 um 14:24

Zitat von GrandAdmiralThrawn
Luxusfeatures wie Login und Posten müssen ja keine Eile haben. :p
Und wie soll ma dann im Babes Home browsen im Terminal? ;) :D


GrandAdmiralThrawn schrieb am 27.01.2017 um 14:28

Immer diese GUI User!

libcaca + python3 Bindings => ASCII Art? :rolleyes: Brauchst auch noch. :p

Weil hat eh fast jeder schon hochauflösende grafische Terminals statt 80×25? ;)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025