Có chức năng (hoặc giao diện; ioctl, netlink, v.v.) trong libs chuẩn của Linux sẽ trả về giá trị hiện tại trực tiếp từ hạt nhân mà không cần phân tích cú pháp/proc không? strace
nhập lệnh gắn kết, có vẻ như nó phân tích tệp trong/procChức năng Linux để có được điểm gắn kết
Trả lời
Không có syscall nào liệt kê thông tin này; thay vào đó, bạn có thể tìm thấy nó trong tệp /etc/mtab
mtab chỉ là một liên kết tượng trưng đến/proc/gắn kết trên hầu hết các hệ thống. – tMC
liên kết mềm hoặc liên kết cứng? Tôi nhớ rằng trong những ngày cũ mtab không đáng tin cậy ... –
@tMC: '/ proc/mounts' là một chi tiết thực hiện. '/ etc/mtab' là một tập tin chuẩn mà bạn sẽ tìm thấy trên hầu hết các hệ thống giống Unix. Tôi không kiểm tra nhưng tôi nghĩ đó là một phần của tiêu chuẩn. Vì vậy, bạn có thể dựa vào nó. Và tôi sẽ không nói "trên hầu hết hệ thống". Trong các hệ thống Ubuntu và OpenSuSE của tôi, đó là một tệp đơn giản. Tôi có '/ proc/mounts' nhưng đó là một liên kết :-) –
Có lý do nào khiến bạn không sử dụng cuộc gọi thư viện libc getmntent
không? Tôi nhận ra rằng nó không giống như một cuộc gọi hệ thống 'tất cả trong một', nhưng nó sẽ cho phép bạn nhận được thông tin liên quan.
#include <stdio.h>
#include <stdlib.h>
#include <mntent.h>
int main(void)
{
struct mntent *ent;
FILE *aFile;
aFile = setmntent("/proc/mounts", "r");
if (aFile == NULL) {
perror("setmntent");
exit(1);
}
while (NULL != (ent = getmntent(aFile))) {
printf("%s %s\n", ent->mnt_fsname, ent->mnt_dir);
}
endmntent(aFile);
}
Tôi có một hệ thống nhúng có thể sử dụng thông tin này trong khi khởi động; trước/proc được gắn kết. – tMC
Cả hai 'df' và' mount' đều sử dụng '/ proc/self/mountinfo' thay vì'/proc/mounts', nhưng kết quả là giống nhau. –
Hãy nhớ rằng 'getmntent' không phải là chủ đề an toàn. Có 'getmntent_r' (phần mở rộng GNU). –
- 1. Linux: cách kiểm tra xem ổ đĩa có được gắn kết với nfs
- 2. Python: Nhận Điểm trên Windows hoặc Linux
- 3. Bấm gắn vào chức năng phụ huynh trong foreach
- 4. Chức năng loại API Google Địa điểm ..
- 5. Chức năng fopen() có an toàn trong Linux không?
- 6. Làm cách nào để xác định thư mục là điểm gắn kết NFS gắn kết trong shellscript
- 7. Chức năng aio hạt nhân linux
- 8. Nhận đường dẫn của .dmg từ điểm gắn kết
- 9. Trong IDA Pro, có cách nào để gắn cờ một chức năng không?
- 10. Chức năng để có được sử dụng địa chỉ IP
- 11. Clojure chức năng để có được docstrings từ chức năng trong một không gian tên
- 12. Ngắt kết quả chức năng
- 13. Chức năng liên kết url
- 14. Có thể std :: chức năng được serialized?
- 15. Chức năng thực thi khi nhập được nhấn nếu hộp văn bản có tiêu điểm
- 16. Chức năng - kết hợp cặp
- 17. Con rối - Gắn kết với Bind
- 18. Làm thế nào để gắn kết một tập tin ".img" (được trích xuất từ phần mềm modem) trên Linux?
- 19. Pointfree chức năng kết hợp trong Python
- 20. Bộ kết hợp điểm cố định cho các chức năng đệ quy hai bên?
- 21. Trong bash, làm cách nào để gắn một phím chức năng vào một lệnh?
- 22. Người gọi chức năng trong hạt nhân Linux
- 23. Làm cách nào để ngăn chặn os.walk của Python đi qua các điểm gắn kết?
- 24. Có cách nào để có được chức năng hiện tại từ bên trong chức năng hiện tại không?
- 25. Chức năng interposition trong Linux mà không cần dlsym
- 26. Javascript 'dấu hai chấm' để gắn nhãn các chức năng ẩn danh?
- 27. Tệp được gắn ở đâu?
- 28. Cách POSIX tốt nhất để xác định xem hệ thống tập tin có được gắn kết chỉ đọc
- 29. Chức năng nội tuyến có liên kết nội bộ?
- 30. Hashing chức năng trăn để tạo lại đầu ra khi chức năng được sửa đổi
http://stackoverflow.com/questions/5095976/mount-system-call – Satish
@Satish mà gắn kết một filesystem- nó không trả lại _current mounts_ – tMC
Tại sao bạn muốn tránh '/ proc /'? ? dưới Linux, nó là cách ưa thích để lấy thông tin đó! Và nó cũng rất đơn giản !! –