rpm or yum error: %preun( ) scriptlet failed, exit status 1

rpm删除出现”error: %preun( ) scriptlet failed, exit status 1解决方法

 

今天删除软件的时候报了下面的这个错误:

错误提示是:error: %preun(xxxxxx) scriptlet failed, exit status 1

 

最后在网上找到一个办法,就是加noscripts 标记来删除RPMnoscripts 相当于 -nopre -nopost  -nopreun -nopostun

即卸载命令变为:

$rpm -e –noscripts xxxxxx

若要查看与RPM关联的scripts,使用-script查询RPM包。

rpm -q -scripts package

卸载时,若系统里有同一程序的多个安装版本要一起删除,可使用-allmatches标记,如

rpm -e –noscripts -allmatches xxxxxx

rpm转换成deb

rpm转换成deb

Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alienrpm转换成deb

首先安装alien

sudo apt-get install alien   #alien默认没有安装,所以首先要安装它,如果找不到这个包,请检查你的/etc/apt/sources.list

安装完成后可以看到,alien的描述:Convert or install an alien binary package

测试

       随便选了一个rpm包,地址为:

http://dl.fedoraproject.org/pub/fedora/linux/releases/18/Everything/i386/os/Packages/t/tar-1.26-9.fc18.i686.rpm ,下载下来为tar-1.26-9.fc18.i686.rpm

使用sudo alien tar-1.26-9.fc18.i686.rpm

处理信息为:

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

Warning: Skipping conversion of scripts in package tar: postinst prerm

Warning: Use the –scripts parameter to include the scripts.

warning: tar-1.26-9.fc18.i686.rpm: Header V3 RSA/SHA256 Signature, key ID de7f38bd: NOKEY

tar_1.26-10_i386.deb generated

#rpm转换位deb,完成后会生成一个同名的tar_1.26-10_i386.deb(当然一些系统信息可能会去掉,比如fc18ubuntu中使用alien转换后,就木有了)

安装转换后的包

sudo dpkg -i tar_1.26-10_i386.deb #安装注意,用alien转换的deb包并不能保证100%顺利安装,所以可以找到deb最好直接用deb有时候,我们想要使用的软件并没有被包含到 Ubuntu 的仓库中,而程序本身也没有提供让 Ubuntu 可以使用的 deb 包,你又不愿从源代码编译。但假如软件提供有 rpm 包的话,我们也是可以在 Ubuntu 中安装的。