Mémo des commandes

De Le Labo de Yorzian
Aller à la navigation Aller à la recherche

Outils à manipuler:

  • tapeinfo: Outil d'interrogation du lecteur de bandes
  • mtx: Outil d'interrogation de la bibliothèque
  • mt: Outil de déplacement et de manipulation de la bande
  • tar: ben... tape archiver !

Installation sous Debian

Attention, il est nécessaire d'installer le paquet mt, la commande mt présente par défaut étant très limitée.

Paquets à installer:

  # apt update
  # apt install mtx mt-st

Fonctionnement

L'emplacement du lecteur de bande est /dev/st0 ou /dev/nst0 en mode non rembobinable.

La première opération est de configurer le lecteur de bande pour qu'il nous donne toutes les informations accessibles. Il faut activer le SCSI Logique pour ça

 # mt -f /dev/st0 stsetoptions scsi2logical

La Bibliothèque de bandes

Visualisation de la bibliothèque:

 # mtx -f /dev/sch0 status
  Storage Changer /dev/sch0:1 Drives, 12 Slots ( 0 Import/Export )
Data Transfer Element 0:Full (Storage Element 2 Loaded):VolumeTag = AHD934L4
      Storage Element 1:Full :VolumeTag=DEVJ72L4
      Storage Element 2:Empty
      Storage Element 3:Full :VolumeTag=000001L4
      Storage Element 4:Empty
      Storage Element 5:Empty
      Storage Element 6:Empty
      Storage Element 7:Empty
      Storage Element 8:Empty
      Storage Element 9:Empty
      Storage Element 10:Full :VolumeTag=CLN361L1
      Storage Element 11:Empty
      Storage Element 12:Empty

Rangement d'une bande depuis le lecteur LTO dans un slot

~# mtx -f /dev/sch0 unload 2
Unloading drive 0 into Storage Element 2...

Chargement d'une bande depuis le slot dans le lecteur LTO

# mtx -f /dev/sch0 load 2
Loading media from Storage Element 2 into drive 0...

Manipulation des bandes et des archives

ATTENTION: Il existe deux périphériques pour accéder à la bande: /dev/st0 et /dev/nst0. Le premier va rembobiner la bande à chaque manipulation. Le second permet de ne pas rembobiner la bande, et donc permet d'ajouter des données sur la bande.

Ici nous utiliserons en priorité /dev/nst0

État de la bande

# mt -f /dev/nst0 status
SCSI 2 tape drive:
File number=0, block number=0, partition=0.
Tape block size 0 bytes. Density code 0x46 (LTO-4).
Soft error count since last status=0
General status bits on (41010000):
 BOT ONLINE IM_REP_EN

Une taille de bloc de "0 bytes" indique des blocs de tailles dynamiques.

Position du lecteur dans la bande

# mt -f /dev/nst0 tell
At block 0.

On sait que la bande est au début. La position est donnée en blocs, quelquesoient la taille de ce dernier.

L'option tell ne fonctionne pas avec la version de mt installée par cpio. Il faut installer le paquet mt-st pour l'avoir.

De plus ce lecteur spécifique nécessite d'activer les commande SCSI logiques pour que ça fonctionne

# mt -f /dev/st0 stsetoptions scsi2logical

Gestions des archives sur la bande

Création d'archives

  • On s'assure qu'il n'y a pas d'archive sur cette position de la bande:
# tar tf /dev/nst0
tar: /dev/nst0: Cannot read: Input/output error
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now
  • On fait notre archive, hé oui tar c'est le tape archiver, il est ici dans son élément
# tar cf /dev/nst0 /home
tar: Removing leading `/' from member names
  • La bande doit avoir avancé de quelques blocs
# mt -f /dev/nst0 tell
At block 327
  • On peut faire une seconde archive derrière la première.
# tar cf /dev/nst0 /etc
tar: Removing leading `/' from member names
  • On a encore avancé de quelques blocs
# mt -f /dev/nst0 tell
At block 650.

Extraction/Tests d'archives sur la bande

  • Revenons au début de la bande
# mt -f /dev/nst0 rewind
# mt -f /dev/nst0 tell
At block 0.
  • On teste si notre archive de home est bien lisible
# tar tf /dev/nst0
home/
...
  • On avance la bande vers le début du second enregistrement
# mt -f /dev/nst0 fsf 1

Dans la page du manuel, fsf est indiqué comme

fsf    Forward space count files.  The tape is positioned on the first block of the next file.
  • On accède au second enregistrement
# tar tf /dev/nst0
etc/
...

Chaque archive est écrite, puis un marqueur eof est ajouté. On peut donc mettre plusieurs archives les unes derrières les autres. Il faut faire attention à ne rien écrasé de présent quand on écrit.

Déplacement d'archive en archive

On se place au début

# mt -f /dev/nst0 rewind

On peut alors aller à la fin des données présentes sur la bande (eod=end of data). Pratique pour ajouter des données à la fin de la bande

# mt -f /dev/nst0 eod
# mt -f /dev/nst0 tell
At block 328.

Si on veut aller à l'emplacement de notre seconde archive, on a l'option asf. On notera que les archives sont numérotées à partir de 0. L'option de asf donne le numéro de l'enregistrement sur lequel on souhaite se positionner.

# mt -f /dev/nst0 asf 1

On peut vérifier que c'est bien etc:

# tar tf /dev/nst0
etc
...