Instale o software para que não seja apagado pela reinstalação

0

Existe uma maneira de instalar programas no Ubuntu de tal maneira que a reinstalação padrão do live usb não irá eliminá-los? (por exemplo, instalando-os em uma partição diferente ou mantendo pastas como / bin / local e semelhantes em uma partição diferente?)

Se não, qual é a melhor maneira de compilar uma lista de todos os softwares anteriores (assumindo que todos eles podem ser adicionados através do apt-get, no máximo, adicionando um repositório) e criar um script que possa reinstalá-los? (alguns softwares, por exemplo, coisas que exigem licença não podem ser tratados dessa maneira, mas muitos outros são, por exemplo, texlive, geany, etc.)

Motivação: ser um novato no linux e gostar de experimentar (eu quero experimentar outras distros, mudar de partição e tal) Eu geralmente acabo tendo que reinstalar, pois às vezes é a maneira mais fácil de consertar sistemas quebrados. Mas sendo este meu computador principal, eu gostaria de não ter que reinstalar / refazer toda a configuração toda vez que isso acontecesse.

    
por Three Diag 26.06.2015 / 12:37

1 resposta

1

Existem maneiras de fazer isso para um SO, mas não tenho certeza de como seria transferível de distro para distro. Você poderia fazê-lo (usando o apt & amp; dpkg) para distros baseadas no Debian e provavelmente funcionaria de forma bastante consistente. Mas há muitas distros que não usam o apt / dpkg e, portanto, quase certamente não funcionaria para elas. Por exemplo. O Fedora usa o yum e não lembro o que o Arch usa.

Então, provavelmente, a melhor / mais transferível seria manter um arquivo de texto dos aplicativos que você quer ... Mesmo assim, não será infalível, já que distros diferentes muitas vezes têm convenções de nomenclatura ligeiramente diferentes.

De acordo com a sua resposta editada (mantendo-a no Ubuntu), uma maneira rápida e suja de listar todos os pacotes instalados seria

apt-cache pkgnames > apps.txt

Note que isso listará todos os pacotes instalados; não apenas aqueles que você explicitamente instalou. Então, se você alternar entre diferentes versões do Ubuntu que têm diferentes ambientes de desktop, isso será um problema ... Ele também listará as dependências (que não foram instaladas manualmente - para que não sejam marcadas automaticamente como desnecessárias se você desinstalar o software instalado manualmente).

Para minimizar o impacto disso (embora não eliminá-lo), você pode executar novamente o comando em uma instalação limpa da mesma versão (por exemplo, antes de alternar para o Lubuntu). Em seguida, limpe a primeira lista usando os resultados do segundo ...

apt-cache pkgnames > clean-install-apps.txt
grep -v -x -f clean-install-apps.txt apps.txt > new-apps.txt

Você pode então instalar com isto:

sudo apt-get update && sudo apt-get install < new-apps.txt

Tenha em mente que isso também instalará manualmente as dependências. Também não incluirá todas as informações de configuração (se você configurou esses aplicativos da maneira que você quer ... Geralmente isso é mantido em seu diretório home em diretórios de pontos (por exemplo, diretórios como ".appname"). você pode montar seu diretório home em um diretório diferente e apenas remontá-lo a cada vez. Mesmo assim, pode não funcionar se você estiver usando diferentes distribuições ou versões, pois as versões do software podem não ser as mesmas (não deve ser um problema se você estão usando a mesma versão do Ubunut, por exemplo, 15.04) ...

Um outro pensamento que eu tive para uma maneira rápida e suja de fazer isso e provavelmente tornar a instalação mais rápida (e reduzir sua largura de banda de download é uma preocupação) seria copiar todos os pacotes deb em / var / cache / apt / archives para um USB (ou uma partição separada, etc). Então você pode instalar todos os debs com o dpkg. Supondo que o seu USB esteja montado em / media / USB que se pareça com isto, no seu sistema atual:

mkdir /media/USB/debs-to-install
cp /var/cache/apt/archives/*.deb /media/USB/debs-to-install

Depois de reinstalar:

dpkg -i --force-depends /<USB-dir>/*.deb
apt-get install -f

Explicação: dpkg -i instala --force-depends força a instalação mesmo se as dependências não estiverem satisfeitas (geralmente não é recomendado, mas, neste caso, está tudo bem, porque é quase garantido que todas as dependências estão nesse diretório; apenas que elas não estão sendo instaladas na ordem correta). apt-get install -f deve resolver qualquer problema de dependência (se houver algum).

Note que esta segunda opção também fará com que as dependências marcadas como manualmente instaladas também ...

Existem também outras opções, como as respostas a esta pergunta: Como listar todas pacotes instalados

    
por Jeremy Davis 26.06.2015 / 13:01