Seite 1 von 2

rc.local updaten

Verfasst: Mo 11. Feb 2013, 19:08
von dippes
Hallo

Ich habe ein paar mountbefehle in der rc.local eingetragen.Funktioniert einwandfrei wenn der Server vor dem Client eingeschaltet wird.Wenn der Server nachträglich eingeschaltet wird muss rc.local manuell ausgeführt werden.

Kann man dem entgegenwirken? Ich habe mir gedacht das ein script in bestimmten Abständen rc.lokal ausführt?

MfG

Dippes

Re: rc.local updaten

Verfasst: Di 12. Feb 2013, 16:12
von feissmaik
Wieso sollte man für netzwerk mounts /etc/rc.local ausführen?

Leg dir dafür ein gesondertes Script an was du dann auch aus rc.local ansprichst bzw würde ich das garnicht erst über rc.local machen sondern über die benutzer crontab des root benutzers (crontab -e) und in dem script prüfst du dann 2 dinge:
- bereits gemountet? wenn nicht dann:
- client online?
..denn vermutlich mountest du übers netzwerk vom client irgendein verzeichniss oder?
Das script lässt du dann bei sowohl " @reboot " ausführen und zum Beispiel alle 5 minuten - gemountet wirds dann nur wenn noch nicht gemountet und wenn client pingbar

Re: rc.local updaten

Verfasst: Di 12. Feb 2013, 18:24
von dippes
Naja,hört sich gut an...aber ich kann keine Scripte schreiben...leider.

Gibt es irgendwo was fertiges?

MfG

Dippes

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 13:27
von feissmaik
Das ist nicht sooo schwer...

Wie sieht denn zzt deine Mount Zeile aus? (poste am besten den Inhalt der /etc/rc.local Datei)

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 16:58
von dippes
Hallo

Hier meine Laufwerke welche gemounted werden sollen.

Ist es möglich die Nas mounts schreibgeschützt zu gestalten?

Code: Alles auswählen

mount 192.168.1.33:/mnt/disk1/Musik /mnt/Nas/Musik &
mount 192.168.1.33:/mnt/disk1/Linux /mnt/Nas/Linux &
mount 192.168.1.77:/srv/video /mnt/VDR-Server/Videofilme &
mount.cifs //192.168.1.102/multimedia /mnt/windows -o username=xxx,password=xxxx

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 17:04
von feissmaik
Wenn du mit irgendwelchen Rechten arbeiten möchtest, solltest du dir mal Samba Server angucken

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 17:14
von feissmaik
Ein einfaches Script sähe zum Beispiel so aus:

Code: Alles auswählen

#!/bin/bash

if [ -z "$(/bin/grep '192.168.1.33:/mnt/disk1/Musik' /proc/mounts)" ]; then
	if [ "$(ping -c1 "192.168.1.33" | grep -c "seq")" -eq 1 ]; then
		echo "Mounting \"192.168.1.33:/mnt/disk1/Musik\" to \"/mnt/Nas/Musik\""
		mount 192.168.1.33:/mnt/disk1/Musik /mnt/Nas/Musik
	fi
fi

if [ -z "$(/bin/grep '192.168.1.33:/mnt/disk1/Linux' /proc/mounts)" ]; then
	if [ "$(ping -c1 "192.168.1.33" | grep -c "seq")" -eq 1 ]; then
		echo "Mounting \"192.168.1.33:/mnt/disk1/Linux\" to \"/mnt/Nas/Linux\""
		mount 192.168.1.33:/mnt/disk1/Linux /mnt/Nas/Linux
	fi
fi

if [ -z "$(/bin/grep '192.168.1.77:/srv/video' /proc/mounts)" ]; then
	if [ "$(ping -c1 "192.168.1.77" | grep -c "seq")" -eq 1 ]; then
		echo "Mounting \"192.168.1.77:/srv/video\" to \"/mnt/VDR-Server/Videofilme\""
		mount 192.168.1.77:/srv/video /mnt/VDR-Server/Videofilme
	fi
fi

if [ -z "$(/bin/grep '192.168.1.102/multimedia' /proc/mounts)" ]; then
	if [ "$(ping -c1 "192.168.1.102" | grep -c "seq")" -eq 1 ]; then
		echo "Mounting \"//192.168.1.102/multimedia\" to \"/mnt/windows\""
		mount.cifs //192.168.1.102/multimedia /mnt/windows -o username=xxx,password=xxxx
	fi
fi

exit 0
Ausführbar machen usw und dann packst du dir das in die crontab vom root Benutzer: crontab -e

Code: Alles auswählen

@reboot /path/to/mountscript.sh >/dev/null 2>&1
*/5 * * * * /path/to/mountscript.sh >/dev/null 2>&1

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 17:41
von dippes
Vielen Dank

Wenn das ein einfaches Script ist....was kann denn ein nicht einfaches?

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 19:14
von dippes
Das Script will nicht funktionieren.

Ich habe das script in /usr/sbin/mountscript.sh abgelegt und den eintrag in crontab -e mit dem Pfad vom script eingetragen.

in der rc.local habe ich die Mountbefehle auskommentiert.

Nach einem restart wurde aber leider kein Laufwerk gemounted.

Beim manuellen ausführen des Scriptes bleibt er immer hängen.

Code: Alles auswählen

david-pc sbin # ./mountscript.sh
Mounting "192.168.1.77:/srv/video" to "/mnt/VDR-Server/Videofilme"
/EDIT:
ich habe mal den Windows mount auskommentiert und das script manuell gestartet.

Jetzt wird aber nur der vdr gemounted, das nas aber nicht.

Re: rc.local updaten

Verfasst: Do 14. Feb 2013, 19:35
von TommyH99
chmod +x script.sh

Dann sind die Ziele nicht erreichbar bzw PING deaktiviert?

manuell MOUNT funktioniert?

zb.: mount 192.168.1.77:/srv/video /mnt/VDR-Server/Videofilme