Re: script bash pour mise en veille du disque usb

Page principale

Répondre à ce message
Auteur: anne.guilde@free.fr
Date:  
À: ML Guilde
Anciens-sujets: script bash pour mise en veille du disque usb
Sujet: Re: script bash pour mise en veille du disque usb
bonjour,

J'ai racheté un boîtier enermax EB308U3 pour disque sata en 3,5 usb3
pour la sauvegarde de ma debian et un disque seagate barracuda
ST3000DM008 de 3to.

http://www.enermax.fr/fr/brick-eb308s-b---eb308u3-b/363-1-c.html

Sur la notice =>
La veille automatique du HDD se déclenche automatiquement au bout de 10
mn d’inactivité (EB308U3)

Le 09/02/2017 à 21:25, j'avais posté ce que j'avais fait avec bind
unbind et sdparm pour mettre en place la sauvegarde pour mon serveur.
Mais cela n’arrête pas tout le temps le disque de sauvegarde de tourner
sur mon serveur. La lumière du boîtier ne s'éteint pas tout le temps
après le unbind.
disque wd red de 2 to

----

1- on allume le disque usb
Le disque se monte automatiquement dans
/media/anne/2a5429e8-d3bc-4f1f-9416-821cd1ec72b7

Autre commande pour récupérer l'uuid du disque avec la commande # blkid

2- J'ai UUID du disque.
Pour les commandes pour bind et unbind j'ai besoin de id du bus usb

# UUID="2a5429e8-d3bc-4f1f-9416-821cd1ec72b7"; \
DEV_NAME=$(blkid -U "$UUID"); \
echo "DEV_NAME : $DEV_NAME"; \
DEV_NAME1="/dev/$(basename $(dirname $(readlink
/sys/class/block/$(basename $DEV_NAME))))"; \
DEVICE1=$(udevadm info --query=path --name=${DEV_NAME1} --attribute-walk | \
egrep "looking at parent device" | head -1 | \
sed -e "s/.*looking at parent device
'\(\/devices\/.*\)\/.*\/host.*/\1/g"); \
DEV_BUS_ID=${DEVICE1##*/}; \
echo "Found device $DEVICE1 associated to $DEV_NAME1; USB bus id is
$DEV_BUS_ID"
=>
DEV_NAME : /dev/sdc1
Found device /devices/pci0000:00/0000:00:14.0/usb3/3-3 associated to
/dev/sdc; USB bus id is 3-3

Cela me permet d'avoir id du bus usb et le /dev/sdx

# fdisk -l /dev/sdc
Disque /dev/sdc : 2,7 TiB, 3000592982016 octets, 5860533168 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 4096 octets
taille d'E/S (minimale / optimale) : 4096 octets / 33553920 octets
Type d'étiquette de disque : gpt
Identifiant de disque : B2D75C9E-B8FD-44DC-AEB2-E6DEB61B077C

Périphérique Début        Fin   Secteurs Taille Type
/dev/sdc1     2048 5860532223 5860530176   2,7T Système de fichiers Linux


3- démonter le disque de sauvegarde

# umount /media/anne/2a5429e8-d3bc-4f1f-9416-821cd1ec72b7/

4- J'ai l'id du bus usb
la commande unbind pour arrêter le disque

# echo -n 3-3 > /sys/bus/usb/drivers/usb/unbind

# fdisk -l /dev/sdc
fdisk: impossible d'ouvrir /dev/sdc: Aucun fichier ou dossier de ce type

la lumière bleu du boîtier s'éteint au bout de 10 minutes environ et le
disque ne tourne plus.

5- Remettre le disque en route

# echo -n 3-3 > /sys/bus/usb/drivers/usb/bind

6- Le disque se reconnecte dans /media/anne/
Donc je suis obligée de démonter dans /media et remonter dans
/mnt/sauvegarde

# umount /media/anne/2a5429e8-d3bc-4f1f-9416-821cd1ec72b7/

# mount /dev/sdc1 /mnt/sauvegarde/

------

Je ne me suis pas servie de sdparm et je ne sais pas si cela apporte
quelque chose vu que bind et unbind suffisent à mettre en veille le boîtier.

J'essaie de suivre les problèmes avec # journalctl -f

- problème 1 :
quand je fais la commande echo -n 3-3 > /sys/bus/usb/drivers/usb/bind ,
le disque se monte automatiquement dans /media/
J'aimerais monter dans /mnt/sauvegarde

mettre dans fstab?

- Trouver une autre solution avec
    udisks(8), udisksctl(1), polkit(8), dbus-daemon(1), systemd(1), 
udev(7), udisksd(8), gnome-disks(1)
???


Toute idée est la bien venue

Anne