Как узнать, является ли noatime или relaytime опцией монтирования по умолчанию в ядре?


17

Я пытался узнать, было ли установлено относительное время или noatime в файловой системе, но я не нашел информацию ни в / etc / fstab, ни в параметрах загрузки ядра.

Прежде всего, кажется очевидным, что у меня нет «нормального» поведения в atime:

root@antec:/tmp# rm -f test.txt; echo a>test.txt

root@antec:/tmp# stat test.txt | \grep -i 2011
Access: 2011-08-01 21:54:30.000000000 +0200
Modify: 2011-08-01 21:54:30.000000000 +0200
Change: 2011-08-01 21:54:30.000000000 +0200

root@antec:/tmp# cat test.txt > /dev/null

root@antec:/tmp# stat test.txt | \grep -i 2011
Access: 2011-08-01 21:54:53.000000000 +0200
Modify: 2011-08-01 21:54:30.000000000 +0200
Change: 2011-08-01 21:54:30.000000000 +0200

root@antec:/tmp# date
Mon Aug  1 21:55:00 CEST 2011

root@antec:/tmp# cat test.txt > /dev/null

root@antec:/tmp# stat test.txt | \grep -i 2011
Access: 2011-08-01 21:54:53.000000000 +0200 <--- atime not modified
Modify: 2011-08-01 21:54:30.000000000 +0200
Change: 2011-08-01 21:54:30.000000000 +0200
root@antec:/tmp#

У меня есть два вопроса:
- noatime или relaytime являются опциями монтирования по умолчанию, и если да, из какого выпуска ядра?
- Есть ли способ увидеть параметры монтирования по умолчанию (например: как я могу понять, почему у меня нет «нормального» поведения времени?)
Многие вопросы, но я думаю, что они связаны между собой. Не стесняйтесь редактировать заголовок, если у вас есть более явный заголовок.


может быть, спросить на serverfault.com

Ответы:


15

Это должно перечислить все параметры, с которыми была смонтирована файловая система:

cat /proc/mounts

Благодарю. Я вижу, что "гора" не показывает все! Знаете ли вы, откуда берутся «дополнительные» параметры монтирования (т.е. те, которые показаны в / proc / mounts, но не в / etc / fstab)? Я имею ввиду, где ядро ​​их читает?

Ядро содержит значения по умолчанию, добавленные в качестве параметров файловой системы, если не указано конкретное значение. Точные значения параметров по умолчанию содержатся в конфигурации ядра при компиляции ядра.
Clarus

Google не возвращает ничего на «CONFIG_ relatime» и grep -i relatime .configничего не возвращает на моей машине. Что я пропустил ?

Проверьте kerneltrap.org/node/14148
Clarus

Ссылка говорит о параметре ядра «CONFIG_DEFAULT_RELATIME», но я не могу найти этот параметр, его нет в исходных кодах ядра (у меня есть проверка в 2.6.36 и 3.0), ни в моем .config. Я не понимаю, почему CONFIG_DEFAULT_RELATIME не существует в исходных

2

Этот вопрос довольно старый, но вы можете посмотреть параметры монтирования по умолчанию для файловой системы ext:

tune2fs -l /dev/<device>

И как кто-то может установить эту программу, поскольку она не является стандартным включением?
underscore_d

1
@underscore_d используйте «apt-get install e2fsprogs» или соответствующий локальный эквивалент.
Питер Хансен

0

nfsstat -m даст вам список всех монтирований и флагов NFS.

С cat /proc/mountsучетом вышесказанного мне пришлось использовать старое ядро ​​2.6.5, так как тогда nfsstat -m не поддерживался.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.