Wechelmedium automatisch ein und ausbinden
Wechelmedium automatisch ein und ausbinden
Wie binde ich am besten ein Hotplug Sata Platte mit Wechselrahmen ein und aus ?
mit udev oder hal ?
Es soll eine Backupplatte sein an einem Server, am besten soll gleich noch rsync mitstarten, jedoch weiß ich noch nicht wie ich am besten dann einem windowsclient mitteile, dass das backup fertig ist. Für Ideen wäre ich dankbar
mit udev oder hal ?
Es soll eine Backupplatte sein an einem Server, am besten soll gleich noch rsync mitstarten, jedoch weiß ich noch nicht wie ich am besten dann einem windowsclient mitteile, dass das backup fertig ist. Für Ideen wäre ich dankbar
Re: Wechelmedium automatisch ein und ausbinden
UDEV zum Einhängen und zum Starten deines rsync-Skripts.Tegger hat geschrieben:mit udev oder hal ?
Das Aushängen lässt du dann durch dein rsync-Script erledigen.
Gruß,
Daniel
-
- Beiträge: 3800
- Registriert: 26.02.2009 14:35:56
Re: Wechelmedium automatisch ein und ausbinden
und mit irgend einem Samba-Tool kann man Windows-messages
verschicken - kann dann auch das rsync-Script erledigen
verschicken - kann dann auch das rsync-Script erledigen
Re: Wechelmedium automatisch ein und ausbinden
wie mounte ich mit udev ?
also wie erstelle ich die rule richtig ?
also wie erstelle ich die rule richtig ?
Code: Alles auswählen
[ 245.874196] ata3: exception Emask 0x10 SAct 0x0 SErr 0x4090000 action 0xe frozen
[ 245.874467] ata3: irq_stat 0x00400040, connection status changed
[ 245.874626] ata3: SError: { PHYRdyChg 10B8B DevExch }
[ 245.874789] ata3: hard resetting link
[ 246.596550] ata3: SATA link down (SStatus 0 SControl 300)
[ 251.596541] ata3: hard resetting link
[ 251.901551] ata3: SATA link down (SStatus 0 SControl 300)
[ 251.901720] ata3: limiting SATA link speed to 1.5 Gbps
[ 254.747380] ata3: hard resetting link
[ 260.100543] ata3: link is slow to respond, please be patient (ready=0)
[ 260.865554] ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[ 260.882689] ata3.00: configured for UDMA/133
[ 260.882847] ata3: EH complete
Re: Wechelmedium automatisch ein und ausbinden
Vielleicht hilft dir dieses Tool weiter (hab ich aber noch nie selber getestet)
http://linux.softpedia.com/progScreensh ... 51057.html
http://linux.softpedia.com/progScreensh ... 51057.html
------------
Dieses verdammte Linux holt mir nicht mal ein Bier aus dem Kühlschrank!
Dieses verdammte Linux holt mir nicht mal ein Bier aus dem Kühlschrank!
Re: Wechelmedium automatisch ein und ausbinden
danke, hab jedoch keinen xserver laufen auf dem Teil.
also es ist wohl ein
SUBSYSTEM=="block", KERNEL=="sd*[0-9]", ENV{ID_SERIAL_SHORT}=="xxxx"
in die richtung, jedoch wie gebe ich da jetzt den mountpunkt an, dass es auf media/backup mountet....
also es ist wohl ein
SUBSYSTEM=="block", KERNEL=="sd*[0-9]", ENV{ID_SERIAL_SHORT}=="xxxx"
in die richtung, jedoch wie gebe ich da jetzt den mountpunkt an, dass es auf media/backup mountet....
Re: Wechelmedium automatisch ein und ausbinden
Vielleicht hilft das weiter, ist zwar schon etwas älter aber gut erklärt.
Die zweite Seite dürfte Dich interessieren:
http://www.linux-community.de/Internal/ ... ffset%29/2
Die zweite Seite dürfte Dich interessieren:
http://www.linux-community.de/Internal/ ... ffset%29/2
Re: Wechelmedium automatisch ein und ausbinden
jou... es wird somit zum /dev/"Name" den man in der udev rule vergeben hat, das war das fehlende stückchenClio hat geschrieben:Vielleicht hilft das weiter, ist zwar schon etwas älter aber gut erklärt.
Die zweite Seite dürfte Dich interessieren:
jetzt fehlt nur noch ne "Backup fertig" meldung...mir kam schon zwischenzeitlich so ne art statuspage per apache oder so...wobei ich dann extra apache installieren müsste
-
- Beiträge: 215
- Registriert: 09.09.2009 13:33:17
Re: Wechelmedium automatisch ein und ausbinden
Wozu der Supertanker wenn das Gummiboot genügt, schau Dir mal webfs an, ist perfekt für so etwasmir kam schon zwischenzeitlich so ne art statuspage per apache oder so...wobei ich dann extra apache installieren müsste
Code: Alles auswählen
This is a simple http server for purely static content. You can
use it to serve the content of a ftp server via http for example.
It is also nice to export some files quickly by starting an http
server in a few seconds without editing a config file first.
Features/Design:
================
* single process: select() + non-blocking I/O
* automatically generates directory listings when asked for a
directory (check for index.html available as option), caches
the listings.
* no config file, just a few switches. Try "webfsd -h" for a
list.
Re: Wechelmedium automatisch ein und ausbinden
smbclientpferdefreund hat geschrieben:und mit irgend einem Samba-Tool kann man Windows-messages
verschicken - kann dann auch das rsync-Script erledigen
http://blog.christianjaeckle.de/2009/05 ... pc-senden/
Gruß,
Daniel
Re: Wechelmedium automatisch ein und ausbinden
also das mit dem smbclient läuft nicht
jedoch läuft auch irgendwie der "RUN" nicht, mein mount backup umount skript funktioniert manuell, jedoch nicht automatisch im RUN
daneben hab ich noch das Problem, dass ich mir jetzt garnicht sicher bin was eigentlich /dev/backup ist. weil /dev/sde ist eigentlich die platte und /dev/sde1 die Partition, jedoch lässt die die Partition nicht mounten.
jedoch sind die daten im backup da und es wird auch nicht / beschrieben....check ich grad mal garnicht, was das jetzt passiert
jedoch läuft auch irgendwie der "RUN" nicht, mein mount backup umount skript funktioniert manuell, jedoch nicht automatisch im RUN
daneben hab ich noch das Problem, dass ich mir jetzt garnicht sicher bin was eigentlich /dev/backup ist. weil /dev/sde ist eigentlich die platte und /dev/sde1 die Partition, jedoch lässt die die Partition nicht mounten.
jedoch sind die daten im backup da und es wird auch nicht / beschrieben....check ich grad mal garnicht, was das jetzt passiert
Re: Wechelmedium automatisch ein und ausbinden
Zeig uns doch erstmal, was du gemacht hast.
Gruß,
Daniel
Gruß,
Daniel
Re: Wechelmedium automatisch ein und ausbinden
Im Eigentlichen nur das
Code: Alles auswählen
0:~# cat /etc/udev/rules.d/96-hotplug.rules
SUBSYSTEM=="block", KERNEL=="sd*[0-9]", ENV{ID_SERIAL_SHORT}=="S09QJ1UL500XXX" NAME="backup" RUN="sh /root/backup.sh"
0:~# cat /root/backup.sh
#!/bin/sh
# Einfaches Backup
mount /dev/backup /media/backup/
mount 192.168.123.215:/RAID /media/nfs/
rsync -a /media/nfs/ /media/backup/
umount /media/backup
umount /media/nfs
0:~#
Re: Wechelmedium automatisch ein und ausbinden
http://wiki.debianforum.de/Bacula#Festplatten_einlesen
das sollte das sein was du suchst..
wenn du noch fragen dazu hast, immer her damit
das sollte das sein was du suchst..
wenn du noch fragen dazu hast, immer her damit
Debian-Nutzer
ZABBIX Certified Specialist
ZABBIX Certified Specialist
Re: Wechelmedium automatisch ein und ausbinden
ja das macht sinn, jedoch ist meine aktuelle liste auch
/dev/backup: UUID="a940cbf1-c6d7-4653-86db-da5fea65e464" SEC_TYPE="ext2" TYPE="ext3"
dabei....also überschreibe ich wohl mit meiner regel die vorherige beziehung mit /dev/sde
der Ordnung und der eventuellen später besseren Auslesbarkeit werde ich die UUID Methode anwenden
Danke für den link
EDIT:
die /dev/backup ist /dev/sde1 wenn ich die regel wieder entnehme kann ich /dev/sde1 mounten
/dev/backup: UUID="a940cbf1-c6d7-4653-86db-da5fea65e464" SEC_TYPE="ext2" TYPE="ext3"
dabei....also überschreibe ich wohl mit meiner regel die vorherige beziehung mit /dev/sde
der Ordnung und der eventuellen später besseren Auslesbarkeit werde ich die UUID Methode anwenden
Danke für den link
EDIT:
die /dev/backup ist /dev/sde1 wenn ich die regel wieder entnehme kann ich /dev/sde1 mounten
Re: Wechelmedium automatisch ein und ausbinden
irgendwie führt das jedoch zum Problem dass mit
ENV(ID_FS_UUID)=="a940cbf1-c6d7-4653-86db-da5fea65e464", RUN+="/bin/sh /root/backup.sh"
als 70-backup.rules die backup.sh in einer endlosschleife läuft
ENV(ID_FS_UUID)=="a940cbf1-c6d7-4653-86db-da5fea65e464", RUN+="/bin/sh /root/backup.sh"
als 70-backup.rules die backup.sh in einer endlosschleife läuft
Re: Wechelmedium automatisch ein und ausbinden
Sicher?Tegger hat geschrieben:als 70-backup.rules die backup.sh in einer endlosschleife läuft
Wie hast du das überprüft?
Probiere doch erstmal folgende Regel mit dem zugehörigen Skript, welches dir auch entsprechende Zeitstempel erzeugt, falls die entsprechenden Befehle erfolgreich waren:
- UDEV-Regel:
/etc/udev/rules.d/70-backup.rulesCode: Alles auswählen
SUBSYSTEM=="block", ENV{ID_FS_UUID}=="a940cbf1-c6d7-4653-86db-da5fea65e464", RUN+="/bin/sh /usr/local/bin/backup.sh"
- Test-Skript:
/usr/local/bin/backup.shCode: Alles auswählen
#!/bin/sh { touch /tmp/timestamp_begin_$(date +%Y_%m_%d_%H:%M:%S) /bin/mount /dev/disk/by-uuid/a940cbf1-c6d7-4653-86db-da5fea65e464 /media/backup && touch /tmp/timestamp_mount_$(date +%Y_%m_%d_%H:%M:%S) sleep 30; umount /mnt/backup && touch /tmp/timestamp_umount_$(date +%Y_%m_%d_%H:%M:%S) touch /tmp/timestamp_end_$(date +%Y_%m_%d_%H:%M:%S) } &
Damit kannst du schonmal testen, ob das Skript ausgeführt wird und wenn ja, welche Befehle wann erfolgreich ausgeführt wurden.
Wichtig ist, dass das Skript abgetrennt wird (hier: { } &), damit es nicht die weitere Ausführung von UDEV blockiert, solange das Skript läuft.
Sollte das Test-Skript funktionieren, dann kannst du das sleep ersetzen, z.B. durch:
Code: Alles auswählen
mount 192.168.123.215:/RAID /media/nfs/
rsync -a /media/nfs/ /media/backup/
umount /media/nfs
Gruß,
Daniel
Re: Wechelmedium automatisch ein und ausbinden
ich konnte /media/nfs nicht mehr ausbinden, somit mit ps -ef nachgeschaut. Dort war rsync 3x aktiv, und wurde immer wieder neu gestartet. mittels mount konnte ich sehen, dass die platte ständig gemountet und ausgebunden wird, somit sieht das nach Endlosschleife aus.
irgendwas scheint mit rsync nicht zu stimmen, die batch mit sleep funktioniert soweit, auch mehr mal hintereinander, Wenn ich jetzt noch die nfs mounte und rsync ausführe kommt nur quatsch dabei raus, rsync ist wieder 3x aktiv und speichert jetzt im root, da die wechelplatte nicht gemountet ist, jedoch noch die nfs....
EDIT:
also sobald rsync in der batch mit drin ist, wirds zu einer endlosschleife..... warum auch immer
irgendwas scheint mit rsync nicht zu stimmen, die batch mit sleep funktioniert soweit, auch mehr mal hintereinander, Wenn ich jetzt noch die nfs mounte und rsync ausführe kommt nur quatsch dabei raus, rsync ist wieder 3x aktiv und speichert jetzt im root, da die wechelplatte nicht gemountet ist, jedoch noch die nfs....
EDIT:
also sobald rsync in der batch mit drin ist, wirds zu einer endlosschleife..... warum auch immer
Re: Wechelmedium automatisch ein und ausbinden
mach mal eine neue konsole auf und beobachte das ganze mit
Code: Alles auswählen
udevadm monitor
Debian-Nutzer
ZABBIX Certified Specialist
ZABBIX Certified Specialist
Re: Wechelmedium automatisch ein und ausbinden
sieht gut aus, jedoch wird rsync nach dem umount weiter ausgeführt, d.h. es wird in root ein backup gemacht auf der sda systemplatte...
Die Endlosschleife tritt nicht mehr auf.
Verändert habe ich eth0 von dhcp auf static. Mit dünkt auch dass es wohl ein Problem mit dem nfs mount sein könnte, da nun nach erfolgreichem Ende das Netzwerk zerschossen wird und eth0 von static auf dhcp wechselt.....
Die Endlosschleife tritt nicht mehr auf.
Verändert habe ich eth0 von dhcp auf static. Mit dünkt auch dass es wohl ein Problem mit dem nfs mount sein könnte, da nun nach erfolgreichem Ende das Netzwerk zerschossen wird und eth0 von static auf dhcp wechselt.....
Re: Wechelmedium automatisch ein und ausbinden
das ist mein ablauf wenn ich Dateien hinzufüge und danach die platte reinschiebe....der umount wird irgendwie vor dem rsync ausgeführt und ich kanns mir nicht erklären
Code: Alles auswählen
TEST:~# cat /usr/local/bin/backup.sh
#!/bin/sh
{
touch /tmp/timestamp_begin_$(date +%Y_%m_%d_%H:%M:%S)
/bin/mount /dev/disk/by-uuid/a940cbf1-c6d7-4653-86db-da5fea65e464 /media/backup && touch /tmp/timestamp_mount_$(date +%Y_%m_%d_%H:%M:%S)
mount 192.168.123.215:/RAID /media/nfs/
/usr/bin/rsync -a /media/nfs/ /media/backup/
/bin/umount /media/nfs
/bin/umount /media/backup && touch /tmp/timestamp_umount_$(date +%Y_%m_%d_%H:%M:%S)
touch /tmp/timestamp_end_$(date +%Y_%m_%d_%H:%M:%S)
} &
TEST:~#
Code: Alles auswählen
TEST:~# dir -l /media/backup/
insgesamt 0
TEST:~# dir -l /media/nfs
insgesamt 0
TEST:~# dir -l /media/backup/
insgesamt 0
TEST:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
none on /selinux type selinuxfs (rw,relatime)
xenfs on /proc/xen type xenfs (rw)
TEST:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
none on /selinux type selinuxfs (rw,relatime)
xenfs on /proc/xen type xenfs (rw)
/dev/sde1 on /media/backup type ext3 (rw)
192.168.123.215:/RAID on /media/nfs type nfs (rw,addr=192.168.123.215)
TEST:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
none on /selinux type selinuxfs (rw,relatime)
xenfs on /proc/xen type xenfs (rw)
/dev/sde1 on /media/backup type ext3 (rw)
TEST:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
none on /selinux type selinuxfs (rw,relatime)
xenfs on /proc/xen type xenfs (rw)
TEST:~# dir -l /media/backup/
insgesamt 48
drwxrwxr-x 4 userle userle 4096 24. Sep 11:13 10
drwxrwxr-x 3 userle userle 4096 4. Okt 18:55 3DSCHRIFT
drwxrwxr-x 10 userle userle 4096 30. Sep 15:50 Auto
drwxrwxr-x 7 userle userle 4096 24. Sep 11:12 DVD_Rebuilder_Free_098.1
drwxrwxr-x 3 userle userle 12288 30. Sep 17:34 Good\ old\ Techno
drwxrwxr-x 3 userle userle 4096 4. Okt 18:55 Imagemagick
drwxrwxr-x 3 userle userle 4096 14. Okt 19:07 nightsdark
drwxrwxr-x 3 userle userle 4096 4. Okt 18:56 Panorama\ Bilder\ erstellen\ Autostich
drwxrwxr-x 4 userle userle 4096 4. Okt 18:56 Panorama\ Bilder\ erstellen\ EnBlend
drwxrwxr-x 2 userle userle 4096 4. Okt 18:55 XYZ
TEST:~#
Re: Wechelmedium automatisch ein und ausbinden
Kann es sein, dass das Skript auch beim Deaktivieren der Platte ausgeführt wird und daher auch rsync ausgeführt wird, obwohl /dev/sde nicht gemountet ist ?
Re: Wechelmedium automatisch ein und ausbinden
Kann mir mal einer erklären warum diese if nicht funktioniert ??
Code: Alles auswählen
CHECK=`mount | grep /media/backup | awk '{print $3}'`
if [`$CHECK` == `/media/backup`]; then
/usr/bin/rsync -a --delete /media/nfs/ /media/backup/
fi
Re: Wechelmedium automatisch ein und ausbinden
Unwahrscheinlich.Tegger hat geschrieben:Kann es sein, dass das Skript auch beim Deaktivieren der Platte ausgeführt wird und daher auch rsync ausgeführt wird, obwohl /dev/sde nicht gemountet ist ?
Aber warum siehst du dir dann nicht einfach die entsprechenden Zeitstempel [1] an, wenn du diesen Verdacht hast?
Tegger hat geschrieben:Code: Alles auswählen
if [`$CHECK` == `/media/backup`]; then
Code: Alles auswählen
if [ "$CHECK" == "/media/backup" ];
Gruß,
Daniel