cp - não é possível criar arquivo regular: permissão negada

23

Quero copiar /lib/udevmas dá erro

cp -f /tmp/ok_pcscd_hotplug.sh /lib/udev

cp:cannot create regular file /lib/udev/ok_pcscd_hotplug : Permission denied

Eu sou raiz, mas não consigo entender. o que eu posso fazer ?

user278122
fonte
No meu caso, quando eu precisei copiar algo no exFAT, ele falhou em cada arquivo que tinha um "|" nele é o nome do arquivo.
neverMind9

Respostas:

24

Verifique se você é realmente superusuário com:

whoami

se a saída for root, você é superusuário e pode fazer a cópia do arquivo com:

cp -f /tmp/ok_pcscd_hotplug.sh /lib/udev/.

caso contrário, você deve usar sudo:

sudo cp -f /tmp/ok_pcscd_hotplug.sh /lib/udev/.

Se você ainda não conseguir gravar no diretório, é possível que:

  1. o diretório tem o sinalizador imutável ativado. verifique com lsattr.
  2. o diretório é montado com permissões somente leitura: digite terminal:

    cat /proc/mounts(ou mountou cat /etc/mtab)

    e verifique a saída, se o diretório estiver montado como somente leitura.

Se você estiver no primeiro caso, altere os atributos do diretório com chattr;

  • remover sinalizador imutável em arquivo ou diretório chattr -i <file/dir>
  • adicionando sinalizador imutável no arquivo ou diretório novamente chattr +i <file/dir>

Se você estiver no último caso, edite o arquivo /etc/fstab.

girardengo
fonte
whoami - raiz de saída i tentou cp -f e sudo cp -f, mas dá erro novamente
user278122
Fiz uma pequena alteração na minha resposta: copiei o comando da sua pergunta, mas há um erro: o comando que você escreveu, substituirá o udev, você deve adicionar /.no final do comando para copiar os arquivos the directory
girardengo
Eu tentei: cp -f /tmp/ok_pcscd_hotplug.sh / lib / udev /. cp -f /tmp/ok_pcscd_hotplug.sh / lib / udev / cp /tmp/ok_pcscd_hotplug.sh / lib / udev não entendo, sou root, mas não copiei onde está o problema
user278122
Eu editei a minha resposta, uma mensagem na sua questão também de saída de mountelsattr /lib/
Girardengo
mount / lib / - montagem: não consegue encontrar / lib / no / etc / fstab ou / etc / mtab lsattr / lib / - ioctl Inapppropriate para o dispositivo durante a leitura de bandeiras em lib / saída de nome de arquivo para everyfile
user278122
3

Não é necessário toda vez que você precisar fazer root para esse fim. Portanto, se você quiser fazê-lo com o usuário root, tudo bem, mas se você quiser fazê-lo sem root, você terá 2 opções:

  1. Verifique as permissões do arquivo. Você deve ter permissões de leitura para isso
  2. Verifique se o arquivo ou link com o mesmo nome não está presente no diretório de destino. Como se o link com o mesmo nome estiver no diretório de destino, ele não permitirá que você faça isso e também não avisará que o link com o mesmo nome está presente
Kailas Andhale
fonte
1

Tente cp /tmp/ok_pcscd_hotplug.sh /lib/udev/no usuário root.

Sambit
fonte
mudança não faça, dá erro novamente - root @ atrust-00351A: / lib # ls-l drwxrwxrwx 4 root root 324 2009-05-22 11:40 udev
user278122
Por favor, publique a saída whoamiels -al /tmp/ok_pcscd_hotplug.sh
Sambit
whoami - ls raiz saída -al /tmp/ok_pcscd_hotplug.sh - raiz de saída -rwxr-xr-x 1 raiz 229
user278122
Em seguida, verifique se ok_pcscd_hotplug.shnão está corrompido e /lib/udev/existe no seu sistema.
Sambit
ok_pcscd_hot_plug.sh ou / lib / udev disponível no sistema
user278122
1

Você deve criar o diretório primeiro, se /lib/udevnão existir

mkdir -p /lib/udev
Farid Movsumov
fonte
0

Primeiro faça "ls -l" e verifique as permissões para este diretório. Se você vir algo como -rw-r - r--, isso significa que o proprietário pode ler-escrever, o grupo de usuários pode apenas ler, o mundo pode apenas ler. Digite o seguinte comando, se este for o caso: "chmod 766". Isso permitirá que você execute operações de leitura e gravação nesse arquivo. Agora tente copiar esse arquivo da mesma maneira. Deveria funcionar

transeunte
fonte
* Chmod 766 <file / dir>
transeunte
1
Você ainda pode editar a resposta e adicioná-la. E não acredito em conceder todas as permissões aos usuários. Em vez disso, se for necessário criar uma pasta / arquivo, faça login como o usuário que possui privilégios. Obrigado. :-)
Kulfy