A remoção de um pacote debian removerá os dados?

4

Não consigo encontrar informações definitivas sobre como um pacote debian deve se comportar enquanto é removido. Deve remover os dados? Por exemplo. para o mysql eu li os dados são mantidos , o que parece lógico para mim (usando a remoção irá remover todas as coisas).

Mas aqui achei o texto:

A diferença entre remover e eliminar é que, embora remover apenas os dados e executáveis, a limpeza também exclui todos os arquivos de configuração.

Então, o que é verdade?

Atualizar Como eu quero empacotar um para o ElasticSearch eu preciso saber o que é esperado.

    
por Karussell 26.01.2012 / 13:23

3 respostas

4

Nem limpar nem remover apagará o datadir do mysql .. veja o exemplo

root@mail:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.41-3ubuntu12.10 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database so;
Query OK, 1 row affected (0.00 sec)

mysql> use so;
Database changed
mysql> CREATE TABLE example_autoincrement (
    ->          id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->          data VARCHAR(100)
    ->        );
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO example_autoincrement (data) VALUES ('Hello world');
Query OK, 1 row affected (0.00 sec)

mysql> Bye
root@mail:~# apt-get remove mysql-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libnet-daemon-perl libdbi-perl libhtml-template-perl mysql-server-core-5.1 mysql-client-core-5.1 libdbd-mysql-perl libplrpc-perl mysql-server-5.1 mysql-client-5.1
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  mysql-server
0 upgraded, 0 newly installed, 1 to remove and 49 not upgraded.
After this operation, 131kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 52161 files and directories currently installed.)
Removing mysql-server ...
root@mail:~# ls /var/lib/mysql/
debian-5.1.flag  ibdata1  ib_logfile0  ib_logfile1  mail.pid  mysql  mysql_upgrade_info  so
root@mail:~# apt-get install mysql-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  mysql-server
0 upgraded, 1 newly installed, 0 to remove and 49 not upgraded.
Need to get 94.8kB of archives.
After this operation, 131kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main mysql-server 5.1.41-3ubuntu12.10 [94.8kB]
Fetched 94.8kB in 0s (98.4kB/s)       
Selecting previously deselected package mysql-server.
(Reading database ... 52158 files and directories currently installed.)
Unpacking mysql-server (from .../mysql-server_5.1.41-3ubuntu12.10_all.deb) ...
Setting up mysql-server (5.1.41-3ubuntu12.10) ...
root@mail:~# /etc/init.d^C
root@mail:~# service mysql start
start: Job is already running: mysql
root@mail:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 35
Server version: 5.1.41-3ubuntu12.10 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| so                 |
+--------------------+
3 rows in set (0.00 sec)

mysql> Bye
root@mail:~# apt-get purge mysql-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libnet-daemon-perl libdbi-perl libhtml-template-perl mysql-server-core-5.1 mysql-client-core-5.1 libdbd-mysql-perl libplrpc-perl mysql-server-5.1 mysql-client-5.1
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  mysql-server*
0 upgraded, 0 newly installed, 1 to remove and 49 not upgraded.
After this operation, 131kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 52161 files and directories currently installed.)
Removing mysql-server ...
root@mail:~# 
root@mail:~# 
root@mail:~# ls /var/lib/mysql/
debian-5.1.flag  ibdata1  ib_logfile0  ib_logfile1  mail.pid  mysql  mysql_upgrade_info  so
root@mail:~# 
    
por 26.01.2012 / 14:42
2

Acho que os "dados" a que se referem são quaisquer recursos não executáveis enviados no pacote, por ex. coisas encontradas em / usr / share. Você está especificamente preocupado com o mysql ou outro pacote?

Se os dados são valiosos para você, você deve fazer o backup de qualquer maneira.

    
por 26.01.2012 / 14:41
2

Como eu quero empacotar um para o ElasticSearch, eu preciso saber o que é esperado.

Se eu entendi corretamente, você está no processo de empacotamento do ElasticSearch como .deb para distribuição.

Se for esse o caso, e você está construindo um pacote .deb para distribuição pública, eu recomendo que você 1) leia completamente as seções relevantes sobre empacotamento no Debian Developer's Reference e pergunte na lista de discussão apropriada do Debian (provavelmente Debian-Developer).

Em geral, remove apenas removerá os binários e bibliotecas associados a um pacote, enquanto purge removerá os binários, bibliotecas, documentação e arquivos de configuração. É considerado uma forma inadequada para o seu pacote nuclearizar os dados do usuário sem ao menos informá-los primeiro.

Eu realmente sugiro que você verifique com um Debian Maintainer experiente antes de decidir como proceder - especialmente se você quiser enviar este pacote para repositórios Debian.

Outra palavra do dispositivo: Como um usuário Debian de longa data, quase nada me irrita mais do que um terceiro que distribui seu software como .deb que segue as convenções padrão do Debian. Se você deseja manter seus usuários, por favor assegure-se de que seu pacote é bem mantido e atende as diretrizes estabelecidas pela equipe Debian.

    
por 26.01.2012 / 18:49