FAQ Dlaczego nie mogę nadpisywać plików na QNAP NAS, gdy uzyskuję do niego dostęp za pośrednictwem Client for NFS na Windows Server?

QNAP

Bot
Management
29 Kwiecień 2013
2 108
34
88
Taipei
www.qnap.com
Dotyczy produktów

  • Wszystkie serie QNAP NAS
  • Windows Server (dowolna obsługiwana wersja)

Scenariusz
Użytkownik uzyskuje dostęp do folderu współdzielonego QNAP NAS za pośrednictwem usług plików sieciowych (NFS) z serwera Windows Server z obsługiwaną wersją. Podczas kopiowania pliku o tej samej nazwie system Windows wyświetla monit Replace or Skip Files , wskazując, że istniejący plik jest obecny na serwerze NAS.
50c3d2614779717fd72b5a3aa8952bd9.png


Jednak po wybraniu opcji Replace the file in the destination operacja kończy się niepowodzeniem z powodu błędu odmowy dostępu lub błędu uprawnień, uniemożliwiając nadpisanie lub zaktualizowanie pliku.
09463de7f09a0f88bb0e5f0a8a0e6a79.png




Przyczyna główna
To zachowanie jest znanym ograniczeniem funkcji Client for NFS w systemie Windows Server i jest niezależne od konfiguracji NAS. To samo zachowanie obserwuje się we wszystkich obsługiwanych wersjach Windows Server, które zawierają Client for NFS.

  • Client for NFS obsługuje tylko NFSv2 i NFSv3 i nie obsługuje list ACL NFSv4. W rezultacie nie może negocjować ani modyfikować list ACL POSIX przez NFS.
  • Domyślnie Client for NFS uzyskuje dostęp do udziałów NFS przy użyciu anonimowego UID i GID. Jeśli serwer NAS nie przyznaje uprawnień do zapisu tej anonimowej tożsamości, operacje zapisu kończą się niepowodzeniem.
  • Dostęp jest odmawiany, chyba że anonimowe UID i GID są jawnie mapowane na UID i GID, które serwer NAS rozpoznaje i którym zezwala na zapis do folderu współdzielonego, niezależnie od skonfigurowanych uprawnień zapisu folderu współdzielonego.
UwagaTe ustawienia muszą być skonfigurowane na serwerze Windows Server.


Rozwiązanie
Aby rozwiązać ten problem, zmapuj anonimowego użytkownika NFS na serwerze Windows Server na UID i GID, którym serwer NAS zezwala na zapis do folderu współdzielonego.

Konfigurację można zastosować, korzystając z jednej z poniższych metod.

Metoda 1: Konfiguracja za pomocą PowerShell (zalecane)

  1. Otwórz PowerShell jako administrator.
  2. Uruchom PowerShell z uprawnieniami administratora.
  3. Uruchom następujące polecenia, aby zmapować anonimowe UID i GID na `0`, co odpowiada użytkownikowi root QNAP.
    Kod:
    Set-ItemProperty
    
    -
    Path
    
    "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default"
    
    -
    Name
    
    AnonymousUid
    
    -
    Value
    
    0
    
    -
    PropertyType
    
    DWord
    
    Set-ItemProperty
    
    -
    Path
    
    "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default"
    
    -
    Name
    
    AnonymousGid
    
    -
    Value
    
    0
    
    -
    PropertyType
    
    DWord
    PowerShellCopy
  4. Uruchom następujące polecenie, aby ponownie uruchomić Client for NFS lub ponownie uruchomić system, aby zastosować zmiany:
    Kod:
    nfsadmin
    
    client
    
    restart
    PowerShellCopyWskazówkaAlternatywnie możesz ponownie uruchomić serwer Windows Server.

Metoda 2: Konfiguracja za pomocą rejestru systemu Windows

  1. Naciśnij Win + R.
  2. Wpisz `regedit`.
  3. Naciśnij Enter.
  4. Przejdź do następującej ścieżki rejestru:
    Kod:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default
    CustomCopy
  5. Przejdź do Edytuj > Nowy, a następnie kliknij Wartość DWORD (32-bitowa).
  6. Utwórz następujące dwie wartości DWORD (32-bitowe) w folderze domyślnym:
    • AnonymousUid = 0
    • AnonymousGid = 0
  7. Zastosuj zmiany, ponownie uruchamiając klienta NFS:
    Kod:
    nfsadmin client restart
    CustomCopy
  8. WskazówkaAlternatywnie możesz ponownie uruchomić serwer Windows Server.
Ważne
  • Mapowanie UID i GID na `0` umożliwia Client for NFS dostęp do serwera NAS jako użytkownik root. Upewnij się, że folder współdzielony NAS przyznaje uprawnienia do zapisu tej tożsamości.
  • Zastosuj te ustawienia na każdym serwerze Windows Server, który uzyskuje dostęp do udziału NFS.
  • Dotyczy to wszystkich wersji systemu Windows, które obsługują funkcję Client for NFS.
  • W środowiskach wymagających szczegółowej kontroli uprawnień lub obsługi list ACL NFSv4, Windows Server działający jako klient NFS nie jest obsługiwany.



Dalsze informacje