Làm cách nào để gắn thư mục từ máy Linux trên máy Linux khác?


14

Tôi muốn gắn một thư mục từ máy Linux trên máy Linux khác. Làm thế nào để làm điều đó? Tôi có cần cập nhật /etc/fstabhay /etc/exportkhông?

Mục tiêu của tôi là gắn kết /tmptừ máy Linux khác. Tôi có Debian 5.1. 10.45.40.165, đó là IP của máy khác.

Ví dụ tôi đã thử:

mount -t nfs 10.45.40.165:/tmp /tmp
mount: 10.45.40.165:/tmp failed, reason given by server: Permission denied

1
Tại sao điều này được di chuyển từ SF?
Ignacio Vazquez-Abrams

@Ignacio Vâng - OP có lẽ không phải là sysadmin. David, tôi giả sử bạn có Debian. Sửa tôi nếu tôi sai. Dù sao, không có Linux 5.1 .
slhck

1
@slhck, @Darth: Nếu bạn khăng khăng.
Ignacio Vazquez-Abrams

1
@David: Vui lòng gửi /etc/exportsvà đầu ra của netstat -plantiptables -Ltừ máy chủ.
Ignacio Vazquez-Abrams

1
@David: bạn đã khởi động máy chủ NFS trên máy chủ chưa? Là iptables chạy trên máy chủ?
Peltier

Câu trả lời:


9

Những gì bạn đang làm là chia sẻ NFS. Trên hệ thống Debian, bạn nên cài đặt các công cụ cần thiết. Giả sử rằng máy khách (máy mà bạn muốn gắn máy tính từ xa) và máy chủ (máy có thư mục từ xa)

Trên máy chủ, bạn sẽ cần cài đặt

apt-get install nfs-server portmap nfs-common

trong các phiên bản debian mới

apt-get install nfs-kernel-server portmap nfs-common

Trên máy khách bạn sẽ cần cài đặt:

apt-get install nfs-client nfs-common

Lựa chọn gói của tôi có thể có nhiều hơn hoặc ít hơn những gì bạn cần nhưng, một số kết hợp sẽ làm.

Bây giờ những gì bạn cần làm là đặt các thư mục bạn muốn chia sẻ với máy từ xa vào / etc / export :

/path_to_tmp_folder/tmp 192.168.0.2(rw,sync,no_subtree_check,no_root_squash)

Sau đó:

exportfs -ra
/etc/init.d/nfs-kernel-server restart
/etc/init.d/portmap restart

Ở đây 192.168.0.2 là địa chỉ của máy cục bộ của bạn, thay thế bằng IP của chính bạn. tệp xuất có danh sách các máy có thể truy cập thư mục dùng chung. Nếu các máy của bạn không có giới hạn tường lửa với nhau (bạn có thể giải quyết vấn đề này bằng cách thêm máy chủ vào /etc/hosts.allow).

Bây giờ trên máy cục bộ của bạn, bạn có thể sử dụng lệnh:

sudo mount -o soft,intr,rsize=8192,wsize=8192 server_ip:/path_to_tmp_folder/tmp /local_path_to_empty_tmp_folder/tmp

Nếu bạn muốn có tự động gắn kết khi khởi động, bạn cần chỉnh sửa tệp / etc / fstab của mình và đặt dòng trên máy khách của bạn:

server_ip:/path_to_tmp/tmp /local_empty_folder/tmp nfs rsize=16384,wsize=16384,rw,auto,nolock

Đây chỉ là một ví dụ về cài đặt (bản sao được lấy từ chính tôi), bạn cần kiểm tra trợ giúp nfs để xem bộ nào tốt nhất.


bất kỳ lý do tại sao r / wsize là khác nhau cho cách tiếp cận gắn kết trái ngược với cách tiếp cận fstab?
puk

1
thay vì nfs-server trong các phiên bản mới của debian, nfs-kernel-server nên được sử dụng. Thông tin này là trong cây phụ thuộc debian. Vì vậy, cập nhật các câu trả lời được khuyến khích.
Dee

Bạn có thể cho phép một mạng con trong exportstập tin?
vô nghĩa

0

Để gắn thư mục / tmp từ một máy khác, nó phải được hiển thị bởi một dịch vụ cho phép điều đó. Câu hỏi của bạn chỉ ra rằng bạn có ý định sử dụng NFS cho việc này.

Trong trường hợp này, bạn sẽ cần chỉnh sửa / etc / export và cung cấp một dòng trong đó tương tự như

/tmp 10.45.40/24(ro,insecure,sync,no_subtree_check)

Đọc trang hướng dẫn xuất khẩu để biết chi tiết chính xác của tất cả các tùy chọn. Khi các tùy chọn là những gì bạn cần, hãy khởi động lại dịch vụ NFS với

exportfs -ra

Sau đó gắn thư mục đã xuất từ ​​máy khách của bạn.

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.