Supondo que você tenha sudo
privilégios, o seguinte comando fará.
sudo cp /home/USER1/FNAME /home/USER2/FNAME && sudo chown USER2:USER2 /home/USER2/FNAME
Copiará o arquivo de USER1 para USER2 e, em seguida, alterará o proprietário da cópia em / home / USER2 para USER2
Se você não tiver sudo
privilégios, os dois usuários precisarão garantir que você tenha permissões de leitura no diretório USER1 e acesso de gravação no diretório USER2. Se você tiver esses acessos, poderá inserir o comando:
cp /home/USER1/FNAME /home/USER2/FNAME
Isso copiará o arquivo em questão, mas USER2 pode não ser capaz de manipular o arquivo até que ele tenha as permissões apropriadas.
Se você não possui privilégios de sudo, mas pode fazer login com os dois usuários, pode usar o scp com o localhost:
fonte
Como USER1:
Como USER2:
Como USER1:
fonte
Suponha que você não tenha o ssh instalado ou não possa compartilhar chaves / segredos.
Suponha que o usuário1 esteja no grupo1 e o usuário2 esteja no grupo2, e o usuário1! = Usuário2 e o grupo1! = Grupo2.
Crie um grupo compartilhado, group3s.
Adicione user1 e user2 aos group3s.
Crie um diretório em um local mutuamente acessível, onde um usuário possua, mas possua a propriedade group3s.
Mas, suponha que você não possa criar o novo grupo compartilhado e colocar os dois usuários nesse grupo?
Crie o diretório e dê 770 permissões,
Em seguida, como root / admin, altere a propriedade do grupo para o grupo do outro usuário,
O comando chmod g + s define o bit setgid para que os arquivos colocados no diretório tenham a propriedade do grupo definida como group2.
fonte
Todas as outras respostas aqui requerem acesso root, permitem que qualquer usuário na mesma máquina copie o arquivo ou exigem compartilhamento de senha. Aqui está um método que não:
Faça
USER2
(vamos chamá-lo de Bob) executar os seguintes comandos (você pode substituir/tmp
por qualquer diretório em que ambos os usuários tenham permissão para gravar, mas/tmp
é ideal porque, por padrão, é persistente, o que impede um usuário mal-intencionado de subverter este processo. por Bob que é legível pelo mundo também funciona):Isso cria um arquivo que pode ser gravado mundialmente, mas não legível.
Em seguida,
USER1
execute (vamos chamá-la de Alice) (se você for paranóico, Alice pode verificar as permissões primeiro para garantir que o arquivo seja de propriedade de Bob):Isso substitui o conteúdo de
/tmp/test.txt
. Se você deseja verificar a integridade do arquivo, Alice também deve gerar um hash do arquivo. Por exemplo:Em vez disso, você pode assinar digitalmente o arquivo ou qualquer outro método para garantir sua integridade.
E, finalmente, Bob move o arquivo e se apropria dele:
E Bob pode verificar a integridade, se quiser. Nesse caso, ele deve verificar se apenas Alice pode escrever
/tmp/test.txt
.Se o arquivo foi copiado corretamente, isso não deve exibir saída.
fonte
Antes de copiar um usuário para outro, você precisa fazer login como su user e, em seguida, usar o comando cp
fonte
USER2
mas a deixará como seroot
fosse. -1