• Script affichage date de création dossiers / fichiers sur système de fichiers ext4

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4Un petit script qui me sert au quotidien pour afficher les dates de créations de dossiers ou fichiers sur un système de fichiers ext4.

    Celui-ci affiche les dates de création par ordre croissant.

    Check_crtime_in_EXT4

    Sous GNU/Linux, il existe différents types d'horodatage :

    Le mtime qui correspond à la date de modification ( avec les commandes vi, nano, echo par exemple ).

    Le atime qui est la date du dernier accès ( avec les commandes cat, more, tail par exemple ).

    Le ctime qui est la date de dernière modifications des métadonnées ( avec les commandes chmod, chown par exemple).

    /!\ Lorsqu'un nouveau fichier ou répertoire est créé, le atime, ctime et mtime afficheront le même horodatage.

    Avec le système de fichiers ext4, nous pouvons en plus via debugfs obtenir la date de création.

    Ici, nous pouvons vérifier avec la commande ls les différents horodatages selon les commandes passées.

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

     ( cliquer sur l'image pour l'agrandir )   

     

     

    Je peux vérifier les 3 horodatage simultanément avec la commande stat.

    Je peux voir également que l'horodatage concernant la date de création du fichier est vide.

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

     ( cliquer sur l'image pour l'agrandir )  

     

     

    Pour trouver la date de création d'un dossier ou d'un fichier, 3 étapes sont nécessaires :

    La première est de trouver l'inode :

    L'inode correspond a un numéro qui est attribué à chaque fichier ou dossier.

    L'inode contient toutes les informations sur un fichier ou un dossier donné telles l'User ID et le Group ID, le type de fichier, la taille du fichier, les droits d'accès...

    Pour trouver ce numéro, 2 commande sont possibles.

    stat -c %i /chemin/vers/fichier/

    ls -i /chemin/vers/fichier/ | awk '{print $1}'

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

      ( cliquer sur l'image pour l'agrandir )  

     

     

    Une fois le numéro d'inode trouvé, nous devons trouver sur quel numéro de partition est situé le fichier ou dossier.

    Pour cela, 2 commandes sont possibles.

    df /chemin/vers/fichier/ | awk 'NR==2 {print $1}'

    df /chemin/vers/fichier/ | tail -1 | awk '{print $1}'

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

     ( cliquer sur l'image pour l'agrandir )  

     

     

    Maintenant que nous avons le numéro d'inode et le numéro de partition, nous allons pouvoir trouver la date de création.

     Pour cela, plusieurs commandes sont possibles, selon la forme d'affichage que l'on souhaite.

    debugfs -R 'stat <numéro_inode>' /numéro/partition 2>/dev/null |  grep 'crtime'

    debugfs -R 'stat <numéro_inode>' /numéro/partition 2>/dev/null |  grep 'crtime' \
    | awk -F '--' {'print $2'} | awk {'print $1" "$3" "$2" "$5" "$4'}

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

     ( cliquer sur l'image pour l'agrandir )  

     

     

    Petite subtilité du script :

    Si vous afficher les fichiers et dossiers, vous devrez utiliser le paramètre : for fichiers in $(ls -1rt) 

    Si au contraire, vous ne souhaitez afficher que les dossiers, vous devrez utiliser le paramètre : for fichiers in $(ls -d */) 

     

    Script affichage date de création dossiers / fichiers sur système de fichiers ext4

    ( cliquer sur l'image pour l'agrandir )  

    « Script renommage imagesConfigurer Postfix pour le smtp free »

    Tags Tags : , , , ,
  • Commentaires

    Aucun commentaire pour le moment

    Suivre le flux RSS des commentaires


    Ajouter un commentaire

    Nom / Pseudo :

    E-mail (facultatif) :

    Site Web (facultatif) :

    Commentaire :