Ga naar inhoud


Automatisch NFS harddisk mounten op dreambox


Aanbevolen berichten

Geplaatst:

Onderwerp zegt het eigenlijk al.

 

Hoe kan je de dreambox automatisch naar de NFS share mounten. Handmatig mounten werkt perfect. Maar het zou makkelijk zijn als die het automatisch deed.

 

En dan wel zo, dat wanneer de NFS server uitstaat de dreambox wel gewoon functioneerd (cq opstart)

 

Ik heb zelf al wat geprobeerd met iets wat ik via google gevonden had maar het resultaat was een niet meer startende dreambox <img src="/ubbthreads/images/graemlins/kweetniet.gif" alt="" />


Geplaatst:

ik heb bij mij een scriptje (mount_hdd) gemaakt met als inhoud zoiets als:

 

mount ...

sleep 2;

wget -q http://localhost/cgi-bin/reloadRecordings

 

Dat scriptje roep ik in de achtergrond aan vanuit start_enigma (in /var/tuxbox), voor de commando's die enigma zelf starten, maar na de ifconfig die het netwerk start.

 

Dus zoiets als:

 

ifconfig ...

( sleep 5 ; /pad/mount_hdd ) &

 

voor het case-statement dat enigma start.

 

Ik zit nu niet thuis, dus ik kan de preciese parameters op de plaats van de "..." even niet opzoeken, maar die zijn voor jou toch anders (en als je het via telnet aan de gang gekregen hebt, weet je wat je daar in moet vullen). Het kan ook zijn dat het script dat enigma opstart in je image anders heet.

Geplaatst:

Mijn "start_enigma" ziet er zo uit..

 

Code:
#!/bin/sh[ -x /hdd/root/startup.sh ] && {  # Put the programs you want to run in /hdd/root/startup.sh  # These will be started when enigma is running for 30 seconds.  # Within these 30 seconds the network should be running.  ( sleep 30; /hdd/root/startup.sh ) &}/bin/update_tmp.shwhile :do  /bin/enigma  case "$?" in    0)      echo "Halt"      /bin/update_var.sh      sync;/sbin/halt      ;;    1)      echo "reboot"      /bin/update_var.sh      sync;/sbin/reboot      ;;    2)      echo "Restart"      ;;    *)      echo "Crash"      /bin/update_var.sh      sync;/sbin/halt      ;;  esacdone

 

Om het in /hdd/root/startup.sh te zetten heeft weinig zin aangezien ik die dus juist wil mounten <img src="/ubbthreads/images/graemlins/tongue.gif" alt="" />

 

Ik heb in /var/tuxbox een file gemaakt 'mount_hdd' met daarin

 

Code:
mount -t nfs -o wsize=4096,rsize=4096,nolock 10.0.0.23:/dreambox /hddsleep 2;wget -q http://localhost/cgi-bin/reloadRecordings

 

Ik heb hem maar ge CHMOD naar 777 aangezien ik niet weet wat voor rechten die moet hebben. Misschien kan iemand me dat ook vertellen EN of die wel goed staat daar in de /var/tuxbox

 

Nog iets als ik nu een nieuwe image er op zet moet ik dit zeker ook opnieuw ff uppen.

 

Alvast bedankt!!!

Geplaatst:

Maakt niet zoveel uit waar je die mount_hdd (misschien beter mount_hdd.sh te noemen, bedenk ik me nu) neerzet. Ik heb zelf een directory /var/scripts, maar een bin directory ergens is misschien ook wel een logische plaats.

 

Het script aanroepen in /hdd/root/startup.sh werkt inderdaad niet, maar laat wel de constructie zien om het mounten in de achtergrond te laten gebeuren terwijl enigma ondertussen ook opstart. Alleen moet je voordat je het mount_hdd sciptje uit kunt voeren eerst zorgen dat het netwerk opgestart wordt (met het ifconfig commando). Normaal gesproken doet enigma dit zelf, maar beter om het vooraf even te doen voor het geval enigma nog niet zover is wanneer de mount uitgevoerd wordt. De sleep voor het uitvoeren van het mount_hdd script is ervoor om ifconfig te tijd te geven het netwerk aan de gang te krijgen.

 

Dus de ifconfig en (sleep 5 ; pad/mount_hdd) & commandos komen ergens voor de while in je start_enigma (maakt niet zoveel uit waar precies).

 

En inderdaad: na een image upgrade met flash erase moet je dit weer even opnieuw updaten. Ik maak meestal even (via ftp) een kopie van /var op m'n pc voordat ik een flash-erase doe, zodat ik makkelijk files weer terug kan zetten.

Geplaatst:

Ben weer net zo ver als de eerste keer dat ik het deed. Vast loper tijdens de boot. Je ziet nog netjes het boot logo daarna blijft het zwart en zie je in het LCD scherm "Dream Multimedia 1.06"

 

(Flash erase gedaan en het werkt weer alleen de mount nog niet)

Geplaatst:

Ben je er zeker van dat je alle "&" tekens aan het eind van commando-regels goed hebt overgenomen (met name die aan het eind van de regel die het mount_hdd script start)? Die zorgen er namelijk voor dat het script in de achtergrond opgestart wordt, zodat enigma verder kan met booten. Doe je dit niet, dan probeert het wget commando in het script contact te zoeken met enigma, en die is dan nog niet opgestart. Dus wget blijft wachten, en zolang het script nog niet is afgelopen start enigma niet.

 

Je kunt ook even uitsluiten dat het het ifconfig commando is (misschien dat die andere parameters nodig heeft), door alleen de ifconfig regel er neer te zetten en (nog) niet de " (sleep 5 ; mount_hdd.sh ) & ". Als het dan hangt dan is het de ifconfig regel, zoniet, de sleep/mount regel.

Geplaatst:

Hoi,

 

Ik doe het zo in start_enigma :

 

#!/bin/sh

 

sleep 5

mount -t nfs -o wsize=2048,rsize=2048,nolock 192.168.0.5:/dreambox /hdd

 

 

 

De 1ste sleep is ervoor zodat de dhcp client de tijd heeft een IP te requesten hier op de DHCP server. Als je geen DHCP server hebt draaien maar met een statisch IP werkt dan zal je voor de mount de IP moeten toekennen bijv zo :

 

ifconfig eth0 192.168.0.100 netmask 255.255.255.0

 

Het is belangrijk dat de mount er is alvorens enigma opstart anders werkt het niet in enigma

 

Succes !

 

Peter

Geplaatst:

Ook mogelijk. Dan heb je de wget ook niet nodig. Alleen dan heb je wel de "sleep 5" in het "kritische pad" zitten en duurt het opstarten dus wat langer. Aangezien ik behalve de movie directory geen andere dingen op m'n nfs hdd heb staan, die enigma mogelijk nodig zou hebben, doe ik het net even anders. Keuze naar eigen smaak, zullen we maar zeggen.

 

Het niet in enigma "werken" los ik op via de wget: die leest /hdd/movie/recordings.epl opnieuw in. Als je meer dingen op je hdd hebt staan heb je natuurlijk kans dat je meer moet doen.

Geplaatst:
Citaat:
Ook mogelijk. Dan heb je de wget ook niet nodig. Alleen dan heb je wel de "sleep 5" in het "kritische pad" zitten en duurt het opstarten dus wat langer. Aangezien ik behalve de movie directory geen andere dingen op m'n nfs hdd heb staan, die enigma mogelijk nodig zou hebben, doe ik het net even anders. Keuze naar eigen smaak, zullen we maar zeggen.

Het niet in enigma "werken" los ik op via de wget: die leest /hdd/movie/recordings.epl opnieuw in. Als je meer dingen op je hdd hebt staan heb je natuurlijk kans dat je meer moet doen.


Die sleep 5 is er omdat er anders gemount wordt zonder dat er al een IP is en dan failt het mount commando. Wellich kan die tijd wat korter maar de DB staat hier eigenlijk standby dus die paar seconden zeggen me niet zoveel

Peter
Geplaatst:

Die sleep 5 staat er bij mij ook, maar met een & erachter (zie m'n eerste post in dit topic). Scheelt gewoon weer een beetje. Maar plindeman's versie is wel simpeler, dus om het eerst een aan de gang te krijgen zou ik die versie zeker aanraden.

Geplaatst:

Ik heb zoiets dit script kan ik met de blauwe knop met

met scriptplugin aanroepen

 

Erg handig click mount click unmount

 

 

#!/bin/sh

a=`df |grep -c hdd`

if [ $a -gt 0 ]

then

echo "drive will be unmounted"

umount /hdd

sleep 1

else

mount -t nfs -o nolock 192.168.0.21:/dreambox /hdd

echo "drive mounted"

sleep 1

fi

 

 

Egon

 

Geplaatst:

Goed plan om een unmount/mount onder de blauwe knop te gaan zetten.

Maar waar zet je die script precies zodat ik hem ook onder de blauwe knop kan oproepen ?

 

 

Geplaatst:

De plaats waar de script-plugin zoekt naar het script staat geef je zelf op in de config file van de script-plugin.

 

Vraagje: is alleen het mounten van de hdd genoeg? Moet je dan niet ook je recordings.epl opnieuw laten inlezen als je movie directory op die hdd staat? Ik heb wel eens gehad dat de recordings.epl op de net gemounte hdd overschreven werd met whatever enigma nog in het geheugen had staan (niets over het algemeen). Normaal gesproken gebruik je daar "wget -q http://localhost/cgi-bin/reloadRecordings" voor, maar dat gaat mis via de script plugin, zie dit topic.

Geplaatst:

Hmm bedankt voor de tip ik was inderdaad vergeten

om na de mount een reload te te doen.

 

Je kan de files wel terug vinden en afspelen

maar zonder die cgi reload is dat movies overzicht inderdaad leeg

 

Heb al wel gezien dat als ik de opdracht tot reload geef

op de pc de lijst er weer netjes instaat

 

Maar eens even proberen om hier omheen te knutselen

 

Egon.

 

 

 

 

 

Geplaatst:

Op zich is het lege overzicht niet zo erg als je alleen wilt afspelen. Maar als je dan gaat opnemen wordt je recordings.epl vervangen door een lijst met alleen de nieuwe opname. En dat is dan toch minder. Zou leuk zijn als het reloaden van recordings.epl ook via de dreambox zelf kon. Mooi scriptje trouwens voor het gecombineerd mounten/unmounten. Ik had twee losse scriptjes.

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...