4

У меня есть QNAP TS-110, к которому я получаю доступ через NFS из моей системы Ubuntu.

Я предполагаю, что NFS в типичной домашней сети не использует никакой аутентификации пользователя. Я читал в разных местах и обнаружил, что важно, чтобы пользователь на машине с Linux и NAS имел одинаковые UID и / или GID.

  • Теперь мой основной пользователь в Ubuntu имеет uid=1000(me) gid=1000(me) .
  • На NAS основной пользователь имеет uid=500 gid=100

Я полагаю, что это причина того, что я постоянно сталкиваюсь с проблемами доступа. (Это так?)

Мой план состоял в том, чтобы использовать SSH в NAS и использовать

usermod -u <newuid> -g<newgid> <username>

Проблема в том, что на NAS не установлен пользовательский usermod .

На it.toolbox.com я прочитал, что могу просто отредактировать /etc/passwd и /etc/group с нужным UID и GID.

На форуме Fedora много дискуссий о том, как впоследствии исправить файлы.

Мои вопросы сейчас:

  1. Могу ли я просто отредактировать /etc/passwd и группу?
  2. Как я могу проверить, что ни один пользователь, которому я хочу изменить UID, не вошел в систему?
  3. Правильно ли использовать chown -R --from=500:500 1000:1000 /path/* во всех файлах после изменения файлов конфигурации?
  4. Как я могу убедиться, что у NAS нет проблем с этим изменением?

2 ответа2

4

Я это сделал! (и похоже на работу)

Поэтому после того, как я вообще не получил ответа (на всех сайтах, где я разместил этот вопрос), я пошел дальше и сделал то, что планировал.

Я вошел в свой NAS через ssh как администратор.

Следующим шагом было изменение следующих двух файлов, чтобы все созданные мной пользователи имели UID и GID, начиная с 1000

[~] # cat /etc/passwd
admin:x:0:0:administrators:/share/homes/admin:/bin/sh
guest:x:65534:65534:guest:/share/homes/guest:/bin/sh
httpdusr:x:99:100:Apache httpd user:/tmp:/bin/sh
mainuser:x:500:100:Linux User,,,:/share/homes/mainuser:/bin/sh
test-consumer1:x:503:100:Linux User,,,:/share/homes/test-consumer1:/bin/sh

[~] # cat /etc/group   
administrators:x:0:admin
everyone:x:100:admin

измученный

[~] # cat /etc/passwd
admin:x:0:0:administrators:/share/homes/admin:/bin/sh
guest:x:65534:65534:guest:/share/homes/guest:/bin/sh
httpdusr:x:99:100:Apache httpd user:/tmp:/bin/sh
mainuser:x:1000:1000:Linux User,,,:/share/homes/mainuser:/bin/sh
test-consumer1:x:1003:1000:Linux User,,,:/share/homes/test-consumer1:/bin/sh

[~] # cat /etc/group
administrators:x:0:admin
everyone:x:1000:admin

Следующим шагом было chown и chgrp все файлы на NAS. Поскольку находка, которая была доступна, не выполняла команду exec, я сам прошел через каталоги

lrwxrwxrwx    1 admin    administ       18 May 19 14:16 Qdownload -> HDA_DATA/Qdownload/
lrwxrwxrwx    1 admin    administ       20 May 19 14:16 Qmultimedia -> HDA_DATA/Qmultimedia/
lrwxrwxrwx    1 admin    administ       20 May 19 14:16 Qrecordings -> HDA_DATA/Qrecordings/
lrwxrwxrwx    1 admin    administ       13 May 19 14:16 Qusb -> HDA_DATA/Qusb/
lrwxrwxrwx    1 admin    administ       13 May 19 14:16 Qweb -> HDA_DATA/Qweb/
lrwxrwxrwx    1 admin    administ       10 May 19 14:16 b -> HDA_DATA/b/
lrwxrwxrwx    1 admin    administ       15 May 19 14:16 backup -> HDA_DATA/backup/
lrwxrwxrwx    1 admin    administ       13 May 19 14:16 home -> HDA_DATA/home/
lrwxrwxrwx    1 admin    administ       10 May 19 14:16 m -> HDA_DATA/m/
lrwxrwxrwx    1 admin    administ       10 May 19 14:16 v -> HDA_DATA/v/

[/share/HDA_DATA/] # chown -R 1000:1000 ./*

Я мог исправить все файлы и папки одновременно, так как только один основной пользователь загружал файлы в NAS.

Затем я перезапустил свой NAS и проверил вход в систему в качестве пользователей, которых я только что изменил.

Я знаю, что это может быть не самый элегантный, быстрый или правильный способ сделать это, но это сработало для меня, и я надеюсь, что это поможет кому-то еще.

Проверьте здесь также.

0

Я только что наткнулся на эту тему, выполнив поиск прав доступа QNAP к файлам и папкам. Вы также можете сделать то же самое, введя это в оболочку NAS:

chown -R mainuser:everyone ./*

Я считаю, что UID и GID зависят только от локальной системы, но я могу ошибаться.

:-)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .