Я только что просмотрел файл /etc/resolv.conf
с помощью команды cat
(или открыл его с помощью mcedit). Теперь, когда я перечисляю детали файла, используя ls -ul
"время доступа" не изменяется / не обновляется - имеет то же самое старое значение. Это странно, поскольку для любых других файлов "время доступа" обновляется после cat.
1 ответ
Вызовите df /etc/resolv.conf
и отметьте, под какой точкой монтирования он существует. Пример из моего Kubuntu:
$ df /etc/resolv.conf
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 806600 9660 796940 2% /run
Удивительно, но мой resolv.conf
находится в /run
. Правда:
$ ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 29 Nov 24 2016 /etc/resolv.conf -> ../run/resolvconf/resolv.conf
Тогда нам нужно знать его параметры монтирования:
$ mount | grep " /run "
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=806600k,mode=755)
Обратите внимание на atime
опцию. В моем случае это relatime
. man 8 mount
объясняет:
relatime
Обновить время доступа к индоду относительно времени изменения или изменения. Время доступа обновляется только в том случае, если предыдущее время доступа было раньше, чем текущее время изменения или изменения. (Аналогичноnoatime
, но не нарушаетmutt
или другие приложения, которым необходимо знать, был ли файл прочитан с момента последнего изменения.)
(Проверьте остальные параметры *atime
, чтобы получить полную картину.)
relatime
очень распространено в наши дни. Это экономит частые письма пока еще обеспечивает atime
к программам , которые в этом нуждаются. В моем Kubuntu только эти крепления не используют relatime
:
$ mount | grep -v relatime
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
Возможно, вы также широко используете relatime
.
Это странно, поскольку для любых других файлов "время доступа" обновляется после
cat
.
Может быть , «в прошлый раз доступ был раньше , чем текущие изменения или изменить время», поэтому atime
был обновлен. Или "другие файлы" находятся под другой точкой монтирования (например, с параметром strictatime
). Обратите внимание, что мой resolv.conf
находится в другой файловой системе, чем весь файл /etc/
(/etc/resolv.conf
- это символическая ссылка на другое место), поэтому в общем случае вы даже не должны предполагать, что "файлы" в одном каталоге находятся в та же файловая система, в той же точке монтирования с теми же параметрами.
Какими бы ни были ваши настройки, теперь вы знаете, как исследовать проблему.