Muitos pacotes indesejados instalados no Ubuntu 12.04 com o apt-get devido a erro de digitação. Como reverter?

1

No meu ubuntu 12.04 virtual, eu estava instalando ruby2.3 , mas, por engano, coloquei espaço entre ruby e 2.3 .

sudo apt-get install ruby 2.3

Ele instalou mais de 9 GB de pacotes, incluindo vários kernels.

O que fazer? Como posso reverter? E se eu executar o comando abaixo para remover todos os pacotes indesejados?

sudo apt-get --purge remove 2.3
sudo apt-get autoremove

Qual é o efeito colateral desse comando? Existem muitos dados importantes no meu sistema virtual. Então, posso reiniciar meu sistema?

Como @Alex solicitou, aqui estou anexando a saída de sudo dpkg -l |grep ruby .

ii  liblocale-ruby1.8                                   2.0.5-2                                             pure ruby locale library
ii  libmemcache-client-ruby                             1.7.8-2                                             Ruby client library for memcached
ii  libmemcache-client-ruby1.8                          1.7.8-2                                             Ruby client library for memcached (Ruby 1.8)
ii  libruby                                             4.8                                                 Transitional package for libruby1.8
ii  libruby1.8                                          1.8.7.352-2ubuntu1.6                                Libraries necessary to run Ruby 1.8
ii  libtzinfo-ruby                                      0.3.19-1                                            Ruby library for transformations between time zones
ii  libtzinfo-ruby1.8                                   0.3.19-1                                            Ruby library for transformations between time zones (Ruby 1.8)
ii  rake                                                0.9.2.2-2                                           ruby make-like utility
ii  ruby                                                4.8                                                 Transitional package for ruby1.8
ii  ruby-actionmailer-2.3                               2.3.14-2                                            Framework for generation of customized email messages
ii  ruby-actionpack-2.3                                 2.3.14-2ubuntu0.12.04.1                             Controller and View framework used by Rails
ii  ruby-activerecord-2.3                               2.3.14-1ubuntu0.12.04.1                             ORD database interface for ruby
ii  ruby-activeresource-2.3                             2.3.14-1                                            Connects objects and REST web services
ii  ruby-activesupport-2.3                              2.3.14-2ubuntu0.12.04.2                             Support and utility classes used by the Rails 2.3 framework
ii  ruby-blankslate                                     2.1.2.4-2                                           Ruby library providing a class with no predefined methods
ii  ruby-builder                                        3.0.0-2                                             Ruby library to facilitate programatic generation of XML markup
ii  ruby-i18n                                           0.6.0-1                                             I18n and localization solution for Ruby
ii  ruby-mecab                                          0.98-5build1                                        mecab binding for Ruby language
ii  ruby-rack                                           1.3.5-1                                             Modular Ruby webserver interface
ii  ruby-rails-2.3                                      2.3.14-2                                            MVC ruby based framework geared for web application development
ii  ruby-rchardet                                       1.3-2                                               Character encoding auto-detection for Ruby
ii  ruby-rvm                                            1.6.9-0ubuntu2.1                                    easily install, manage and work with multiple ruby environments
ii  ruby-text-format                                    1.0.0-3                                             Ruby library for text formatting
ii  ruby-tmail                                          1.2.7.1-1build1                                     Mail class library for Ruby
ii  ruby1.8                                             1.8.7.352-2ubuntu1.6                                Interpreter of object-oriented scripting language Ruby 1.8
ii  ruby1.8-dev                                         1.8.7.352-2ubuntu1.6                                Header files for compiling extension modules for the Ruby 1.8
ii  rubygems                                            1.8.15-1ubuntu0.1                                   package management framework for Ruby libraries/applications
    
por Darshan Patel 25.05.2016 / 11:14

1 resposta

0

Eu tentei sudo apt-get -s install ruby 2.3 (note que -s switch, ou seja, simulação, nenhum dano foi feito) no meu Debian. Ele combinou muitos pacotes com a sequência 2.3 . Eu estou bem, mas você com certeza tem muitos pacotes que você não quer.

Eu também corro sudo apt-get -s --purge remove 2.3 . Ele tentou remover todos os pacotes com 2.3 string, já instalados ou não. Não faça isso porque ele pode remover um pacote que você precisa, a menos que você esteja absolutamente certo de que não teve tal pacote antes do acidente.

A coisa segura a fazer é analisar /var/log/apt/history.log e /var/log/dpkg.log (pelo menos é isso que eu tenho no Debian). Você aprenderá o que exatamente aconteceu e o que foi instalado em vão. Com esse conhecimento, você pode escolher pacotes indesejados e removê-los.

Para tornar isso sistemática e reduzir o risco de erro, sugiro copiar o history.log e editar a cópia. Exclua todas as informações extras, deixe os nomes dos pacotes e crie uma linha de comando com apt-get purge . Verifique novamente com o log original e execute o comando resultante (por exemplo, faça esse arquivo com um script bash e execute). Dessa forma, você evitará digitação propensa a erros e não perderá nenhum pacote indesejado.

Eu não testei isso. Uma vez que o sistema operacional é virtual, você pode querer fazer o backup antes de aplicar a minha solução, apenas no caso. Não tenho certeza se você pode fazer um backup do sistema em execução embora. Talvez sua configuração permita "congelar", clone / snapshot / backup e, em seguida, continuar.

    
por 25.05.2016 / 12:33