ubuntu安装e2fsprogs

文章讲述了作者在升级Ubuntu16系统后遇到apt安装问题,由于chattr库损坏,需重新安装。通过apt-getfix-broken发现需要特定版本的e2fsprogs(1.44.1),作者选择从GitHub下载源码并手动编译安装,以解决符号查找错误。
摘要由CSDN通过智能技术生成

背景描述

背景:有一台ubuntu16机器,很久没用了,一不小心按了升级,升级前还没做镜像,但里面有些软件重装麻烦。升级后再次apt install任何软件都会报错,使用apt fix-broken install报错如下

dpkg: error processing archive /var/cache/apt/archives//var/cache/apt/archives/e2fsprogs_1.44.1-1ubuntu1.4_amd64.deb (--unpack):
 unable to make backup link of './usr/bin/top' before installing new version: Operation not permitted

查看众多博客后发现,大概是因为在升级时,管理文件系统的库chattr 坏了,这个库给很多系统敏感文件都加了禁止删除,包括他自己,更新这个库的时候应该要把这些库文件的禁止删除取消。所以需要做的是重新安装chattr,这个库对应的软件是e2fsprogsgithub源码链接
原本可以apt install e2fsprogs 但我已经用不了,而且版本太老,没有找到直接的可执行文件,从github最新版安装也会报错。所以要想办法获取ubuntu当前系统对应的e2fsprogs版本号,其实很简单,apt install e2fsprogs然后apt --fix-broken install就会显示在e2fsprogs_1.44.1-1ubuntu1.4_amd64.deb的时候安装有问题,所以要安装的是e2fsprogs_1.44.1。但我还想走个捷径,因为看到pkgs网站上有很多版本的可执行文件,然而或许是这些可执行文件原版本太高,又或许本身系统的问题,都只会报错chatattr symbol lookup error: chattr: undefined symbol: fsetproject,网上查了一下,大概就是不匹配。最后用了https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/e2fsprogs/1.44.1-1ubuntu1.4/e2fsprogs_1.44.1.orig.tar.gz这个进行编译安装

源码安装e2fsprogs

wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/e2fsprogs/1.44.1-1ubuntu1.4/e2fsprogs_1.44.1.orig.tar.gz
tar zxvf  e2fsprogs_1.44.1.orig.tar.gz
cd e2fsprogs-1.44.1
mkdir build 
cd build
#通过pwd获取当前路径
../configure --prefix=XXX # XXX为pwd获得的路径
make && make install

安装成功的话,在build/bin路径下能看到chattr和lsattr

cd bin
./lsattr /usr/bin/chattr
./chattr -ia /usr/bin/chattr
./chattr -ia /usr/bin/lsattr
mv /usr/bin/chattr  /usr/bin/chattr.bak
mv /usr/bin/lsattr /usr/bin/lsattr.bak
cp chattr /usr/bin
cp lsattr /usr/bin

ubuntu 20.04等版本e2fsprogs可执行文件路径

ubuntu20.04 可执行文件路径http://archive.ubuntu.com/ubuntu/pool/main/e/e2fsprogs/e2fsprogs_1.45.5-2ubuntu1_amd64.deb
Ubuntu22.04可执行文件路径
http://archive.ubuntu.com/ubuntu/pool/main/e/e2fsprogs/e2fsprogs_1.46.5-2ubuntu1_amd64.deb
Ubuntu23.10可执行文件路径
http://archive.ubuntu.com/ubuntu/pool/main/e/e2fsprogs/e2fsprogs_1.47.0-2ubuntu1_amd64.deb
其它操作系统均可查询https://pkgs.org/search/?q=e2fsprogs

参考:

https://blog.csdn.net/Haulyn5/article/details/127495565

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值