O arquivo de credenciais CIFS de montagem possui um caractere especial

11

Estou tendo problemas para montar um compartilhamento no meu XenServer (5.6 FP1). Na linha de comando, tento:

mount.cifs //server/share /mnt/share -o credentials=credfile

O conteúdo do credfile é:

username=Administrator
password=What@zR\!p3s

Quando executo o comando mount acima, recebo "Acesso negado". No entanto, se eu executar o seguinte comando, ele funcionará:

mount.cifs //server/share /mnt/share -o username=Administrator,password=What@zR\!p3s

Observe que "\" é para escapar do estrondo e eu tentei isso com e sem ele no arquivo de credenciais. Alguma sugestão?

David George
fonte
Alguma coisa funcionou?
Barett

Respostas:

10

Eu tenho o mesmo problema porque minha senha contém um símbolo de vírgula (por exemplo, "PASS, WORD"):

$ sudo mount -t cifs -o domain=mydomain,username=myuser,password=PASS,WORD //server/share localfolder
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Primeiramente, você deve tentar ativar o modo detalhado (opção --verbose):

$ sudo mount -t cifs -o domain=mydomain,username=myuser,password=PASS,WORD //server/share localfolder --verbose
mount.cifs kernel mount options: ip=172.30.91.137,unc=\\server\share,WORD,user=myuser,,domain=mydomain,pass=********

Aqui eu vejo o meu problema. Vírgula quebra todas as coisas. Solução é usar arquivo de credencial. O que está escrito em man mount.cifs:

credenciais = nome do arquivo especifica um arquivo que contém um nome de usuário e / ou senha e, opcionalmente, o nome do grupo de trabalho. O formato do arquivo é:

          username=value
          password=value
          domain=value

É preferível ter senhas em texto sem formatação em um arquivo compartilhado, como / etc / fstab. Certifique-se de proteger qualquer arquivo de credenciais corretamente.

Crie este arquivo da maneira que desejar:

$ cat > cifs.credo
username=myuser
password=PASS,WORD
domain=mydomain

e uso (--verbose pode ser omitido)

$ sudo mount -t cifs -o credentials=path/to/cifs.credo //server/share localfolder --verbose
mount.cifs kernel mount options: ip=172.30.91.137,unc=\\server\share,user=myuser,,domain=mydomain,pass=********

Não há problema com a senha.

Maxim Suslov
fonte
6

Um problema comum nas versões antigas do mount.cifs era que a nova linha no final do arquivo era mantida como parte da senha.

Portanto, você não precisa escapar e deve tentar reescrever esse arquivo sem uma nova linha à direita.

Para fazer isso no vim, use :set noeol binaryantes de salvar. Você pode verificar se não há uma nova linha à direita xxd credfilee confirmar que ela não termina com ela 0a.

Se isso não funcionar, terei que verificar sua base de código exata. Para qual pacote (distribuição, versão e release) ou fonte (nome do arquivo) você está usando cifs-utils?

Pierre Carrier
fonte
1

Outra coisa a tentar é digitar o caractere especial duas vezes ... Eu tinha uma senha com um $ e tive que substituí-lo por $$. No entanto, atualmente estou tendo problemas com a cenoura: '^'

Alex
fonte
1

Para o mount.cifs versão 4.5, o seguinte funcionou para mim: credenciais em ordem de domínio, nome de usuário, senha, nenhuma nova linha após a senha, nenhum escape de caracteres especiais ou aspas.

menos barulho
fonte
Sim, mas isso não funcionou para mim, graças @lessnoise
David George
0

Tente citá-lo.

Ou seja,

password="What@zR!p3s"

E espero que essa não seja realmente sua senha. Se for, agora você precisa alterá-lo.

bahamat
fonte
Não, essa não é uma senha real. Segundo, eu já tentei as duas sugestões com o mesmo resultado. Também tentei aspas literais, ou seja. >> '
David George
0

Você já tentou remover a barra? completamente? Não acredito que o arquivo de credenciais deva ser escapado. Ele precisa ser escapado no shell porque o shell está interpretando os caracteres, não o comando mount.cifs.

Zoredache
fonte
Sim, eu também tentei sem a barra invertida no arquivo de credenciais. E ainda recebo o erro de acesso negado.
David George
0

Isso foi muito útil! Meu problema era um espaço extra no arquivo "credencial" que --verboseme mostrou

mount.cifs kernel mount options: ip=10.77.180.65,unc=\\odxwtdsa.naoxy.com\TDS_BODS_Fileshare,user=srv-tdsadm,domain=NAOXY ,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
[root@odylztxz drpadm]#

Fiz um "vi" no arquivo de credenciais e :set listvi o restante em branco. Removido. Tentei outra vez. Observe que o "espaço em branco" agora se foi.

[root@odylztxz ~]# mount.cifs  -o credentials=/etc/.credentials,uid=1002,gid=200,file_mode=0x777,noperm //odxwtdsa.naoxy.com/TDS_BODS_Fileshare /TDS_BODS_FS --verbose
domain=NAOXY

mount.cifs kernel mount options: ip=10.77.180.65,unc=\\odxwtdsa.naoxy.com\TDS_BODS_Fileshare,file_mode=0x777,noperm,uid=1002,gid=200,user=srv-tdsadm,domain=NAOXY,pass=********
[root@odylztxz ~]# df -h
Filesystem                               Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root                     50G  4.9G   45G  10% /
devtmpfs                                  16G     0   16G   0% /dev
tmpfs                                     16G     0   16G   0% /dev/shm
tmpfs                                     16G   76M   16G   1% /run
tmpfs                                     16G     0   16G   0% /sys/fs/cgroup
/dev/sdb1                                100G   11G   90G  11% /orasoft
/dev/sdc1                                100G   33G   68G  33% /oxyswap
/dev/sda2                                497M  214M  284M  43% /boot
/dev/mapper/rhel-var                     5.5G  1.2G  4.3G  22% /var
10.77.25.114:/GEN_BACKUP_DBS             5.8T  4.8T  945G  84% /backup
10.77.25.114:/GEN_MEDIA                  380G  319G   62G  84% /sap_media
10.77.25.114:/ORA_ZTX_SAPMNT              95G   12M   95G   1% /sapmnt
10.77.25.113:/ORA_ZTX_USR_SAP             95G   13M   95G   1% /usr/sap
10.77.25.113:/GEN_TRANS                  190G   26M  190G   1% /trans
tmpfs                                    3.2G   40K  3.2G   1% /run/user/4200
tmpfs                                    3.2G     0  3.2G   0% /run/user/3501
//odxwtdsa.naoxy.com/TDS_BODS_Fileshare  750G  578G  173G  78% /TDS_BODS_FS
[root@odylztxz ~]#
RickS
fonte