Làm thế nào để bạn xác nhận fstab mà không cần khởi động lại?


104

Tôi sửa đổi /etc/fstab.

Tôi đã xác minh các thiết bị mới và tôi có thể gắn kết chúng bằng mountlệnh.

Làm thế nào tôi có thể xác nhận các sửa đổi được thực hiện để /etc/fstab?

Câu trả lời:


126

Bạn có thể chạy đơn giản: mount -a

-a Gắn kết tất cả các hệ thống tập tin (của các loại đã cho) được đề cập trong fstab.

Lệnh này sẽ gắn kết tất cả các hệ thống tập tin (chưa được gắn kết) được đề cập trong fstab và được sử dụng trong khởi động tập lệnh hệ thống trong khi khởi động.


3
... và so sánh nó với / etc / mtab sau khi bạn thực hiện "sudo mount -a", chỉ để đảm bảo tất cả các tùy chọn của bạn đã được vinh danh.
adebaumann

1
mount -abằng cách đọc lại /etc/fstabcũng sẽ tải lại /etc/mtabđể anh ta sẽ ổn với điều đó mà thôi.
Giải thưởng

2
không phải đó là điểm mà adebaumann đang cố gắng nâng cao ở đây sao? mount -a có thể trả về thành công, nhưng không nhất thiết có nghĩa là tất cả các tùy chọn gắn kết cụ thể đã được vinh danh. vì điều này cũng sẽ tải lại / etc / mtab, bạn nên kiểm tra xem liệu tất cả các tùy chọn có hoạt động không?
RapidWebs

57

Lệnh mount mất một --fakehoặc -fngắn. Lệnh sau sẽ làm những gì bạn cần:

mount -fav

Sau đây là trong tài liệu cho -ftùy chọn:

Causes everything to be done except for the actual system call; if it's not obvious, this ``fakes'' mounting the filesystem. This option is useful in conjunction with the -v flag to determine what the mount command is trying to do.

(Lưu ý đây là Linux - kiểm tra trước khi sử dụng ở nơi khác: FreeBSD sử dụng -fcho 'lực lượng' - chính xác nghĩa ngược lại.)


5
mount -fav không kiểm tra xem thiết bị có UUID được chỉ định có thực sự nằm trong hệ thống không. Ngoài ra, người ta muốn kết hợp -f với -n không gây ô nhiễm / etc / mtab
Alexandr Priymak 6/2/2015

Tôi thích mount --fake -anhưng dường như exit code($?)=0luôn trở về . Ừm ..
kujiy

Ngoài ra tùy chọn giả mạo không kiểm tra xem thư mục có tồn tại hay không. Nó nói successfully mountedngay cả khi tồn tại điểm gắn kết
DollarAkshay

Đây có vẻ là một điều tốt đầu tiên để thử, nhưng bạn cũng nên thực hiện một "mount -a" sau đó để xác minh. Trong trường hợp của tôi, tôi đặt các tùy chọn thành "mặc định" thay vì "mặc định" (điều này ngăn Pi của tôi khởi động), nhưng mount -favxác thực nó là chính xác. Ngay sau khi tôi làm một mount -anó tìm thấy một lỗi.
Adam Plocher

6

sudo findmnt --verify --verbose là cách tốt nhất tôi tìm thấy


3

Tôi tìm thấy điều này / vấn đề / nhưng giải pháp không đáp ứng yêu cầu của tôi.

Khi khởi động lại với bất kỳ mục không hợp lệ nào trong / etc / fstab, chẳng hạn như các hệ thống tệp bị thiếu mà fsck không thể kiểm tra; hệ thống sẽ không khởi động được. Điều đó có thể khó đối phó hơn nhiều nếu bạn có một hộp không đầu.

Đây là giải pháp của tôi để kiểm tra / etc / fstab để tránh sự cố khởi động này:

    # cat /usr/local/bin/check-fstab-uuid-entries.sh
    #!/usr/bin/env bash

    for x in $(grep ^UUID /etc/fstab|cut -d \  -f 1|cut -d = -f 2)
    do
            if [ ! -h /dev/disk/by-uuid/$x ];then
                    echo $(grep $x /etc/fstab)  ..... not found
            fi
    done

2

mount -a là phương pháp an toàn để kiểm tra / etc / fstab nếu không, mục nhập sai có thể phá vỡ hệ thống

Bạn cũng nên giữ một bản sao lưu của tập tin gốc / etc / fstab. nó có thể được sao chép vào thư mục gốc của root


2

Lưu ý rằng nếu bạn thêm tệp hoán đổi vào fstab của mình, mount -abạn sẽ không bật nó: bạn sẽ muốn chạy swapon -a.


1

TBH thậm chí gắn giả không xác nhận an toàn fstab cho các mục nhập loại fs xấu.

bạn có thể có các mục có uuid, thư mục chính xác, v.v. nhưng nếu bạn chỉ định loại FS không tồn tại, điều này sẽ tạm dừng khởi động của bạn vào lần tiếp theo.

[root @ grumpy ~] # grep sao lưu / etc / fstab
UUID = 5ed48e5e-7251-4d49-a273-195cf0432a89 / mnt / sao lưu noatime, gật đầu, xfs mặc định, gật đầu, nosuid 0 0
[root @ cục cằn ~] #

[root @ gắt gỏng ~] # mount -fav | sao lưu grep
/ mnt / backup: được gắn thành công
[root @ gắt gỏng ~] #
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.