Comment puis-je changer la date de «changement» du fichier?


23

Comment puis-je changer la date de «changement»?

$ touch -t 9901010000 test;stat test
  File: `test'
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: fe01h/65025d    Inode: 11279017    Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/    x)   Gid: ( 1000/    x)
Access: 1999-01-01 00:00:00.000000000 +0100
Modify: 1999-01-01 00:00:00.000000000 +0100
**Change: 2012-04-08 19:26:56.061614473 +0200**
 Birth: -

3
Définir arbitraire ctimen'est pas facile à faire. Question connexe sur SO.
jw013

Réponses:


23

Vous ne pouvez pas changer le ctime par des moyens ordinaires. C'est par conception: le ctime est toujours mis à jour vers le courant lorsque vous modifiez l'une des métadonnées du fichier, et il n'y a aucun moyen d'imposer un ctime différent. Pour modifier la durée d'un fichier, vous devez effectuer l'une des opérations suivantes:

  • Réglez l'heure système sur l'heure que vous souhaitez imposer, puis touchez le fichier, puis réinitialisez l'heure système.
  • Modifiez le noyau pour ajouter une interface pour changer le ctime.
  • Accédez directement à l'image du disque (par exemple avec debugfs) et déformez les bits sur le disque (ne le faites pas pendant que le système de fichiers est monté).

2
Le réglage de l'heure système et de chmod a fonctionné pour moi. Voir le script ici: stackoverflow.com/questions/16126992/…
gaoithe

12

Vous avez la réponse à la question SO connexe pointée par jw013, pour extX, sur le disque non monté :

# Update ctime
debugfs -w -R 'set_inode_field /tmp/foo ctime 201001010101' /dev/sda1

# Drop vm cache so ctime update is reflected
echo 2 > /proc/sys/vm/drop_caches

4

Le ctime d'un fichier est mis à jour lorsque l'une des métadonnées est modifiée.

$ ls -l x.py
-rw-rw-r--. 1 ignacio ignacio 485 Mar 26  2010 x.py
$ stat -c %z x.py
2010-03-26 11:57:56.237068175 -0400
$ chown ignacio x.py
$ stat -c %z x.py
2012-04-08 15:31:33.682383575 -0400
$ ls -l x.py
-rw-rw-r--. 1 ignacio ignacio 485 Mar 26  2010 x.py

mais comment le modifier sans le mettre à jour
Someone1234

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.