bagaimana cara mengetahui apakah noatime atau relatime adalah opsi mount default di kernel?

17

Saya mencoba untuk mengetahui apakah relatime atau noatime diatur pada sistem file, tetapi saya tidak menemukan informasinya, baik di / etc / fstab, maupun di opsi boot kernel.

Pertama-tama, tampak jelas bahwa saya tidak memiliki perilaku "normal" di 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#

Saya punya dua pertanyaan:
- Apakah noatime atau relatime merupakan opsi pemasangan default, dan jika ya, dari rilis kernel mana?
- Apakah ada cara untuk melihat opsi pemasangan standar (yaitu: bagaimana saya bisa melihat mengapa saya tidak memiliki perilaku atime "normal"?)
Banyak pertanyaan tetapi saya pikir mereka terkait. Jangan ragu untuk mengedit judul jika Anda memiliki judul yang lebih eksplisit.

pengguna368507
sumber
mungkin bertanya di serverfault.com

Jawaban:

15

Ini harus mencantumkan semua opsi yang dipasang oleh sistem file:

cat /proc/mounts
Clarus
sumber
Terima kasih. Saya melihat bahwa "mount" tidak menunjukkan semuanya! Apakah Anda tahu dari mana opsi mount "tambahan" (yaitu: yang ditampilkan di / proc / mount tetapi tidak di / etc / fstab) berasal? Maksud saya, di mana kernel membacanya?
Kernel berisi nilai-nilai default yang ditambahkan sebagai opsi sistem file jika tidak ada nilai tertentu yang ditentukan. Nilai-nilai yang tepat dari opsi default terkandung dalam konfigurasi kernel ketika Anda mengkompilasi kernel.
Clarus
google tidak mengembalikan apa pun di "CONFIG_ relatime" dan grep -i relatime .configtidak mengembalikan apa pun di mesin saya. Apa yang saya lewatkan?
Periksa kerneltrap.org/node/14148
Clarus
Tautan tersebut berbicara tentang opsi kernel "CONFIG_DEFAULT_RELATIME", tetapi saya tidak dapat menemukan opsi ini, itu bukan di sumber kernel (saya periksa di 2.6.36 dan 3.0), juga di .config saya. Saya tidak mengerti mengapa CONFIG_DEFAULT_RELATIME tidak ada di sumber kernel
2

Pertanyaan ini cukup lama, tetapi Anda dapat melihat opsi pemasangan default untuk sistem file ext dengan:

tune2fs -l /dev/<device>
James Hewitt
sumber
Dan bagaimana seseorang menginstal program itu, karena sepertinya itu bukan inklusi standar?
underscore_d
1
@underscore_d gunakan "apt-get install e2fsprogs" atau setara lokal yang sesuai.
Peter Hansen
0

nfsstat -m akan memberi Anda daftar semua mount dan flag NFS.

Dengan itu, saya harus menggunakan cat /proc/mountskernel 2.6.5 yang lebih lama, karena nfsstat -m tidak didukung saat itu.

Banjer
sumber