- Avez-vous également écrit avec la même taille de bloc ?
- Avez-vous rembobiné avant de lire ?
- Fait
mt -f /dev/nst0 status
travail ?
- Est-ce que vous enchaînez
dd
avec tar
ou simplement en utilisant tar comme vous l'avez écrit ? Il y a une bizarrerie lors de l'utilisation de la tuyauterie tar et de la variable d'environnement $TAPE. voir ci-dessous.
Parfois vous lancez une commande, elle échoue, il n'y a pas de bruit provenant du lecteur, mais la bande n'est plus en état de "rembobinage". Essayez de rembobiner implicitement avant chaque commande.
Faites un test avec une autre bande (exécutez les commandes immédiatement l'une après l'autre : cd /path/to files mt -f /dev/nst0 rewind ; tar -b 2048 -c -f /dev/nst0 * mt -f /dev/nst0 rewind ; tar -b 2048 -t -f /dev/nst0
Si vous ne voulez pas passer -f /dev/nst0 tout le temps ajoutez export TAPE=/dev/nst0
dans votre .bashrc. Gardez à l'esprit que si vous avez cette variable, tar préférera le lecteur de bande à stdin/stdout. Cela renverra donc "Device or resource busy" (périphérique ou ressource occupé)
export TAPE=/dev/nst0
mt rewind ; tar -b 128 -c *|dd of=$TAPE bs=64K
... parce que dd et tar essaient tous deux d'ouvrir le lecteur de bande. La façon correcte d'utiliser tar est de passer -f -
:
mt rewind ; tar -b 128 -c -f - *|dd of=$TAPE bs=64K
De plus, je ne suis pas sûr que cette taille de bloc fonctionne bien. Dans ce document vous pouvez lire :
Une taille de bloc pas plus grand de 256 Ko (262144 octets) est fortement recommandée recommandé lorsque vous travaillez avec HP-UX et des périphériques à bande ou VTL.
Essayez donc de réduire la taille des blocs à 256KiB ou même 128KiB (c'est-à-dire tar -b 512 ou -b 256 respectivement).