• linux中,当执行rpm -e删除一个软件包时,都做了些什么事


    问题描述

      今天在通过rpm进行删除软件包时,出现了问题,就引发了我对于rpm包执行删除动作时的一些行为做了思考,之前找了很多的文章,后来想如果有debug日志信息,那么不就都清楚了吗

    通过打印rpm -e执行删除的调试信息

    [root@testvm03 log]# rpm -e -vv mysql-server-5.1.73-8.el6_8.x86_64
    D: loading keyring from pubkeys in /var/lib/rpm/pubkeys/*.key
    D: couldn't find any keys in /var/lib/rpm/pubkeys/*.key
    D: loading keyring from rpmdb
    D: opening  db environment /var/lib/rpm cdb:mpool:joinenv
    D: opening  db index       /var/lib/rpm/Packages rdonly mode=0x0
    D: locked   db index       /var/lib/rpm/Packages
    D: opening  db index       /var/lib/rpm/Name rdonly mode=0x0
    D:  read h#     323 Header sanity check: OK
    D: added key gpg-pubkey-c105b9de-4e0fd3a3 to keyring
    D: Using legacy gpg-pubkey(s) from rpmdb
    D:  read h#     350 Header V3 RSA/SHA1 Signature, key ID c105b9de: OK
    D: ========== --- mysql-server-5.1.73-8.el6_8 x86_64/linux 0x2
    D: opening  db index       /var/lib/rpm/Requirename rdonly mode=0x0
    D: ========== recording tsort relations
    D:  Requires: ha_archive.so.0()(64bit)                      YES (added provide)
    D:  Requires: ha_blackhole.so.0()(64bit)                    YES (added provide)
    D:  Requires: ha_example.so.0()(64bit)                      YES (added provide)
    D:  Requires: ha_federated.so.0()(64bit)                    YES (added provide)
    D:  Requires: ha_innodb_plugin.so.0()(64bit)                YES (added provide)
    D: ========== tsorting packages (order, #predecessors, #succesors, tree, depth)
    D:     0    0    0    0    1   -mysql-server-5.1.73-8.el6_8.x86_64
    D: erasing packages
    D: closed   db index       /var/lib/rpm/Requirename
    D: closed   db index       /var/lib/rpm/Name
    D: closed   db index       /var/lib/rpm/Packages
    D: closed   db environment /var/lib/rpm
    D: opening  db environment /var/lib/rpm cdb:mpool:joinenv
    D: opening  db index       /var/lib/rpm/Packages create mode=0x42
    D: sanity checking 1 elements
    D: running pre-transaction scripts
    D: computing 99 file fingerprints
    D: computing file dispositions
    D: opening  db index       /var/lib/rpm/Basenames create mode=0x42
    D: 0x0000fd00     4096       799876       374295 /
    D: ========== +++ mysql-server-5.1.73-8.el6_8 x86_64-linux 0x2
    D:  read h#     350 Header V3 RSA/SHA1 Signature, key ID c105b9de: OK
    D:     erase: mysql-server-5.1.73-8.el6_8 has 99 files, test = 0
    D: opening  db index       /var/lib/rpm/Name create mode=0x42
    D: opening  db index       /var/lib/rpm/Triggername create mode=0x42
    D:     erase: %preun(mysql-server-5.1.73-8.el6_8.x86_64) scriptlet start
    D:     erase: %preun(mysql-server-5.1.73-8.el6_8.x86_64)    execv(/bin/sh) pid 2114
    + '[' 0 = 0 ']'
    + /sbin/service mysqld stop
    + /sbin/chkconfig --del mysqld
    D:     erase: waitpid(2114) rc 2114 status 0 secs 1.078
    D: fini      040755  2 ( 600, 600)      4096 /var/run/mysqld 
    D: fini      100640  1 ( 600, 600)      1672 /var/log/mysqld.log backup
    warning: /var/log/mysqld.log saved as /var/log/mysqld.log.rpmsave
    D: fini      040755  4 ( 600, 600)      4096 /var/lib/mysql 
    D:    erase rmdir of /var/lib/mysql failed: Directory not empty
    D: fini      100644  1 (   0,   0)     10376 /usr/share/mysql/mysql_test_data_timezone.sql 
    D: fini      100644  1 (   0,   0)      2855 /usr/share/mysql/mysql_system_tables_data.sql 
    D: fini      100644  1 (   0,   0)     17285 /usr/share/mysql/mysql_system_tables.sql 
    D: fini      100644  1 (   0,   0)     45560 /usr/share/mysql/mysql_fix_privilege_tables.sql 
    D: fini      100644  1 (   0,   0)      2441 /usr/share/mysql/my-small.cnf 
    D: fini      100644  1 (   0,   0)      4673 /usr/share/mysql/my-medium.cnf 
    D: fini      100644  1 (   0,   0)      4662 /usr/share/mysql/my-large.cnf 
    D: fini      100644  1 (   0,   0)     19751 /usr/share/mysql/my-innodb-heavy-4G.cnf 
    D: fini      100644  1 (   0,   0)      4688 /usr/share/mysql/my-huge.cnf 
    D: fini      100644  1 (   0,   0)    641349 /usr/share/mysql/fill_help_tables.sql 
    D: fini      100644  1 (   0,   0)    416238 /usr/share/mysql/errmsg.txt 
    D: fini      100644  1 (   0,   0)      1626 /usr/share/mysql/config.small.ini 
    D: fini      100644  1 (   0,   0)      2382 /usr/share/mysql/config.medium.ini 
    D: fini      100644  1 (   0,   0)      4528 /usr/share/mysql/config.huge.ini 
    D: fini      100644  1 (   0,   0)     12527 /usr/share/man/man8/mysqlmanager.8.gz 
    D: fini      100644  1 (   0,   0)      1691 /usr/share/man/man8/mysqld.8.gz 
    D: fini      100644  1 (   0,   0)      1448 /usr/share/man/man1/resolveip.1.gz 
    D: fini      100644  1 (   0,   0)      1650 /usr/share/man/man1/resolve_stack_dump.1.gz 
    D: fini      100644  1 (   0,   0)      1859 /usr/share/man/man1/replace.1.gz 
    D: fini      100644  1 (   0,   0)      1838 /usr/share/man/man1/perror.1.gz 
    D: fini      100644  1 (   0,   0)      4970 /usr/share/man/man1/mysqltest.1.gz 
    D: fini      100644  1 (   0,   0)       416 /usr/share/man/man1/mysqlman.1.gz 
    D: fini      100644  1 (   0,   0)      4548 /usr/share/man/man1/mysqlimport.1.gz 
    D: fini      100644  1 (   0,   0)      3187 /usr/share/man/man1/mysqlhotcopy.1.gz 
    D: fini      100644  1 (   0,   0)      2298 /usr/share/man/man1/mysqldumpslow.1.gz 
    D: fini      100644  1 (   0,   0)      5381 /usr/share/man/man1/mysqld_safe.1.gz 
    D: fini      100644  1 (   0,   0)      5592 /usr/share/man/man1/mysqld_multi.1.gz 
    D: fini      100644  1 (   0,   0)      5695 /usr/share/man/man1/mysqlcheck.1.gz 
    D: fini      100644  1 (   0,   0)      1609 /usr/share/man/man1/mysqlbug.1.gz 
    D: fini      100644  1 (   0,   0)     12134 /usr/share/man/man1/mysqlbinlog.1.gz 
    D: fini      100644  1 (   0,   0)      1654 /usr/share/man/man1/mysql_zap.1.gz 
    D: fini      100644  1 (   0,   0)      3797 /usr/share/man/man1/mysql_upgrade.1.gz 
    D: fini      100644  1 (   0,   0)      1833 /usr/share/man/man1/mysql_tzinfo_to_sql.1.gz 
    D: fini      100644  1 (   0,   0)      1997 /usr/share/man/man1/mysql_setpermission.1.gz 
    D: fini      100644  1 (   0,   0)      1543 /usr/share/man/man1/mysql_secure_installation.1.gz 
    D: fini      100644  1 (   0,   0)      2752 /usr/share/man/man1/mysql_install_db.1.gz 
    D: fini      100644  1 (   0,   0)      2165 /usr/share/man/man1/mysql_fix_privilege_tables.1.gz 
    D: fini      100644  1 (   0,   0)      1426 /usr/share/man/man1/mysql_fix_extensions.1.gz 
    D: fini      100644  1 (   0,   0)      2035 /usr/share/man/man1/mysql_convert_table_format.1.gz 
    D: fini      100644  1 (   0,   0)      2181 /usr/share/man/man1/mysql.server.1.gz 
    D: fini      100644  1 (   0,   0)      5443 /usr/share/man/man1/myisampack.1.gz 
    D: fini      100644  1 (   0,   0)      1835 /usr/share/man/man1/myisamlog.1.gz 
    D: fini      100644  1 (   0,   0)     13582 /usr/share/man/man1/myisamchk.1.gz 
    D: fini      100644  1 (   0,   0)      2286 /usr/share/man/man1/myisam_ftdump.1.gz 
    D: fini      100644  1 (   0,   0)      1508 /usr/share/man/man1/msql2mysql.1.gz 
    D: fini      100644  1 (   0,   0)      1850 /usr/share/man/man1/innochecksum.1.gz 
    D: fini      100644  1 (   0,   0)      2441 /usr/share/doc/mysql-server-5.1.73/my-small.cnf 
    D: fini      100644  1 (   0,   0)      4673 /usr/share/doc/mysql-server-5.1.73/my-medium.cnf 
    D: fini      100644  1 (   0,   0)      4662 /usr/share/doc/mysql-server-5.1.73/my-large.cnf 
    D: fini      100644  1 (   0,   0)     19751 /usr/share/doc/mysql-server-5.1.73/my-innodb-heavy-4G.cnf 
    D: fini      100644  1 (   0,   0)      4688 /usr/share/doc/mysql-server-5.1.73/my-huge.cnf 
    D: fini      040755  2 (   0,   0)      4096 /usr/share/doc/mysql-server-5.1.73 
    D: fini      100755  1 (   0,   0)   1569176 /usr/libexec/mysqlmanager 
    D: fini      100755  1 (   0,   0)   7590416 /usr/libexec/mysqld 
    D: fini      100755  1 (   0,   0)   1259136 /usr/lib64/mysql/plugin/ha_innodb_plugin.so.0.0.0 
    D: fini      120777  1 (   0,   0)        25 /usr/lib64/mysql/plugin/ha_innodb_plugin.so.0 
    D: fini      120777  1 (   0,   0)        25 /usr/lib64/mysql/plugin/ha_innodb_plugin.so 
    D: fini      100755  1 (   0,   0)     58064 /usr/lib64/mysql/plugin/ha_federated.so.0.0.0 
    D: fini      120777  1 (   0,   0)        21 /usr/lib64/mysql/plugin/ha_federated.so.0 
    D: fini      120777  1 (   0,   0)        21 /usr/lib64/mysql/plugin/ha_federated.so 
    D: fini      100755  1 (   0,   0)     33168 /usr/lib64/mysql/plugin/ha_example.so.0.0.0 
    D: fini      120777  1 (   0,   0)        19 /usr/lib64/mysql/plugin/ha_example.so.0 
    D: fini      120777  1 (   0,   0)        19 /usr/lib64/mysql/plugin/ha_example.so 
    D: fini      100755  1 (   0,   0)     30288 /usr/lib64/mysql/plugin/ha_blackhole.so.0.0.0 
    D: fini      120777  1 (   0,   0)        21 /usr/lib64/mysql/plugin/ha_blackhole.so.0 
    D: fini      120777  1 (   0,   0)        21 /usr/lib64/mysql/plugin/ha_blackhole.so 
    D: fini      100755  1 (   0,   0)     54048 /usr/lib64/mysql/plugin/ha_archive.so.0.0.0 
    D: fini      120777  1 (   0,   0)        19 /usr/lib64/mysql/plugin/ha_archive.so.0 
    D: fini      120777  1 (   0,   0)        19 /usr/lib64/mysql/plugin/ha_archive.so 
    D: fini      040755  2 (   0,   0)      4096 /usr/lib64/mysql/plugin 
    D: fini      100755  1 (   0,   0)   1365648 /usr/bin/resolveip 
    D: fini      100755  1 (   0,   0)   1369792 /usr/bin/resolve_stack_dump 
    D: fini      100755  1 (   0,   0)   1369712 /usr/bin/replace 
    D: fini      100755  1 (   0,   0)   1370544 /usr/bin/perror 
    D: fini      100755  1 (   0,   0)    187672 /usr/bin/mysqltest 
    D: fini      100755  1 (   0,   0)     32477 /usr/bin/mysqlhotcopy 
    D: fini      100755  1 (   0,   0)      7402 /usr/bin/mysqldumpslow 
    D: fini      100755  1 (   0,   0)     18204 /usr/bin/mysqld_safe 
    D: fini      100755  1 (   0,   0)     24495 /usr/bin/mysqld_multi 
    D: fini      100755  1 (   0,   0)      4808 /usr/bin/mysqlbug 
    D: fini      100755  1 (   0,   0)      3888 /usr/bin/mysql_zap 
    D: fini      100755  1 (   0,   0)     68176 /usr/bin/mysql_upgrade 
    D: fini      100755  1 (   0,   0)   1357920 /usr/bin/mysql_tzinfo_to_sql 
    D: fini      100755  1 (   0,   0)     17473 /usr/bin/mysql_setpermission 
    D: fini      100755  1 (   0,   0)      8198 /usr/bin/mysql_secure_installation 
    D: fini      100755  1 (   0,   0)     14646 /usr/bin/mysql_install_db 
    D: fini      100755  1 (   0,   0)      5834 /usr/bin/mysql_fix_privilege_tables 
    D: fini      100755  1 (   0,   0)      1261 /usr/bin/mysql_fix_extensions 
    D: fini      100755  1 (   0,   0)      4245 /usr/bin/mysql_convert_table_format 
    D: fini      100755  1 (   0,   0)   1671864 /usr/bin/myisampack 
    D: fini      100755  1 (   0,   0)   1639184 /usr/bin/myisamlog 
    D: fini      100755  1 (   0,   0)   1756720 /usr/bin/myisamchk 
    D: fini      100755  1 (   0,   0)   1642392 /usr/bin/myisam_ftdump 
    D: fini      100755  1 (   0,   0)     10024 /usr/bin/innochecksum 
    D: fini      100755  1 (   0,   0)      7026 /etc/rc.d/init.d/mysqld 
    D: fini      100644  1 (   0,   0)       871 /etc/logrotate.d/mysqld 
    D:     erase: %postun(mysql-server-5.1.73-8.el6_8.x86_64) scriptlet start
    D:     erase: %postun(mysql-server-5.1.73-8.el6_8.x86_64)    execv(/bin/sh) pid 2155
    + '[' 0 -ge 1 ']'
    D:     erase: waitpid(2155) rc 2155 status 0 secs 0.002
    D:   --- h#     350 mysql-server-5.1.73-8.el6_8.x86_64
    D: removing "mysql-server" from Name index.
    D: removing 99 entries from Basenames index.
    D: opening  db index       /var/lib/rpm/Group create mode=0x42
    D: removing "Applications/Databases" from Group index.
    D: opening  db index       /var/lib/rpm/Requirename create mode=0x42
    D: removing 68 entries from Requirename index.
    D: opening  db index       /var/lib/rpm/Providename create mode=0x42
    D: removing 8 entries from Providename index.
    D: opening  db index       /var/lib/rpm/Conflictname create mode=0x42
    D: removing 1 entries from Conflictname index.
    D: opening  db index       /var/lib/rpm/Dirnames create mode=0x42
    D: removing 14 entries from Dirnames index.
    D: opening  db index       /var/lib/rpm/Requireversion create mode=0x42
    D: removing 68 entries from Requireversion index.
    D: opening  db index       /var/lib/rpm/Provideversion create mode=0x42
    D: removing 8 entries from Provideversion index.
    D: opening  db index       /var/lib/rpm/Installtid create mode=0x42
    D: removing 1 entries from Installtid index.
    D: opening  db index       /var/lib/rpm/Sigmd5 create mode=0x42
    D: removing 1 entries from Sigmd5 index.
    D: opening  db index       /var/lib/rpm/Sha1header create mode=0x42
    D: removing "216aec29bd69c731019b4def5cf20d01f47cd1e0" from Sha1header index.
    D: opening  db index       /var/lib/rpm/Filedigests create mode=0x42
    D: removing 99 entries from Filedigests index.
    D: running post-transaction scripts
    D: closed   db index       /var/lib/rpm/Filedigests
    D: closed   db index       /var/lib/rpm/Sha1header
    D: closed   db index       /var/lib/rpm/Sigmd5
    D: closed   db index       /var/lib/rpm/Installtid
    D: closed   db index       /var/lib/rpm/Provideversion
    D: closed   db index       /var/lib/rpm/Requireversion
    D: closed   db index       /var/lib/rpm/Dirnames
    D: closed   db index       /var/lib/rpm/Triggername
    D: closed   db index       /var/lib/rpm/Conflictname
    D: closed   db index       /var/lib/rpm/Providename
    D: closed   db index       /var/lib/rpm/Requirename
    D: closed   db index       /var/lib/rpm/Group
    D: closed   db index       /var/lib/rpm/Basenames
    D: closed   db index       /var/lib/rpm/Name
    D: closed   db index       /var/lib/rpm/Packages
    D: closed   db environment /var/lib/rpm

    主要步骤

    1.检查rpm库,是否有依赖关系

    2.执行预删除操作,比如,停掉服务,删除开机启动等内容

    3.删除具体的生成的文件,备份配置文件

    4.删除rpm库中的文件。

    文档创建时间:2019年3月8日15:03:27

  • 相关阅读:
    修改Anaconda中Jupyter Notebook默认工作路径
    npm卸载和安装淘宝镜像原
    hash和history两种模式的区别
    威胁建模之WEB应用自动化截图
    Ubuntu系统清理
    Ubuntu环境的docker实践——ONOS
    BUUCTF-crypto:信息化时代的步伐
    BUUCTF-crypto:四面八方
    BUUCTF-crypto:[HDCTF2019]basic rsa
    BUUCTF-crypto:rsarsa
  • 原文地址:https://www.cnblogs.com/chuanzhang053/p/10495936.html
Copyright © 2020-2023  润新知