Manipulation de fichier avec aliensh
Configurer l'environnement ALICE
Pour pouvoir avoir accès aux commandes alien, vous devez configurer votre environnement ALICE
Lancer une fenêtre de shell aliensh
sh-3.00$ aliensh [ aliensh 2.1.18 (C) ARDA/Alice: Andreas.Joachim.Peters@cern.ch/Derek.Feichtinger@cern.ch] aliensh:[alice] [1] /alice/cern.ch/user/f/flambert/ >
Aliensh est un environnement virtuel qui ressemble beaucoup à un shell usuel. Tout se passe comme si vous étiez connecté à une autre machine.
Les fichiers que vous voyez sous cet environnement sont en fait des entrées d'un catalogue appelé AlienFC, ce sont des alias (LFN) qui pointent vers le véritable emplacement physique sur la grille. Par la suite, je parlerais d'environnement Grid pour désigner aliensh et d'environnement Local pour désigner la machine d'où vous vous êtes connecté (généralement une UI).
La variable alien_CLOSE_SE
Alien est un shell qui vous présente les données de la grille comme si elles se trouvaient sur un disque local. En réalité, toutes les données que vous manipulez par l'intermédiaire d'un compte 'alien' sont stockées sur un SE de la grille.
Si vous ne précisez pas explicitement lequel, les commandes alien de manipulation de données prennent par défaut le SE définit par la variable alien_CLOSE_SE
aliensh:[alice] [2] /alice/cern.ch/user/f/flambert/ >echo $alien_CLOSE_SE ALICE::Grenoble::DPM
Les commandes du shell aliensh
Vous pouvez trouver une explication détaillée des commandes disponibles dans le user guide aliensh.
Commandes utiles
ls: Liste des fichiers
Cette commande vous permet de lister vos fichiers dans l'environnement virtuel aliensh.
aliensh:[alice] [1] /alice/cern.ch/user/f/flambert/ >ls .FILES_TO_COPY alien-tests bin FILES_TO_COPY Tutorial
cp: copie de fichier
- Local -> Grid
Dans l'exemple ci dessous, le fichier est copié du compte local sur le SE défini par défaut.
aliensh:[alice] [15] /alice/cern.ch/user/f/flambert/ >cp file:/atlas/lambert/test.xml alien:test.xml [xrootd] Total 0.00 MB |====================| 100.00 % [0.8 MB/s] aliensh:[alice] [21] /alice/cern.ch/user/f/flambert/ >ls ... test.xmlPour copier le fichier sur la grille sur un autre SE que celui par défaut, il faut préciser le SE
aliensh:[alice] [20] /alice/cern.ch/user/f/flambert/ >cp file:/atlas/lambert/test.xml alien:test2.xml@ALICE::CERN::SE [xrootd] Total 0.00 MB |====================| 100.00 % [4.9 MB/s] aliensh:[alice] [21] /alice/cern.ch/user/f/flambert/ >ls ... test.xml test2.xml
- Grid-> Local
aliensh:[alice] [23] /alice/cern.ch/user/f/flambert/ >cp alien:test2.xml file:/atlas/lambert/test3.xml [xrootd] Total 0.00 MB |====================| 100.00 % [0.1 MB/s]
Puis sur le compte local[lambert@lpsc-ui ~]$ ls ... test3.xml
whereis: trouver un fichier
Cette commande vous permet d'obtenir des informations sur le SE qui héberge physiquement votre fichier.
aliensh:[alice] [17] /alice/cern.ch/user/f/flambert/ >whereis test.xml Oct 20 09:42:04 info The file test.xml is in SE => ALICE::Grenoble::DPM pfn =>root://lpsc-se-dpm-server.in2p3.fr:1094//dpm/in2p3.fr/home/alice/04/65235/d25571d8-bd4a-11de-8f1f-001e0b4e0440 aliensh:[alice] [22] /alice/cern.ch/user/f/flambert/ >whereis test2.xml Oct 20 09:52:18 info The file test2.xml is in SE => ALICE::CERN::SE pfn =>root://pcaliense04.cern.ch:1095//04/18702/0f2880bc-bd4d-11de-8271-001e0b4e0440
erase: effacer physiquement un fichier
Attention Avec cette commande vous effacez physiquement tous les répliquas du fichier ainsi que ses références dans le LFC d'alien.
aliensh:[alice] [32] /alice/cern.ch/user/f/flambert/ >erase test2.xml Oct 20 10:09:34 info Making the envelope ourselves: -s delete /alice/cern.ch/user/f/flambert/test2.xml ALICE::CERN::SE Oct 20 10:09:34 info Checking the size in ALICE::CERN::SE (1073741824) Storagename 1k-blocks Used(KB) Available Use% #Files Type min_size alice::CERN::SE 21999124480 6662804490 15336319990 30% 1667740 File ... aliensh:[alice] [33] /alice/cern.ch/user/f/flambert/ >whereis test2.xml Oct 20 10:11:00 info Error missing the guid in getAllInfoFromGUID Oct 20 10:11:00 info Error getting the info from 'test2.xml'
rm: effacer une référence d'un fichier
Les fichiers qui apparaissent sous votre environnement Grid sont en fait des alias enregistré dans un AlienFC (AlienFileCatalogue). La commande rm permet de supprimer une référence dans ce catalogue sans supprimer physiquement le fichier sur le SE.
edit: editer un fichier
La commande edit ouvre votre fichier dans l'éditeur défini par défaut (dans mon ca vi)
aliensh:[alice] [35] /alice/cern.ch/user/f/flambert/ >edit test.xml <?xml version="1.0"?> ...Quand vous modifiez votre fichiers, l'environnement alien fait automatiquement du versionning. Vous pouvez donc retrouver les anciennes versions du fichier modifié sous le répertoire .<mon fichier>
up ;