View previous topic :: View next topic |
Author |
Message |
Operador Nabla Apprentice
Joined: 06 Feb 2004 Posts: 176 Location: Salesópolis - SP - Brasil
|
Posted: Sat Feb 28, 2004 5:54 am Post subject: Acho que eu perdi os meus symlinks |
|
|
Aconteceu um negócio muito esquisito comigo. Após uma queda de energia, quando reiniciei o micro, ele começou a ecoar um monte de mensagens de erro dizendo que não encontrava determinadas bibliotecas (inclusive a libstdc++.so.5, necessária para rodar o emerge). Fazendo uma chacagem com mais calma, estou percebendo que o que sumiram foram os symlinks para estas bibliotecas, bem como outros symlinks (como o /dev/dsp).
Tem algum jeito de recuperar automaticamente estes symlinks ou vou ter de recriá-los um a um? |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Sat Feb 28, 2004 6:19 pm Post subject: |
|
|
Isso é bastante estranho. Uma vez eu estava fazendo um update também e o portage inteiro se foi... Eu tentei copiar o snapshot do cd de instalação, mas acabei piorando um pouco mais as coisas.
Talvez refazendo os links necessários para o emerge você possa instalar os pacotes necessários para a recuperação dos outros links.
Se alguém conhecer o comando do bash que diferencia links de arquivos normais (se é que existe um), talvez possamos criar um script que retorne os nomes de todos os links para um arquivo, e outro que cria links à partir desse... Sugestões? |
|
Back to top |
|
|
Operador Nabla Apprentice
Joined: 06 Feb 2004 Posts: 176 Location: Salesópolis - SP - Brasil
|
Posted: Sat Feb 28, 2004 7:11 pm Post subject: |
|
|
Quanto a diferenciar arquivos comuns de links, podemos criar um bash script que lê o primeiro caracter da saída do comando ls -l arquivo. Se este caracter for um l, então trata-se de um link; se for um -, então trata-se de um arquivo comum.
Para eu conseguir abrir o mwm no X, eu tive de criar links para diversas bibliotecas de /usr/X11R6/lib para /usr/lib. Achei isso muito estranho e comecei a suspeitar que deve haver alguma variável equivalente à PATH para bibliotecas e, de repente, algum arquivo de inicialização que a setava foi danificado.
Outro problema que eu estou tendo é o sumiço do arquivo /dev/dsp. Sem ele, eu não consigo rodar, com som, os programas que usam OSS (eu uso drivers ALSA com emulação OSS). Eu sei que eu recrio este arquivo com o comando mknod, mas eu não sei quais são os parâmetros corretos. Tem alguma maneira de eu descobrir quais os parâmetros que eu devo passar (olhando os scripts de inicialização, por exemplo)? |
|
Back to top |
|
|
To Veteran
Joined: 12 Apr 2003 Posts: 1145 Location: Coimbra, Portugal
|
Posted: Mon Mar 01, 2004 10:24 am Post subject: |
|
|
Eu tive um problema semelhante. Em minha casa lembraram-se de ligar 3 aquecedores ao mesmo tempo. Resultado mandaram a luz abaixo e o disco ficou fora da graça de nosso Senhor, com montes de ficheiros desaparecidos etc etc. A solução pela qual eu optei foi meia radical mas pelo menos sei que tudo ficou direito. emerge sync e depois um emerge -e world.
Tó _________________
------------------------------------------------
Linux Gandalf 3.2.35-grsec
Gentoo Base System version 2.2
------------------------------------------------ |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Mon Mar 01, 2004 11:41 pm Post subject: |
|
|
Não estou na minha máquina, então, mas um script sem testar:
Code: | #!/bin/bash
#
# usagem: showliks.sh
# Use como root!
find / -type l > ~/links |
Depois é só fazer um que, em uma notação de pointers, "diferencie" os links, ou seja, retorne o alvo do link, e outro para "linkar" os arquivos com os links, se na máquina 2 os alvos existem...
Scripts de bash são extremamente úteis, mas saber os comandos e suas opções é um inferno! |
|
Back to top |
|
|
Burnerman_X n00b
Joined: 23 Feb 2004 Posts: 9
|
Posted: Tue Mar 02, 2004 3:45 pm Post subject: |
|
|
axo q houve o mesmo comigo.... fiz um 'ldconfig' e voltou a funcionar td.... bem.. pode arriscar isso... |
|
Back to top |
|
|
|