Bonjour,
j'ai une bibliothèque de cds de données (environ 500) que je voudrais passer sur mon serveur NAS (il tourne sous ubuntu server, sans client X).
J'ai un bon niveau en programmation (procédural, objet, etc), mais niveau faible en admin système.
il va falloir que je rentre les cds un à un, mais pour aller plus vite, je voudrais automatiser la copie des fichiers.
pour cela j'ai commencé un script en bash, mais j'avance assez lentement, et je voudrais savoir si quelqu'un peut m'aider/me conseiller sur les commandes à utiliser.
L'idée générale du script est la suivante :
si il y a un cd dans un lecteur, copier les données du fichier vers /data/bigone/
une fois la copie terminée, ejecter le cd.
et ainsi de suite.
Code :
- #!/bin/bash
- CDSTATE=`hal-get-property --udi /org/freedesktop/Hal/devices/storage_model_CD_ROM_SC_152L --key storage.removable.media_available`
- DVDSTATE=`hal-get-property --udi /org/freedesktop/Hal/devices/storage_model_DVD_ROM_E616 --key storage.removable.media_available`
- if [ CDSTATE="true" ]
- then
- echo "cd absent"
- # boucler jusqu'a ce que le cd soit présent...
- else
- echo "dvd in drive"
- if #le cd n'as pas encore été copié...
- then
- cp -r /point/de/montage/du/cd /data/bigone
- fi
- # ejecter le cd en fin de copie...
- fi
- if [ DVDSTATE="true" ]
- # idem que pour le cd
- fi
|
J'utilise HAL qui me renvoie un true/false si il y a un cd dans le lecteur, et j'implémenterai une boucle infinie ensuite
mes questions sont les suivantes :
- comment puis savoir si le cd sera monté automatiquement?
- comment détecter que la copie est terminée?
- comment éjecter le cd?
- comment savoir si une copie est en cours?
- quelle est la meilleure boucle à faire?
je continue mes recherches de mon coté évidemment, et je surveille en meme temps les réponse de ce post
merci d'avance de votre aide.