AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1162100
Accepted
bomben
bomben
Asked: 2019-07-31 02:46:20 +0800 CST2019-07-31 02:46:20 +0800 CST 2019-07-31 02:46:20 +0800 CST

Por que o UID no servidor e no cliente precisa corresponder ao usar cifs?

  • 772

Eu me conecto de um cliente linux com um usuário (1000) a um servidor.

O nome de usuário é o mesmo em ambas as máquinas, mas possui um UID diferente.

Quando eu conecto os arquivos aparecem como de propriedade 1001e não USERcomo eu esperaria. Eu esperaria que o cifs traduzisse o usuário original para o que eu uso no cliente. Mas este não é o caso. Parece que eu tenho que ter usuários semelhantes no cliente e no servidor e também atribuir o mesmo UID em ambos. Mas não consigo imaginar que esta seja a única solução para isso.

O cliente tem mount.cifs versão 6.4.

Meu fstab é

//192.168.111.190/hgst /home/ben/hgst cifs vers=1.0,noauto,users,uid=1001,username=USER,password=PASSWORD.

Já alterei para incluir vers=1.0e uid=1001.

O manual diz que posso usar forceuidno cliente para forçar um determinado usuário. Se eu incluir essa opção no meu fstab recebo um invalid argumentupon mount, ambos com 1000 e 1001. Não uso forceuidno servidor.

Meu servidor está executando o openmediavault 3 e meu cliente é o Lubuntu 16.04 LTS.

fstab samba mount cifs
  • 3 3 respostas
  • 3699 Views

3 respostas

  • Voted
  1. Best Answer
    Morbius1
    2019-07-31T03:36:27+08:002019-07-31T03:36:27+08:00

    O UID no servidor e no cliente não precisa corresponder. Essa é a razão pela qual você usaria um servidor samba.

    É como montar uma partição NTFS. Sem uma especificação de uid, o compartilhamento montado seria de propriedade do root. O uid=1001 refere-se ao uid do usuário no cliente e não ao servidor se o cliente tiver um usuário com esse uid.

    PARA O SERVIDOR: Tudo o que você faz é feito como o usuário com o qual você efetuou login na combinação nome de usuário = USUÁRIO / senha = SENHA em sua expressão de montagem cifs, independentemente de como você a montou no cliente.

    PARA O CLIENTE: Se o cliente for Linux, ele será montado com o que você definiu em sua expressão de montagem.

    E não há necessidade de um parâmetro forceuid.

    Então é isso que deveria ter sido:

    //192.168.100.90/hgst /home/ben/Benshare/hgst cifs vers=1.0,noauto,users,uid=1000,username=USER,password=PASSWORD
    

    EDITAR

    O parâmetro uid em uma expressão de montagem CIFS altera a propriedade do compartilhamento montado da raiz para o especificado por uid. Em sua montagem original, você define uid como 1001, que é para um usuário que não existe no cliente. Você deve ter definido o uid como 1000 porque esse é o uid do usuário cliente. forceuid não deve ser necessária.

    • 2
  2. Rinzwind
    2019-07-31T02:58:48+08:002019-07-31T02:58:48+08:00

    Por que o UID no servidor e no cliente precisa corresponder ao usar cifs?

    Nenhuma idéia. Não deve ser o caso embora. Deve ter um nome de usuário em uma extremidade e um nome de usuário na outra extremidade, se forem os mesmos. Lembre-se disso:

    uid=arg

    define o uid que possuirá todos os arquivos ou diretórios no sistema de arquivos montado quando o servidor não fornecer informações de propriedade. Pode ser especificado como um nome de usuário ou um uid numérico. Quando não especificado, o padrão é uid 0. O auxiliar mount.cifs deve estar na versão 1.10 ou superior para suportar a especificação do uid em formato não numérico. Consulte a seção sobre PROPRIEDADE E PERMISSÕES DE ARQUIVOS E DIRETÓRIOS abaixo para obter mais informações.

    ...

    O nome de usuário é o mesmo em ambas as máquinas, mas possui um UID diferente.

    Se esses são os mesmos, por que não usar o nome de usuário? uidaceita um nome e um ID de usuário.

    O manual diz que eu poderia usar forceuid no cliente para forçar um determinado usuário.

    Você usaria user=ou uid=com um nome de usuário ou credentials=com um nome de arquivo que tenha um nome de usuário e senha antesforceuid

    • 1
  3. bomben
    2019-07-31T02:59:43+08:002019-07-31T02:59:43+08:00

    Meu problema era que eu estava usando forceuido caminho errado .

    A opção deve ser incluída assim:

    uid=1000,forceuid
    

    Ou seja, tive que definir um uidprimeiro e depois colocar a opção forceuidsem argumento para garantir que o UID da outra opção seja usado.

    Eu cruzei isso com a propriedade no servidor. Os arquivos agora são exibidos no cliente com UID 1000, mas gravados no servidor com UID 1001, exatamente como deveria ser. O nome de usuário é o mesmo, o que também está correto.


    Meu outro erro foi declarar o UID como o do servidor (1001). Mas tem que ser o contrário, o UID precisa informar ao cliente qual usuário local deve possuir os arquivos , no meu caso uid=1000.

    Então, com essa opção, forceuidprovavelmente não é necessário.


    A página de manual útil foi: http://manpages.ubuntu.com/manpages/xenial/man8/mount.cifs.8.html

    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve