Команде 'ls-ltu' не удается перечислить папки/файлы на основе прошлого раза, к которому получают доступ,

screen позволяет Вам:

  1. возвратитесь к фактическому рабочему экрану, отправьте сигналы, посмотрите, как быстро он идет, посмотрите, существуют ли сообщения об ошибках и т.д.
  2. назовите процессы со значимым заголовком. если Вы хотите уничтожить один процесс, Вы не должны делать работы предположения о ее идентификаторе процесса.
1
31.08.2013, 07:10
2 ответа

Можно использовать команду stat видеть информацию, связанную со временем относительно файлов и каталогов.

Пример

$ mkdir a b

$ ll
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 b

$ ls -ltu
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 b

Вывод от статистики

Теперь давайте посмотрим эти каталоги с stat команда:

$ stat a b
  File: `a'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643285     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
  File: `b'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643286     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400

Доступ a

Теперь позвольте нам каталог доступа a:

$ ls a

Теперь давайте перепроверим каталоги с stat:

$ stat a b
  File: `a'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643285     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:08:33.221267791 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
  File: `b'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643286     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400

Мы видим, что действительно производили информацию о статистике каталога с этим ls a:

прежде

Access: 2013-08-31 00:08:03.621936538 -0400

после

Access: 2013-08-31 00:08:33.221267791 -0400

Доступ b

Теперь, если мы получаем доступ b каталог, ls b:

$ ls b

$ ls -ltu
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:17 b
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a

Вывод от статистики

Мы видим, что время доступа изменилось и вывод выше от ls -ltu как это должно быть:

$ stat a b
  File: `a'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643285     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:08:33.221267791 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
  File: `b'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd02h/64770d    Inode: 5643286     Links: 2
Access: (0775/drwxrwxr-x)  Uid: (  500/    saml)   Gid: (  501/    saml)
Access: 2013-08-31 00:17:15.279776957 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400

Мы можем снова видеть что простое ls b вызванный время доступа, которое будет обновлено:

прежде

Access: 2013-08-31 00:08:03.621936538 -0400

после

Access: 2013-08-31 00:17:15.279776957 -0400

Сводка

Во взгляде на вышеупомянутый анализ я не вижу оснований почему ls -ltu не показал бы Вам каталоги, отсортированные по их временам доступа как ожидалось.

Так что происходит?

Возможно, Вы, каталог смонтировался таким образом, что времена доступа не прослеживаются? Это объяснило бы, почему нет никакого изменения.

Если Вы смотрите в странице справочника для монтирования, управляют, чтобы Вы видели эти 2 определенные опции:

atime     Update inode access time for each access. See also the 
          strictatime mount option.

noatime   Do not update inode access times on this filesystem (e.g, 
          for faster access on the news spool to speed up news servers).

Можно проверить, как файловая система смонтирована с помощью mount команда. Если устройство смонтировано таким образом что опция noatime обнаруживается, затем это монтируется так, чтобы время доступа (atime) не было прослежено. Это сделано обычно для увеличения производительности.

Пример

$ mount
/dev/mapper/vg_grinchy-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda5 on /boot type ext4 (rw)
/dev/mapper/vg_grinchy-lv_home on /home type ext4 (rw)
gvfs-fuse-daemon on /home/saml/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=saml)
2
28.01.2020, 02:03

Это именно то, что вам нужно:

ls -Aru | tail -n 1  
-2
28.01.2020, 02:03

Теги

Похожие вопросы