Điểm:0

Gắn nfs khi khởi động với tư cách là người dùng cụ thể và cho phép ngắt kết nối?

lá cờ fr

Tôi đang dùng:

$ lsb_release -a
Không có mô-đun LSB nào khả dụng.
ID nhà phân phối: Ubuntu
Mô tả: Ubuntu 20.04.2 LTS
Phát hành: 20.04
Tên mã: tiêu cự

$ mate-about --version
Môi trường máy tính để bàn MATE 1.24.0

... với tư cách là khách hàng NFS.

Tôi có một chia sẻ nfs4 trên máy chủ; mục nhập của tôi trong /etc/fstab trên máy khách là như thế này:

172.16.0.5:/mydata /media/user/mydata_nfs nfs4 nosuid,nodev,nofail,x-gvfs-show,rw,relatime,user,noauto,uhelper=udisks2 0 0

Tôi đã tự tạo /phương tiện/người dùng/mydata_nfs, lúc đầu có các quyền sau:

$ ls -la /phương tiện/người dùng/
tổng số 20
drwxr-x---+ 5 gốc gốc 4096 ngày 25 tháng 7 15:56 .
drwxr-xr-x 3 gốc gốc 4096 ngày 19 tháng 7 18:43 ..
...
drwxr-xr-x 2 người dùng người dùng 4096 ngày 25 tháng 7 12:11 mydata_nfs

Mục nhập fstab ở trên cho phép chia sẻ không được gắn kết khi khởi động và vì vậy tôi phải nhấp vào GUI "trình khám phá tệp" theo cách thủ công (tại đây caja), làm như vậy; tuy nhiên, sau khi chia sẻ được gắn kết, quyền sở hữu (và dấu thời gian) sẽ thay đổi:

$ ls -la /phương tiện/người dùng/
tổng số 20
drwxr-x---+ 5 gốc gốc 4096 ngày 25 tháng 7 15:56 .
drwxr-xr-x 3 gốc gốc 4096 ngày 19 tháng 7 18:43 ..
...
drwxrwxrwx 6 gốc gốc 4096 ngày 29 tháng 7 06:15 mydata_nfs

Trên máy chủ NFS, no_root_squash được kích hoạt; theo tôi hiểu, trong trường hợp đó UID/GID từ người dùng máy khách được truyền đến máy chủ và vì trên máy chủ tôi cũng có người dùng với uid:gid của 1000:1000 (như trên máy khách), điều này hoạt động tốt với tôi (khi tôi tạo tệp, v.v., bên trong phần chia sẻ từ dòng lệnh trên máy khách, quyền sở hữu của người dùng được giữ trên phần chia sẻ) - ngoại trừ điểm gắn kết trên máy khách do root sở hữu (điều này gây ra sự cố cho tôi: một số chương trình được cài đặt bởi búng tay thậm chí sẽ không liệt kê phần chia sẻ dưới dạng thư mục).

Ngoài ra - ngay cả với dòng fstab ở trên (yêu cầu tôi phải gắn thủ công), khi tôi cố gắng ngắt kết nối khỏi GUI, tôi không thể và tôi nhận được hộp thoại có nội dung:

Không thể ngắt kết nối mydata_nfs
Lỗi tìm đối tượng cho thiết bị khối 0:56

Vì vậy, những gì tôi muốn có là:

  • Chia sẻ NFS sẽ được tự động gắn kết khi khởi động - với người dùng sở hữu cổ phần
  • Cho phép người dùng ngắt kết nối chia sẻ khỏi GUI

Điều này có khả thi không - và đâu sẽ là dòng fstab phù hợp để có điều đó?


Lưu ý rằng uid tùy chọn fstab (mà nếu không thì loại ánh xạ này cho ntfs) không hoạt động ở đây - nhật ký hệ thống sẽ phàn nàn:

Ngày 29 tháng 7 07:03:49 mypc mount[1148]: mount.nfs4: một tùy chọn gắn kết không chính xác đã được chỉ định
Ngày 29 tháng 7 07:03:49 kernel mypc: [ 17.179641] nfs4: Tham số 'uid' không xác định
Ngày 29 tháng 7 07:03:49 mypc systemd[1]: media-user-mydata_nfs.mount: Đã thoát quá trình gắn, mã=đã thoát, trạng thái=32/n/a
Ngày 29 tháng 7 07:03:49 mypc systemd[1]: media-user-mydata_nfs.mount: Không thành công với kết quả là 'mã thoát'.
Ngày 29 tháng 7 07:03:49 mypc systemd[1]: Không thể gắn /media/user/mydata_nfs.

Cũng thế allow_other là tham số không xác định cho NFS.

Điểm:0
lá cờ fr

Ok, còn xa hơn một chút, đây là những gì tôi đã thử:

Sau đó /phương tiện/người dùng/mydata_nfs đã được gắn thủ công (từ caja GUI) và hiển thị dưới dạng thuộc sở hữu của root (như trong OP), tôi đã làm:

người dùng sudo chown: người dùng /media/user/mydata_nfs

... và thực sự, điều này đã thay đổi quyền sở hữu - điều mà lúc đầu tôi dự kiến ​​là tạm thời (chỉ dành cho phiên hiện tại). Vì tôi không thể ngắt kết nối khỏi GUI, nên tôi đã khởi động lại và sau đó ở lần khởi động tiếp theo, hãy gắn phân vùng theo cách thủ công (từ caja GUI) một lần nữa. Tôi khá ngạc nhiên khi thấy điều này đã được ghi nhớ, vì vậy bây giờ trong danh sách tôi có:

$ ls -la /phương tiện/người dùng/
tổng số 20
drwxr-x---+ 5 gốc gốc 4096 ngày 25 tháng 7 15:56 .
drwxr-xr-x 3 gốc gốc 4096 ngày 19 tháng 7 18:43 ..
...
drwxrwxrwx 6 người dùng người dùng 4096 ngày 29 tháng 7 08:05 mydata_nfs

Vì vậy, vì một số lý do, sự thay đổi quyền sở hữu phân vùng NFS được gắn kết này vẫn tồn tại - điều này thật tuyệt, vì nó phù hợp với trường hợp sử dụng của tôi.

Sau đó, tôi chỉ cần loại bỏ không tự động từ /etc/fstab mục nhập - và bây giờ tôi có phân vùng được gắn khi khởi động, với người dùng được hiển thị với tư cách là chủ sở hữu - đó chính xác là cách tôi muốn.

Tuy nhiên, hóa ra điều này là không đủ để cài đặt phần mềm bởi búng tay để sử dụng nó - như đã lưu ý trong Ứng dụng Snap không thấy tệp từ phân vùng khác :

Snaps thường bị giới hạn. Theo mặc định, snaps không thể truy cập gì ngoài các khu vực có thể ghi của riêng chúng, nhưng chúng có thể nhận được quyền thông qua các giao diện. Có hai giao diện cung cấp khả năng truy cập tệp ngoài mặc định: giao diện Trang Chủ giao diện và phương tiện di động giao diện. ...

Vì vậy, những gì đã làm việc cho tôi trong trường hợp đó, là một gắn kết với liên kết, như đã trả lời trong bài đăng đó:

$ mkdir ~/mydata_nfs
$ Sudo mount --bind /media/user/mydata_nfs ~/mydata_nfs

... và sau đó chỉ búng tay phần mềm đọc/ghi tập tin trong ~/mydata_nfs.


Điều này đã giải quyết hầu hết các sự cố của tôi, ngoại trừ việc ngắt chia sẻ NFS khỏi GUI - vì vậy tôi vẫn muốn có câu trả lời cho vấn đề đó, nếu có ai biết cách thực hiện ...

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.