Netzwerkfestplatte mounten

Post Reply
Message
Author
ramon
Posts: 5
Joined: 23. Feb 2007 10:12

Netzwerkfestplatte mounten

#1 Post by ramon »

Hallo,

ich habe eine NetzHDD. Funktioniert auch alles prima - bis auf :
Beim Booten wird die fstab ausgelesen, bevor die Netzwerkkarte aktiviert wird.
Da das /dev/ndas beim booten erstellt wird, interessiert sich auch hinterher kein hal-dämon mehr für das Teil.
Daraus ergibt sich zwangsläufig, daß die Platte nachher nicht gemountet ist, und jedesmal von Hand eingehängt werden muß.
Was muß ich in die fstab schreiben, damit auch nachträglich der mountbefehl ausgeführt wird ?
Kann mir jemand weiterhelfen ?

System :
Susi 10.1 Kernel 2.6.16
HDD Trekstore/ixmeta
best regards

Ramon

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Wie mountest du denn von Hand? Einfach als Network Block Device mit

# mount /dev/ndas1 /mnt

mit NFS, SAMBA oder wie genau?

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

ramon
Posts: 5
Joined: 23. Feb 2007 10:12

#3 Post by ramon »

Hallo,

genau !
Ich habe per udev-Regel dem Device den Namen "Trekstore" gegeben und in die fstab die Zeile :
/dev/Tekstore /mnt/HDD1 vfat auto,users,utf-8,umask0002 0 0
eingetragen.
Wenn ich jetzt mich im KDE angemeldet habe, öffne ich eine Konsole und tipp nur
~$ mount /mnt/HDD1
das isses - da es dann funktioniert ist im prinzip damit klar, daß alle einstellungen funktionieren (auch wenn ich mich jetzt hier vertippt haben sollte).
Ich habe schon versucht in der fstab "subfs" als Filesystem einzugeben -> gab nur die Fehlermeldung, dass das Filesystem falsch ist.
best regards

Ramon

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

mount -a wird vermutich zu einem Zeitpunkt ausgeführt, zu dem das Netzwerk noch nicht zur Verfügung steht.

Eine Quick-and-Dirty-Lösung besteht darin, in /etc/init.d/nfs die Zeile mount -at nfs gegen mount -a auszutauschen (aber bitte die Originalzeile nur auskommentieren...).

Besser wäre es natürlich, diese Datei als Vorlage für eine Datei /etc/init.d/nas zu nehmen und dort nur die notwendigen mounts für das TrekStor-Gerät vorzunehmen.

Also z.B.:

Code: Select all

#! /bin/bash
#
# /etc/init.d/nas
#
### BEGIN INIT INFO
# Provides:       nas
# Required-Start: $network
# Required-Stop:
# Default-Start:  3 5
# Default-Stop:
# Description:    Imports NAS devices
### END INIT INFO

. /etc/rc.status

rc_reset
case "$1" in
  start|reload)
    echo -n "Importing Network attached storage (NAS)"
    mount /mnt/HDD1
    ;;
  stop)
    echo -n "Remove Network attached storage (NAS)"
    umount /mnt/HDD1
    ;;
  restart|force-reload)
    ## Stop the service and regardless of whether it was
    ## running or not, start it again.
    $0 stop
    $0 start
    rc_status
    ;;
  status)
    echo -n "Checking for mounted NAS shares (from /etc/fstab):"
    ! grep -qF '/mnt/HDD1' /proc/mounts
    rc_status -v
    ;;
  try-restart|condrestart)
    $0 status
    if test $? = 0; then
      $0 restart
    else
      rc_reset
    fi
    rc_status
    ;;
  *)
    echo "Usage: $0 {start|stop|status|reload|force-reload|restart|try-restart}"
    exit 1
esac
rc_exit
Dann in YaST->System->Runlevel-Editor den Service "NAS" aktivieren.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

ramon
Posts: 5
Joined: 23. Feb 2007 10:12

#5 Post by ramon »

Hallo,

entschuldigung, dass ich so lange gebraucht habe, um den script einzuarbeiten.
Irgendwie sieht es so aus als könnte es funktionieren, tut es aber nicht.
Wenn ich den script in der beschriebenen Weise einstelle, kann ich im runlevel-editor den dienst sehen, wenn ich ihn aktiviere, bekomme ich die nachricht, daß der hal-dämon noch gestartet werden muß, bei ja - gibt es die Fehlermeldung, daß der Hal- dämon bereits läuft, die platte ist aber nicht gemountet und wenn ich den runlevel-editor nochmals öffne ist der Dienst wieder deaktiviert !?!?

wie kommen wir jetzt weiter ?

Regards
Ramon
best regards

Ramon

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#6 Post by Janka »

Benutz' den "Expertenmodus", und aktiviere dort den Dienst für Runlevel 3 und 5.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

ramon
Posts: 5
Joined: 23. Feb 2007 10:12

#7 Post by ramon »

Hallo,

ich weiß nicht, warum es nicht klappt.
einen Punkt warum es nicht geklappt hat, habe ich gefunden. Im Script muss scheinbar das /dev/ndas und nicht der Mountpunkt(/mnt/HDD1) angegeben sein.

Nun lässt sich im Yast der Dienst starten, die Platte wird auch gemountet. Beim zweiten mal YAST aufruf ist der Dienst wieder deaktiviert.
Beim Booten wird der Dienst auch nicht aktiviert, so daß ich jetzt 3 Wege habe die Platte zu mounten :
1. ~> mount /mnt/HDD1
2. ~> /etc/init.d/nas
3. YAST - Runleveleditor
Leider geht keine Version von alleine.

Da alles manuell funktioniert, gehe ich davon aus, daß der Script in Ordnung ist.

Hast Du noch eine Idee, woran es liegen kann ?
best regards

Ramon

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#8 Post by Janka »

Der YaST-Runleveleditor nutzt das Ergebnis der einzelnen Aufrufe, um den aktuellen Status festzustellen. Mit

( exit <Returnwert> )

lässt sich ein bestimmter Returnwert vorgeben. Bau das mal jeweils nach dem mount bzw. umount ein.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

ramon
Posts: 5
Joined: 23. Feb 2007 10:12

#9 Post by ramon »

Hallo,

alle Rückgabewerte außer 0 (Null) werden als Fehler interprtiert.
Die Situation ist unverändert.
Der Dienst bleibt nicht eigeschaltet und schaltet sich nach dem Booten nicht selbstständig ein.
Gibt es vieleicht ein Problem mit den Diensten bei mir ?
Der ntp-Dienst ist nämlich auch nicht aktiv nach dem Booten.
best regards

Ramon

noname

#10 Post by noname »

ramon wrote:Hallo,

alle Rückgabewerte außer 0 (Null) werden als Fehler interprtiert.
Die Situation ist unverändert.
Der Dienst bleibt nicht eigeschaltet und schaltet sich nach dem Booten nicht selbstständig ein.
Gibt es vieleicht ein Problem mit den Diensten bei mir ?
Der ntp-Dienst ist nämlich auch nicht aktiv nach dem Booten.
Mit Jankas Skript startet der Dienst, bevor der node angelegt ist.
Füge in der Zeile hinter #Required-Start ein running-kernel ein, so:

# Required-Start: $network running-kernel

und deaktiviere und aktiviere den Dienst unter Yast erneut.
Der Dienst wird dann erst nach dem Dienst running-kernel und nicht schon unmittelbar nach Start des Netzwerks gestartet.
Bei mir klappt es so.

Post Reply