Disco rígido externo USB formatado com permissões E2fs / E3fs

1

Estou usando o Ubuntu 12.04 em um laptop. Eu tenho um disco USB externo formatado E2fs / E3fs por outro sistema linux (especificamente um firmware Linksys NSLU2 Linksys em estoque). A partir da linha de comando como usuário root, usei o 'chmod 777' no ponto de montagem para permitir que eu escrevesse cerca de 400Gb de arquivos para este disco. Quando eu movo essa unidade de disco USB de volta para o sistema normal, os novos arquivos ficam visíveis em uma listagem de diretórios, mas não legíveis. Isso ocorre porque as permissões de arquivo foram erradas (meu fundo é sistemas Windows simples, então eu sei muito pouco sobre as permissões de arquivo do Linux). Os arquivos recém-escritos pelo laptop mostram o proprietário como 'username'. Arquivos mais antigos gravados pelo NSLU2 (o host normal pretendido para a unidade de disco) e acessados corretamente mostram o proprietário do arquivo como '501', '1000', '2000', etc.

Eu tentei usar o Nautilus para alterar as permissões de arquivo para as esperadas, mas o Nautilus só me permitirá selecionar nomes de proprietários de uma lista pré-definida, não incluindo os que eu quero. Quando tento adicionar um usuário ao sistema Ubuntu com o nome de usuário desejado (para permitir que o Nautilus ofereça a opção correta) recebo uma mensagem de erro que não entendo - suspeito que o Ubuntu não goste desses nomes de usuário porque um pouco pesquisa sugere que eles são usados para fins especiais em outros sistemas Linux.

Como faço para corrigir as permissões de arquivo neste disco externo - especificamente nomes de proprietários e grupos?

Obrigado, Peter

    
por Peter Miller 30.12.2012 / 23:22

1 resposta

2

O NSLU2 tem seus próprios usuários. Estes não correspondem ao sistema Ubuntu, então você tem que usar os UID's e GIDs do NSLU2 (501, 1000, 2000, como você escreveu). Usar nomes quando você altera a propriedade dos arquivos não funcionará. Você poderia ter copiado os arquivos pela rede para impedi-los, mas isso teria sido um processo muito mais lento.

Conecte o disco que pertence ao NSLU2 no seu computador Ubuntu. Localize os arquivos que você copiou para o disco do NSLU2. Altere o proprietário e o grupo para o UID numérico e o GID apropriado para o NSLU2. Por exemplo ...

chown 1000:1000 filename.ext

Se você conhece o UID e o GID corretos para os arquivos NSLU2, e copiou esses arquivos para o NSLU2 com o Ubuntu, talvez consiga localizar os arquivos copiados e alterar a propriedade em uma linha:

find /media/nslu2 -user peter -exec chown 1000:1000 {} \;

O ponto de montagem é / media / nslu2; o nome de usuário do Ubuntu que foi usado para copiar os arquivos era peter; o UID e o GID corretos para os arquivos NSLU2 são 1000.

Cuidado

Você pode querer ver o que o comando find encontra primeiro antes de passar a opção "-exec".

find /media/nslu2 -user peter

Melhor Firmware

Há um substituto de firmware para o NSLU2 ( unslung ) que pode fornecer acesso SSH ao NSLU2 .

    
por user8290 30.12.2012 / 23:52