Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-03-14 09:36:25

  brekofra - Użytkownik

brekofra
Użytkownik
Skąd: Jordanów (małopolska)
Zarejestrowany: 2011-04-24

Automatyczne uruchomienie skryptu z pendrive

Potrzebna mi pomoc w uruchomieniu skryptu na serwerze synology.

Cel : Automatyczne montowanie katalogu szyfrowanego po wpięciu pendriva a po jego usunięciu odmontowanie katalogu.

Polecenie służące do montowania to:

Kod:

synoshare --enc_mount nazwa_katalogu 30-znakowyklucz

Odmontowanie to:

Kod:

synoshare --enc_unmount nazwa_katalogu

Pomyślałem że do tego da się wykorzystać udev który po wykryciu pendriva wykona skrypt (skrypt umieszczony na pendrivie)

Przydało by się żeby skrypt sprawdzał vendor i id nośnika (zabezpieczenie przed skopiowaniem skryptu na inny nośnik)

Przyznam że szukam cały czas info jak to zrobić i czytam o AWK i print znalazłem też coś podobnego wykorzystywanego do automatycznego kopiowania plików z nośnika na dysk:

Kod:

ACTION=="add", SUBSYSTEMS=="usb", KERNEL=="sd?", SYMLINK+="start", RUN+="/home/art/bin/copyusb.sh"

Nie bardzo wiem jak to w całość poskładać Może ktoś zna się lepiej na tym i jest mi w stanie choć trochę pomóc ?

Ostatnio edytowany przez brekofra (2014-03-14 09:37:33)

Offline

 

#2  2014-03-14 09:41:12

  brekofra - Użytkownik

brekofra
Użytkownik
Skąd: Jordanów (małopolska)
Zarejestrowany: 2011-04-24

Re: Automatyczne uruchomienie skryptu z pendrive

Nie wiem czy dobrze to napisałem Proszę o sprawdzenie


Kod:

ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="XXXX", ACTION=="add", RUN+="/bin/bash -c /volume/usbshare/usb1/add.sh"
ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="XXXX", ACTION=="remove", RUN+="/bin/bash -c /etc/udev/remove.sh"

add.sh

Kod:

#!/bin/bash
synoshare --enc_mount nazwa_katalogu 30_znakowy_klucz

remove.sh

Kod:

#!/bin/bash
synoshare --enc_unmount nazwa_katalogu

Podpieram się tym http://netbit73.blogspot.com/2012/03/udev-restart-s … adend-po.html

Ostatnio edytowany przez brekofra (2014-03-14 10:08:33)

Offline

 

#3  2014-03-14 10:27:00

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: Automatyczne uruchomienie skryptu z pendrive

Jak chcesz pisać reguły dla udeva to musisz korzystać z udevadm. Zapoznaj się z wynikami poleceń:

Kod:

# udevadm info --name=/dev/sdb --attribute-walk

# udevadm test /devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5:1.0/host2/target2:0:0/2:0:0:0/block/sdb

Pierwsze ci wyrzuca info na temat urządzenia, a drugie testuje reguły które napisałeś dla danego urządzenia. Te ścieżkę ci wyrzuci w wyniku tego pierwszego polecenia. Jak zadziała to

Kod:

udevadm control --reload-rules

i możesz ponownie wsadzić pena.

Tu chyba nikt się nie zna na udevie, także ciężko będzie jak nie zadziała, bo ja też się dopiero zapoznaje z nim i za bardzo jeszcze się nie orientuję co i jak. xD

Offline

 

#4  2014-03-14 13:04:22

  brekofra - Użytkownik

brekofra
Użytkownik
Skąd: Jordanów (małopolska)
Zarejestrowany: 2011-04-24

Re: Automatyczne uruchomienie skryptu z pendrive

No dobra nie ma udev tylko mdev i nie jest to takie proste ...

Jest mo sposb  wykryciu dysku usb zmusić serwer synology do uruchomienia skryptu ?

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)