Raspberry PI als Upload Server

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Raspberry PI als Upload Server

    Anzeige
    Hallo ihr Lieben,

    ich brauche gerade mal ein paar Tipps als Anfänger in Sachen Raspberry PI.

    Nachdem mein Nexus 7 durch das Update auf Lollipop unbrauchbar geworden ist (immer wieder ausgegangen beim Upload) und es nach dem Downgrade gar nicht mehr startet (erneutes flashen bringt keine Besserung, er hängt sich beim Flashen des Systems grundsätzlich immer wieder auf, also daher denke ich mal ein hardwarefehler) will ich mir jetzt einen Raspberry PI als Uploadserver hinstellen.

    Welche Distribution ist dafür am besten? RaspBian? Gibt ja so viele verschiedene. Welche Pakete brauche ich?

    Es würde ja schon reichen das OS auf die SD Karte zu ziehen, den Pi an den Router anzustecken und dann per Netzwerk darauf zugreifen oder?

    Oder wie macht ihr Raspberry Besitzer das mit YouTube?

    Danke schonmal :)
  • Ah super, ich danke euch. Damit kann ich arbeiten! :)

    gerade die Videotutorial Playlist ist stark. Dann werde ich mich da mal am Dienstag abend oder am WE dran machen wenn mein PI da ist und ich Zeit habe. Glaube aber den Upload würde ich ggf eher über die Scripte laufen lassen, dann kann ich gleich Tags, Beschreibungen und keywords einsetzen lassen, was mir dann später nach dem Upload die Zeit spart.
  • allinonemovie schrieb:

    Es ist viel einfacher per Filezilla die Videos auf den Pi zu ziehen und mit RemoteDesktop über den Browser auf der normalen YT Seite hochzuladen...
    Statt Filezilla kannst Du auch einfach einen SMB-Server einrichten, dann kannst Du direkt per Windows Explorer o.ä. zugreifen. Und wenn man die Videos nachts hochladen möchte um tagsüber das Internet nicht zu blockieren ist es definitiv praktischer, ein Konsolen-Tool in Verbindung mit einem Cronjob zu nutzen.
  • Ringelnatz schrieb:

    Und wenn man die Videos nachts hochladen möchte um tagsüber das Internet nicht zu blockieren ist es definitiv praktischer, ein Konsolen-Tool in Verbindung mit einem Cronjob zu nutzen.
    Das ist der Plan! Kann ich notfalls auch zwei Uploads parallel laufen lassen? oder eine Art Auftrags Queue? Wenn ich Nachts schlafe und am nächsten morgen zur Arbeit geh komm ich ja erst um 20 Uhr quasi erst an den Rechner, dann kann die Zeit von 00:00 bis 19 uhr ein Videoupload stattfinden.

    Optimal wäre natürlich USB Stick dran stecken und ein auto Upload aller auf dem Stick befindlichen Dateien. Aber ok, das wäre wohl zu einfach XD
  • Major Brot schrieb:

    oder eine Art Auftrags Queue?
    So mache ich das, habe mir dafür ein kleines Shell-Skript geschrieben, was jede Nacht ausgeführt wird. Ist mehr quick & dirty, mit Shell-Programmierung hab ich mich nie wirklich befasst:
    Spoiler anzeigen

    Shell-Script

    1. #!/bin/sh
    2. for i in $(ls /home/pi/ytvideos); do
    3. if [ -n "`echo $i | grep \"\.\"`" ]; then
    4. echo $i hochladen ...
    5. su -c 'google youtube post /home/pi/ytvideos/'$i' --title "'$i'" --access private --category Games' pi
    6. echo "Loesche Datei ..."
    7. rm /home/pi/ytvideos/$i
    8. echo "Sende Mail ..."
    9. echo "Dein Video $i wurde versucht hochzuladen." | mail -s "Youtube-Upload fertig" mail@123.de
    10. echo ... fertig
    11. else
    12. echo "Sende Mail, dass Video mit Leerzeichen vorhanden sind ..."
    13. echo "Der Dateiname deines Videos enthaelt Leerzeichen und kann nicht hochgeladen werden." | mail -s "Youtube-Upload FEHLGESCHLAGEN" mail@123.de
    14. break
    15. fi
    16. done
    17. echo "Alle Videos hochgeladen."
    Alles anzeigen

    Ja, der Code ist verbesserungsfähig, funktioniert aber, vorausgesetzt, im Dateinamen sind keine Leerzeichen enthalten.

    Und statt über einen USB-Stick übertrage ich die Videos über den Windows-Explorer auf eine Netzwerkfreigabe des Pis. Ist meiner Meinung nach noch komfortabler ;) Und alle Videos, die in dem Ordner liegen, werden nacheinander hochgeladen.
  • Danke dir, das ist das was ich suche :)
    Ich versteh zwar die for Schleife aufgrund meiner früheren C und C++ Erfahrungen, aber ich kann damit noch nicht viel anfangen wie ich dann dieses Script mit dem Python Script zum Upload verbinde.
    Ich schätze aber mal dass dieses Script von dir als geplante Aufgabe zu ner bestimmten Zeit abläuft? Glaube ich würde es dann manuell anstoßen bevor ich den PC runter fahre. :)

    Ich wart erstmal auf die PI Sachen, dann werde ich den Mittwoch oder Donnerstag eingerichtet haben, jetzt kann ich das mit den Scripten nicht testen. Davon mal ab sind meine letzten Linux Erfahrungen knapp 10 Jahre zurück XD

    EDIT: ich stöber gerade bei Linux Praxisbuch Wiki in Sachen Shell Scripting.
    Also ist das $ die Variable, die im Videoordner liegt. Soweit komme ich klar.
    Ach so, du nimmst Google Command Lines. ok...aaaahhhhhhhh.......jetzt hat es klick gemacht. Also muss ich irgendwie die Google CL Sachen installieren und dort vermutlich meine Account Daten hinterlegen oder? Jetzt steig ich langsam durch das Script ^^

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Major Brot ()

  • Ringelnatz schrieb:

    allinonemovie schrieb:

    Es ist viel einfacher per Filezilla die Videos auf den Pi zu ziehen und mit RemoteDesktop über den Browser auf der normalen YT Seite hochzuladen...
    Statt Filezilla kannst Du auch einfach einen SMB-Server einrichten, dann kannst Du direkt per Windows Explorer o.ä. zugreifen. Und wenn man die Videos nachts hochladen möchte um tagsüber das Internet nicht zu blockieren ist es definitiv praktischer, ein Konsolen-Tool in Verbindung mit einem Cronjob zu nutzen.


    Ich habe das auch über den Explorer gemacht, aber das ist bei mir ein bisschen verbuggt. Das stürzt immer mal ab oder geht auf "Keie Rückmeldung"

    Ringelnatz schrieb:

    Major Brot schrieb:

    oder eine Art Auftrags Queue?
    So mache ich das, habe mir dafür ein kleines Shell-Skript geschrieben, was jede Nacht ausgeführt wird. Ist mehr quick & dirty, mit Shell-Programmierung hab ich mich nie wirklich befasst:
    Spoiler anzeigen

    Shell-Script

    1. #!/bin/sh
    2. for i in $(ls /home/pi/ytvideos); do
    3. if [ -n "`echo $i | grep \"\.\"`" ]; then
    4. echo $i hochladen ...
    5. su -c 'google youtube post /home/pi/ytvideos/'$i' --title "'$i'" --access private --category Games' pi
    6. echo "Loesche Datei ..."
    7. rm /home/pi/ytvideos/$i
    8. echo "Sende Mail ..."
    9. echo "Dein Video $i wurde versucht hochzuladen." | mail -s "Youtube-Upload fertig" mail@123.de
    10. echo ... fertig
    11. else
    12. echo "Sende Mail, dass Video mit Leerzeichen vorhanden sind ..."
    13. echo "Der Dateiname deines Videos enthaelt Leerzeichen und kann nicht hochgeladen werden." | mail -s "Youtube-Upload FEHLGESCHLAGEN" mail@123.de
    14. break
    15. fi
    16. done
    17. echo "Alle Videos hochgeladen."
    Alles anzeigen

    Ja, der Code ist verbesserungsfähig, funktioniert aber, vorausgesetzt, im Dateinamen sind keine Leerzeichen enthalten.

    Und statt über einen USB-Stick übertrage ich die Videos über den Windows-Explorer auf eine Netzwerkfreigabe des Pis. Ist meiner Meinung nach noch komfortabler ;) Und alle Videos, die in dem Ordner liegen, werden nacheinander hochgeladen.



    Wenn das so klappt, dass du nur die Dateien in den Ordner ziehen musst und nicht jedes mal für jede Datei Titel, Beschreibung usw. festlegen musst ist das genau das was ich suche :D Das war für mich immer das Problem. Ich habe bei meiner Methode einfach immer meine Stadarteinstellungen von Youtube gehabt und am PC Titel, Beschreibung usw. angepasst. Funktioniert das bei dir auch so?
  • Major Brot schrieb:

    Also muss ich irgendwie die Google CL Sachen installieren und dort vermutlich meine Account Daten hinterlegen oder?
    Bei der ersten Verwendung von Google-CL wird ein Link angezeigt, den man im Browser aufrufen und sich einloggen muss. Auf diese Weise muss kein Passwort irgendwo im Klartext hinterlegt werden, sondern lediglich der Auth Token.

    allinonemovie schrieb:

    Wenn das so klappt, dass du nur die Dateien in den Ordner ziehen musst und nicht jedes mal für jede Datei Titel, Beschreibung usw. festlegen musst ist das genau das was ich suche
    Der Titel entspricht dem Dateinamen des Videos. Er muss - genau wie die Beschreibung - nachträglich abgeändert werden. Daher wird das Video ja auch auf privat gestellt. Das System bringt den Vorteil, über Nacht uploaden zu können ohne den eigenen Rechner laufen lassen zu müssen. Am Tag selbst trägt man dann Titel etc. und veröffentlicht das Video. Dies ließe sich natürlich auch automatisieren, wäre jedoch aufwändiger.
  • Ringelnatz schrieb:

    Bei der ersten Verwendung von Google-CL wird ein Link angezeigt, den man im Browser aufrufen und sich einloggen muss. Auf diese Weise muss kein Passwort irgendwo im Klartext hinterlegt werden, sondern lediglich der Auth Token.


    Ok, danke und wie mache ich das? Ganz blöd gefragt. Bin gerade auf der Install Seite, überblicke aber nicht wie das geht :/

    Hab die .deb geladen, und über das Terminal installiert. Aber wie gehts weiter XD Tut mir leid für meine Blödheit was das Thema angeht.,
  • Ich bekomme nach Specify User folgendes:

    Quellcode

    1. Traceback (most recent call last):
    2. File "/usr/bin/google", line 991, in <module>
    3. main()
    4. File "/usr/bin/google", line 977, in main
    5. run_once(options, args)
    6. File "/usr/bin/google", line 718, in run_once
    7. googlecl.write_devkey(options.devkey)
    8. File "/usr/lib/pymodules/python2.7/googlecl/__init__.py", line 276, in write_devkey
    9. with open(key_path, 'w') as key_file:
    10. IOError: [Errno 2] No such file or directory: '/home/pi/.local/share/googlecl/yt_devkey'


    Python Gdata und Google cl sind instilliert.

    EDIT OK, wer googlet der findet. Das Verzeichnis muss erstellt werden.

    So, danke @Ringelnatz für die Hilfe :) Dein Script geht aber leider nicht :/ Zeile 2 unexpecing "do". Ich schau mal ob ich das hinbekomme. Aber es geht. ich kann jetzt über google cl hochladen.

    muss das ganze dann nur noch als cronjob einrichten der meinetwegen alle stunde gestartet wird und so brauch ich einfach nur noch über samba die Daten in der Netzwerkfreigabe rüberschieben :D Geiles Teil der pi.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Major Brot ()

  • Mit sh upload.sh. Getestet habe ich es schon mit ./upload.sh, aber hier kjommt dann mangelnde Berechtigung

    aber weder als normaler User, noch mit root rechten führt er es aus.

    Ich habe den youTube Ordner so benannt wie im Script. Vielleicht muss ich da noch irgendwelche Rechte zuweisen?