Linux: Esse comando pode “quebrar” a máquina?

1

meu servidor (Ubuntu) não deu certo e acho que é porque eu digitei esse comando:

mv directory/* /*
    
por user31200 02.04.2010 / 02:59

3 respostas

3

Sim, isso pode atrapalhar as coisas, se você fizer isso como root. Se você pensar em como o shell teria expandido isso, provavelmente você moveu tudo de / para qualquer diretório em / ... talvez /var ?

Faça um ls -Al / e cole os resultados aqui. Se você vê apenas um diretório, faça um ls -Al desse diretório e cole os resultados aqui.

Uma forma de tentar consertá-lo é descobrir quais arquivos e diretórios foram movidos erroneamente, localizá-los e movê-los de volta para / . Você pode fazer algo assim:

  1. Olhe para uma instalação semelhante do Ubuntu em outra máquina e faça um ls -Al / lá, para ver quais arquivos e pastas estão normalmente lá.
  2. Ainda por outro lado, trabalhando com o servidor Ubuntu, faça um echo /* e anote o último diretório mencionado na saída do comando echo. Eu tenho imaginado que será /var , mas isso é baseado na minha experiência com outros Unices e distros, não com o Ubuntu.
  3. De volta à máquina com falha, execute um ls -Al do que quer que seja o último diretório e veja se todos esses arquivos e diretórios que deveriam estar em / estão agora nesse outro diretório.
  4. Se você encontrou os diretórios de nível raiz ausentes neste subdiretório, emita um comando mv para movê-los de volta para / . Certifique-se de não deixar o conteúdo normal desse subdiretório sozinho. Você não quer mover tudo de /var e em / , você só quer mover o material que deveria estar em / .

Observe que você precisará emitir o comando mv como root (por exemplo, usando sudo ).

    
por 02.04.2010 / 06:45
1

A verdadeira questão, claro, é como consertar isso. :)

Inicialize no seu LiveCD do Ubuntu, monte o sistema de arquivos e mova o outro conteúdo do diretório raiz para fora de /var (ou onde quer que eles tenham acabado).

    
por 02.04.2010 / 08:00
1

Would a reboot fix the problem?

Não é uma chance .. Você terá que mover os diretórios raiz de volta para a raiz. Olha, isso é o que aconteceu:

$ mv -v source/* target/*
'source/1' -> 'target/3/1'
'source/2' -> 'target/3/2'
'source/3' -> 'target/3/3'
'target/1' -> 'target/3/1'
'target/2' -> 'target/3/2'

Olhe as duas últimas linhas lá. Isso significa, e. '/ bin' foi movido para '/ var / bin' na sua máquina.

    
por 02.04.2010 / 10:20

Tags