Làm thế nào để biết nếu noatime hoặc relatime là tùy chọn gắn kết mặc định trong kernel?


17

Tôi đã cố gắng để biết liệu Relatime hay noatime được đặt trên một hệ thống tập tin, nhưng tôi không tìm thấy thông tin, không trong / etc / fstab, cũng không có trong tùy chọn khởi động kernel.

Trước hết, có vẻ như rõ ràng rằng tôi không có hành vi "bình thường" trên 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#

Tôi có hai câu hỏi:
- Noatime hoặc relatime là một tùy chọn gắn kết mặc định, và nếu có, từ bản phát hành kernel nào?
- Có cách nào để xem các tùy chọn gắn kết mặc định (nghĩa là: làm thế nào tôi có thể thấy lý do tại sao tôi không có hành vi atime "bình thường"?)
Nhiều câu hỏi nhưng tôi nghĩ chúng có liên quan. Hãy chỉnh sửa tiêu đề nếu bạn có một tiêu đề rõ ràng hơn.


có thể hỏi tại serverfault.com

Câu trả lời:


15

Điều này sẽ liệt kê tất cả các tùy chọn mà một hệ thống tập tin được gắn kết với:

cat /proc/mounts

cảm ơn. Tôi thấy rằng "gắn kết" không hiển thị tất cả mọi thứ! Bạn có biết các tùy chọn gắn kết "bổ sung" (nghĩa là: các tùy chọn được hiển thị trong / Proc / mounts nhưng không có trong / etc / fstab) đến từ đâu không? Ý tôi là, hạt nhân đọc chúng ở đâu?

Hạt nhân chứa các giá trị mặc định được nối dưới dạng tùy chọn hệ thống tệp nếu không có giá trị cụ thể nào được chỉ định. Các giá trị chính xác của các tùy chọn mặc định được chứa trong cấu hình kernel khi bạn biên dịch kernel.
Clarus

google không trả lại gì trên "CONFIG_ relatime" và grep -i relatime .configkhông trả lại gì trên máy của tôi. Tôi đã bỏ lở những gì ?


Liên kết nói về tùy chọn kernel "CONFIG_DEFAULT_RELATIME", nhưng tôi không thể tìm thấy tùy chọn này, nó không có trong các nguồn kernel (tôi đã kiểm tra trong 2.6.36 và 3.0), cũng không phải trong .config. Tôi không hiểu tại sao CONFIG_DEFAULT_RELATIME không tồn tại trong các nguồn kernel

2

Câu hỏi này khá cũ, nhưng bạn có thể xem các tùy chọn gắn kết mặc định cho một hệ thống tập tin mở rộng với:

tune2fs -l /dev/<device>

Và làm thế nào một người nào đó sẽ cài đặt chương trình đó, vì nó dường như không bao gồm tiêu chuẩn?
gạch dưới

1
@underscore_d sử dụng "apt-get install e2fspross" hoặc tương đương cục bộ thích hợp.
Peter Hansen

0

nfsstat -m sẽ cung cấp cho bạn một danh sách tất cả các gắn kết và cờ NFS.

Như đã nói, tôi đã phải sử dụng cat /proc/mountstrên kernel 2.6.5 cũ hơn, vì nfsstat -m không được hỗ trợ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.