Perl no Debian é dividido em várias partes. Uma dessas partes, o pacote perl-base
, faz parte do conjunto de pacotes "essenciais". O Debian define estes pacotes essenciais como "sempre será instalado em um sistema debian". Os pacotes podem assumir que estarão disponíveis, mesmo que não tenham qualquer forma de dependência declarada neles. Se você remover um deles, as coisas provavelmente darão errado. Por esse motivo, se você tentar fazer isso, dpkg
vai reclamar muito alto e pedir que você confirme que quer quebrar seu sistema literalmente digitando a frase Yes, do as I say!
, com pontuação e tudo mais. Nunca faça isso; você obterá o sistema em um estado que é altamente improvável recuperar sozinho.
Se você fez, então seu sistema está quebrado agora. Não se desespere, no entanto; ainda é possível consertar isso.
- Primeiro, execute
dpkg -l perl-base
para confirmar que você realmente está perdendo o pacoteperl-base
. Se a saída desse comando começar comii
na linha que contémperl-base
, esse não é o problema e você tem um problema diferente. Nesse caso, publique as mensagens de erro exatas que você recebe ao tentar executar algum comando apt . Caso contrário, a depuração se torna um problema de bola de cristal. -
faça o download do pacote
perl-base
para qualquer versão do Debian em execução. - Em seguida, execute
ar x perl-base*deb
. Isso criará três arquivos no diretório de trabalho atual:debian-binary
,data.tar.gz
econtrol.tar.gz
. Nota: data.tar.gz também pode ser data.tar.xz. Se você não temar
instalado em seu sistema, você pode executar este passo em um sistema diferente, e copiar os arquivos resultantes para a máquina quebrada (qualquer máquina semelhante a UNIX irá funcionar, não precisa ser um debian caixa). - O
data
tarball contém os arquivos que este pacote deseja colocar no sistema de arquivos. Descompacte-o no local correto com o seguinte comando:tar xvaf data.tar.* -C /
. O-C /
bit é a parte importante aqui; ele diztar
para descompactar em relação ao diretório raiz do sistema de arquivos. - Quando você estiver aqui, os arquivos ausentes voltarão ao sistema e
dpkg
eapt
funcionarão novamente. No entanto, você ainda não terminou; Neste ponto, os arquivos estão lá, mas devido à maneira como você "instalou"perl-base
,dpkg
pensará que não está lá e pode começar a fazer coisas estranhas. Por esse motivo, é necessário instalá-lo "novamente", executandodpkg -i perl-base*deb
.
Tudo deve ser corrigido agora. Da próxima vez, se dpkg
disser para você inserir essa frase, faça a coisa mais inteligente e diga "não"; -)