Làm thế nào để gắn kết - gắn kết vĩnh viễn?


22

Khi tôi đang làm:

mount --bind dirone dirtwo

Sau khi khởi động lại hệ điều hành, liên kết bị mất.

Tôi đang kiểm tra dirs bị ràng buộc trong /proc/mounts

Làm thế nào tôi có thể làm cho các liên kết này vĩnh viễn mà không bị tắc nghẽn /etc/fstab?

Đây là một mục từ /proc/mounts

/dev/disk/by-uuid/4f5082d7-aba2-4bc7-8d64-3bbb3d773aab /home/username/dir ext4 rw,relatime,data=ordered 0 0

1
Bạn phải chạy lệnh đó trong khi khởi động (rc.local) hoặc đặt một mục trong / etc / fstab. Điều gì khiến bạn nghĩ rằng điều này đang làm tắc nghẽn / etc / fstab? , đây là những gì fstab dành cho, fstab "sạch" hơn nhiều so với RC.local
Panther

Câu trả lời:


31

Bạn có ý nghĩa gì "tắc nghẽn /etc/fstab"? Nơi tốt nhất để đặt cái này vào /etc/fstab ; đó là những gì nó được làm cho!

Tất cả bạn phải làm là thêm một dòng sau lần gắn kết đầu tiên:

# <device>                                 <dir>                 <type>  <options>                 <dump>  <pass>
UUID=288a84bf-876c-4c4b-a4ba-d6b4cc6fc0d2  /mnt/device            ext4    defaults,noatime,nofail   0       2
/mnt/device                                /srv/binded_device     none    bind                      0       0

Vì vậy, bạn đề nghị chỉ sao chép / dán từ /proc/mountsđến /etc/fstab?
Alexander Kim

Vâng, điều đó nên làm việc. Chỉ cần sao chép cả giá trị gốc vàmount --bind
ryanmjacobs

Cảm ơn, nhưng mount --bindkhông lưu trong /proc/mounts?
Alexander Kim

Không, tôi đoán nó không; nhưng, không quá khó để sao chép mount đầu tiên sau đó thêm cái của riêng bạn cho mount --bind.
ryanmjacobs

giống như trong ví dụ của bạn thay vì rw,relatime,data=orderedloại bind, phải không?
Alexander Kim

19

Cách dễ nhất là gắn kết - tìm kiếm những gì bạn cần

mount --bind /home/sda1/Windows/Users/Me/Dropbox ~/Dropbox

Sau đó mở mtab

sudo nano /etc/mtab

Sao chép dòng của bạn như

/home/sda1/Windows/Users/Me/Dropbox /home/me/Dropbox none rw,bind 0 0

và dán nó vào fstab để nó có thể khởi động lại

sudo nano /etc/fstab

Nếu thư mục của bạn nằm trên đĩa được gắn, hãy đảm bảo rằng đường liên kết của bạn xuất hiện sau khi gắn đĩa


2
đây nên là giải pháp được chấp nhận
Daksh Miglani

3

Một giải pháp khác (hữu ích khi bạn đang sử dụng LVM và câu trả lời được chấp nhận sẽ không hoạt động và một số có thể xem xét hữu ích hơn vì nó sử dụng logic hơn một chút) sẽ làm điều tương tự như sau:

Nối phần sau vào crontab của bạn
# crontab -l | đuôi -1; cat / usr / sbin / custom-biên dịch-mount

@reboot /usr/sbin/custom-compiler-mount

Về cơ bản, bạn sẽ sử dụng crond để thực thi một kịch bản khi khởi động lại

#!/bin/bash
( until [[ $( (mount |& grep vg0-homevol 2>&1 9<&1 > /dev/null 1<&9) ) ]] ; 
do 
sleep 1 
done & wait;mount -o rbind /home/linuxgeek/experimental/s3/gcc/ /gcc & ) & >/dev/null 
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.