Các tệp được gắn trên NFSv4 được sở hữu bởi 4294967294, UID và GID khớp


23

Tôi có hai máy linux giống hệt nhau (hình ảnh giống hệt được khởi chạy trong amazon EC2) và tôi đang cố gắn một thư mục đã xuất qua NFSv4. Đây là những gì thư mục được gắn trông giống như trên máy khách:

root@server:~# ls -l /websites/
drwxr-xr-x  6 4294967294 4294967294   92 2010-01-01 20:21 logs
drwxr-xr-x  2 4294967294 4294967294   20 2009-12-23 01:14 monit.d
...

Tôi đã kiểm tra lại để đảm bảo rằng các UID phù hợp

Đây là lệnh mount tôi chạy từ máy khách

/sbin/mount.nfs4 $MASTER_DN:/ /websites -o rw,_netdev,async

Và đây là /etc/exportsmục trên máy chủ:

/websites 10.0.0.0/8(fsid=0,no_subtree_check,rw,no_root_squash)

dịch vụ rpcidmapd có chạy không? bắt đầu chúng bằng các lệnh /etc/init.d/rpcidmapd khởi động lại chkconfig rpcidmapd trên

Câu trả lời:


8

Như đã giải thích trong UID / GID với NFS và ZFS , NFSv4 không sử dụng UID. Tôi đã có một vấn đề tương tự và có thể giải quyết nó bằng cách sử dụng NFSv3. Điều này chỉ đòi hỏi thêm -o vers=3vào mountlệnh. Tất nhiên, nếu bạn cần sử dụng NFSv4, phản hồi này sẽ không được sử dụng nhiều cho bạn.


7

đọc tại đây http://blather.michaelwlucas.com/archives/796

Nếu tên miền máy khách và máy chủ NFSv4 không khớp, tất cả tên người dùng sẽ hiển thị dưới dạng không ai.

  1. chỉnh sửa /etc/idmapd.conf và đặt Miền trên máy chủ và máy khách thành "localdomain"

    [Chung]

    Tên miền = tên miền cục bộ

    [Dịch]

    Phương thức = nsswitch

  2. thay đổi tệp / etc / default / nfs-common (trên cả máy chủ và máy khách của bạn): đặt NEED_IDMAPD = yes

  3. bắt đầu dịch vụ idmapd


Đối với tôi, câu trả lời này đã giải quyết được vấn đề mà tôi gặp phải (sau khi "idmapd" gặp sự cố vì lý do gì đó).
Henk

7

Đây là một vấn đề ánh xạ id người dùng. Vì một số lý do, hệ thống đang sử dụng tài khoản "không ai" thay vì id tài khoản thật. Kiểm tra các tùy chọn đè bẹp và tệp idmapd.conf của bạn.

Đây là một chủ đề tôi tìm thấy thảo luận về vấn đề này, liên kết này đến bài đăng quan tâm, http://www.mail-archive.com/rhelv5-list@redhat.com/msg03303.html .

FYI, 4294967294 là -2, nếu được coi là số nguyên có chữ ký 32 bit. -1 hoặc -2 được sử dụng trên các bản phân phối Linux khác nhau cho không ai UID và nogroup GID (trong tệp mật khẩu, số không dấu 16 bit cao nhất, 65535, thường được sử dụng).


Cảm ơn đã trả lời, David. Mỗi bài viết của tôi, tôi đã no_root_squashkích hoạt. Bạn có thêm thông tin nào về tập tin idmapd.conf không?
dâu

3

Bạn cần thay đổi tệp / etc / default / nfs-common (trên cả máy chủ và máy khách của bạn): được đặt NEED_IDMAPDthành yes.

Ít nhất điều này đã giúp tôi.


2

Chúng tôi đang sử dụng các tùy chọn NFS anonuidanongid để đặt ID người dùng / nhóm mà máy chủ sẽ sử dụng cho các tệp được tạo bởi ẩn danh. Nếu chúng không được đặt, "không ai" và "nogroup" sẽ được sử dụng - có thể thay đổi tùy theo phiên bản và phân phối của hệ điều hành. Vậy một

/websites 10.0.0.0/8 
    (fsid=0,no_subtree_check,rw,no_root_squash,anonuid=1001,anongid=1001)
                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^

có thể lừa (với 1001 là UID / GID hợp lệ và có thể sử dụng trên máy 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.