当前位置: 首页 > news >正文

e2fsprogs logsave Ubuntu 安装失败 unable to make backup link of ‘./usr/bin/chattr‘

最近给服务器从 Ubuntu 18.04 LTS 升级到 20.04 LTS,过程中崩溃,重新尝试执行,提示依赖错误。这时候 apt install 所有的东西都会报错,提示依赖不满足。(这里的报错忘了复制了)执行 apt upgrade 也是一样。(之前一直执着于这一步的报错,百般搜索没能解决问题,大致就是不同的包需求的版本互相不匹配了)

然后按照提示执行 apt --fix-broken install 就会出现下面的报错。

root@server:~# apt --fix-broken install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  bluez-obexd cryptsetup cryptsetup-bin dconf-cli gir1.2-accountsservice-1.0 gir1.2-atspi-2.0
  gir1.2-gck-1 gir1.2-gcr-3 gir1.2-gdm-1.0 gir1.2-geoclue-2.0 gir1.2-gnomebluetooth-1.0
  gir1.2-gnomedesktop-3.0 gir1.2-graphene-1.0 gir1.2-gweather-3.0 gir1.2-ibus-1.0
  gir1.2-mutter-6 gir1.2-nm-1.0 gir1.2-nma-1.0 gir1.2-rsvg-2.0 gir1.2-soup-2.4
  gir1.2-upowerglib-1.0 gjs gnome-session-bin gnome-session-common gnome-shell-common
  gnupg-l10n gnupg-utils gpg-wks-server ibus-data libaom0 libatasmart4 libblockdev-fs2
  libblockdev-loop2 libblockdev-part-err2 libblockdev-part2 libblockdev-swap2
  libblockdev-utils2 libblockdev2 libcairo-gobject-perl libcairo-perl libcamel-1.2-62
  libcdio-cdda2 libcdio-paranoia2 libcdio17 libcroco3 libcue2 libdvdread7 libebackend-1.2-10
  libebook-1.2-20 libebook-contacts-1.2-2 libebook-contacts-1.2-3 libecal-2.0-1
  libedata-book-1.2-26 libedata-cal-2.0-1 libedataserver-1.2-24 libexempi3 libexempi8
  libexiv2-27 libextutils-depends-perl libextutils-pkgconfig-perl libfile-copy-recursive-perl
  libgail-3-0 libgexiv2-2 libgif7 libgjs0g libglib-object-introspection-perl libglib-perl
  libgmime-3.0-0 libgnome-autoar-0-0 libgsf-1-114 libgsf-1-common libgutenprint-common
  libgutenprint2 libgutenprint9 libinstpatch-1.0-2 libmetacity1 libmozjs-52-0 libmozjs-68-0
  libmtp-common libmtp-runtime libmtp9 libmutter-6-0 liboauth0 libparted-fs-resize0
  libperl5.26 libphonenumber7 libprotobuf10 libpython2.7 libqpdf21 libtracker-control-2.0-0
  libtracker-miner-2.0-0 libtracker-sparql-2.0-0 libudisks2-0 libusbmuxd4 libvpx6
  libzeitgeist-2.0-0 linux-headers-4.15.0-166 linux-headers-4.15.0-166-generic
  linux-image-4.15.0-166-generic linux-modules-4.15.0-166-generic
  linux-modules-extra-4.15.0-166-generic mate-desktop-common metacity-common onboard-common
  pkg-config printer-driver-gutenprint python-crypto python-talloc python3-ibus-1.0 qpdf
  run-one sgml-base tracker tracker-extract tracker-miner-fs udisks2 xubuntu-icon-theme
  xwayland yaru-theme-gnome-shell yelp-xsl zenity-common
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  atril atril-common brltty brltty-x11 e2fsprogs initramfs-tools initramfs-tools-bin
  initramfs-tools-core klibc-utils libatrildocument3 libatrilview3 libbrlapi0.7 libklibc
  liblouis20 libpcre2-32-0 libsoup2.4-1 libsynctex2 libwebkit2gtk-4.0-37 logsave lz4
Suggested packages:
  caja unrar brltty-speechd console-braille gpart fuse2fs e2fsck-static
Recommended packages:
  gvfs e2fsprogs-l10n
The following NEW packages will be installed:
  initramfs-tools initramfs-tools-core klibc-utils libbrlapi0.7 liblouis20 libpcre2-32-0
  libsynctex2 libwebkit2gtk-4.0-37 logsave lz4
The following packages will be upgraded:
  atril atril-common brltty brltty-x11 e2fsprogs initramfs-tools-bin libatrildocument3
  libatrilview3 libklibc libsoup2.4-1
10 upgraded, 10 newly installed, 0 to remove and 921 not upgraded.
3 not fully installed or removed.
Need to get 0 B/19.1 MB of archives.
After this operation, 71.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 248701 files and directories currently installed.)
Preparing to unpack .../e2fsprogs_1.45.5-2ubuntu1.1_amd64.deb ...
Unpacking e2fsprogs (1.45.5-2ubuntu1.1) over (1.44.1-1ubuntu1.4) ...
dpkg: error processing archive /var/cache/apt/archives/e2fsprogs_1.45.5-2ubuntu1.1_amd64.deb (--unpack):
 unable to make backup link of './usr/bin/chattr' before installing new version: Operation not permitted
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
dpkg: considering deconfiguration of e2fsprogs, which would be broken by installation of logsave ...
dpkg: no, e2fsprogs is essential, will not deconfigure
 it in order to enable installation of logsave
dpkg: error processing archive /var/cache/apt/archives/logsave_1.45.5-2ubuntu1.1_amd64.deb (--unpack):
 installing logsave would break existing software
Errors were encountered while processing:
 /var/cache/apt/archives/e2fsprogs_1.45.5-2ubuntu1.1_amd64.deb
 /var/cache/apt/archives/logsave_1.45.5-2ubuntu1.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
这一步的报错的主要信息有下面的两个。

2ubuntu1.1_amd64.deb (--unpack):
 unable to make backup link of './usr/bin/chattr' before installing new version: Operation not permitted
这个提示 chattr 的一开始没听过,直接被我忽略了,甚至怀疑和 ssh 有关,后面证明这个报错才是关键。之后的报错其实是后来的结果和提示,我却一直拿下面的内容搜索,但是一直搜索不到有用的内容。大概就是说 e2fsprogs 和 logsave 在安装的时候出问题了。e2fsprogs 都是系统底层的关键库,和文件系统相关,那如果坏了可能就得重装系统了……

dpkg: considering deconfiguration of e2fsprogs, which would be broken by installation of logsave ...
dpkg: no, e2fsprogs is essential, will not deconfigure
 it in order to enable installation of logsave
之后重新回来搜索第一个 chattr 的报错,结果找到了下面的链接,最终引导我解决了问题。上面第一个报错说 无法给 chattr 做备份链接,Operation not permitted。这就很有意思了,我是 root 都不允许。结果证实还是经验少,这个报错是经典的 chattr 用来管理文件安全的一个报错。除了我们习惯的 chmod 对用户的读写执行进行约束,chattr 也可以进一步约束文件不可以删除或者只可以 append 等等,具体大家可以 google 一下 chattr 这个库。

https://forum.howtoforge.com/threads/big-mistake-removed-e2fsprogs.75729/
https://forum.howtoforge.com/threads/big-mistake-removed-e2fsprogs.75729/
事后推测原因是 chattr 这个库坏了,而这个库给很多系统敏感文件都加了禁止删除,包括他自己。更新这个库的时候应该要把这些库文件的禁止删除取消,但是它在这里出问题了。于是按照连接中的方法,去下载了 e2fsprogs 的 pkg 包。

https://ubuntu.pkgs.org/20.04/ubuntu-updates-main-amd64/e2fsprogs_1.45.5-2ubuntu1.1_amd64.deb.html
https://ubuntu.pkgs.org/20.04/ubuntu-updates-main-amd64/e2fsprogs_1.45.5-2ubuntu1.1_amd64.deb.html
下载后的 pkg 包是可以解压的,解压以后,在解压后的 /usr/bin/ 可以找到 chattr and lsattr 这两个可执行文件。于是我们用这里的 chattr 取消系统里 chattr 和 lsattr 的保护,然后手动删除。

./chattr -ia /usr/bin/chattr
./chattr -ia /usr/bin/lsattr
rm /usr/bin/chattr 
rm /usr/bin/lsattr 
之后 apt upgrade ,安装顺利进行,问题解决
————————————————
原文链接:https://blog.csdn.net/Haulyn5/article/details/127495565

相关文章:

e2fsprogs logsave Ubuntu 安装失败 unable to make backup link of ‘./usr/bin/chattr‘

最近给服务器从 Ubuntu 18.04 LTS 升级到 20.04 LTS,过程中崩溃,重新尝试执行,提示依赖错误。这时候 apt install 所有的东西都会报错,提示依赖不满足。(这里的报错忘了复制了)执行 apt upgrade 也是一样。…...

在排序数组中查找元素的第一个和最后一个位置(二分查找进阶)

在写这个题目之前需要大家自行看一下我之前写的博客有关二分查找思想,如何判断什么时候使用二分查找以及边界值的确定:二分查找思想力扣实例_徐憨憨!的博客-CSDN博客 题目:给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定…...

1 Nginx跨域配置

跨域问题在之前的单体架构开发中,其实是比较少见的问题,除非是需要接入第三方SDK时,才需要处理此问题。但随着现在前后端分离、分布式架构的流行,跨域问题也成为了每个Java开发必须要懂得解决的一个问题。 跨域问题产生的原因 产…...

ChatGTP如此强大,我们普通人如何利用它来赚钱?

我从效率提升的角度,分享了我这段时间看到的、用到的,以及思考的一些内容。 最近这段时间,我算是密集的学习。不得不说,优质的资料在推特和油管上特别多,看科技大佬的分享真是一种享受。 很多大神也会录制各种详细的…...

常见的九种大数据分析模型

常见的9种大数据分析模型分别为: 事件分析、 属性分析、 渠道分析、 Session分析、 留存分析、 归因分析、 漏斗分析、 路径分析、 分布分析 1、【事件分析】 事件分析,是指用户在 APP、网站等应用上发生的行为,即何人,何时&…...

射频识别(RFID)技术的基本原理、特性、发展和应用

何谓射频识别 随着高科技的蓬勃发展,智能化管理已经走进了人们的社会生活,一些门禁卡、第二代身份证、公交卡、超市的物品标签等,这些卡片正在改变人们的生活方式。其实秘密就在这些卡片都使用了射频识别技术,可以说射频识别已成…...

3.3 二维随机变量条件分布

学习目标: 要学习二维随机变量的条件分布,我可能会采取以下步骤: 复习边缘分布和联合分布:首先需要了解二维随机变量的边缘分布和联合分布的概念以及相应的公式。 复习条件概率:学习条件概率的定义和计算公式&#x…...

Kafka——概述、安装及命令行操作

文章目录一、概述1.1、定义1.2、如何运作?1.3、传统消息队列的应用场景1.4、消息队列的两种模式1.5、Kafka的基础架构二、安装(需要安装zookeeper)三、常用命令行操作3.1、主题命令行操作3.2、生产者命令行操作3.3、消费者命令行操作一、概述…...

怎么控制ERP企业管理系统开发的价格

企业资源规划(ERP)是一种广泛使用的商业软件系统,用于管理企业的各个方面,包括财务、供应链、客户关系、人力资源等等。开发一个适合企业的ERP系统可能是一项昂贵的任务,但控制ERP企业管理系统开发的价格是可行的。以下…...

我在“Now In Android”中学到的 9 件事

我在“Now In Android”中学到的 9 件事 Now in Android是一款功能齐全的 Android 应用程序,完全使用 Kotlin 和 Jetpack Compose 构建。它遵循 Android 设计和开发最佳实践,旨在为开发人员提供有用的参考。 https://github.com/android/nowinandroid UI…...

ChatGPT宝藏插件丨装上之后,上网、语音聊天、一键分享对话……简直让你爽到起飞!

今天分享4个让你的 ChatGPT 功能更强大的浏览器插件,装上就能用,每一个都是精挑细选。 1. WebChatGPT 很多小伙伴在用 ChatGPT查阅信息时,发现它有一个致命的问题: ChatGPT的知识库全部截止到 2021年9月,正常情况下…...

私有句柄表

私有句柄表 实验环境 win7 x86 什么是私有句柄表? 私有句柄表是操作系统内部的一种数据结构,用于存储一个进程所拥有的句柄(或称为句柄对象)的信息。在操作系统中,句柄是一个标识符,用于唯一标识一个对…...

Vue——类与样式绑定

目录 Class 与 Style 绑定​ 绑定 HTML class​ 绑定对象​ 绑定数组​ 在组件上使用​ 绑定内联样式​ 绑定对象​ 绑定数组​ 自动前缀​ 样式多值​ Class 与 Style 绑定​ 数据绑定的一个常见需求场景是操纵元素的 CSS class 列表和内联样式。因为 class 和 styl…...

软考中项计算题总结

计算题在下午的考试属于重中之重,可以说得计算题得天下,先把计算题搞定,再看案例找错题,这2个是最容易得分的,所以对于进度、成本类的计算题一定要搞懂: 所属项目过程计算计算公式说明进度管理三点估算&am…...

如何使用基于GPT-4的Cursor编辑器提升开发效率

程序员最恨两件事情:一是别人代码不写文档,二是要让自己写文档。随着 GPT-4 的到来这些都不是问题了,顺带可能连程序员都解决了。。。 之前一直觉得 AI 生成的代码也就写个面试题的水平,小打小闹,现在时代可变了。Curs…...

压箱底教程分享,手把手教会你如何注册target账号和下单

喜欢套利的朋友肯定都认识target这个平台吧,它是美国热门的综合性海淘网站之一。东哥近日收到私信有朋友向我请教在注册target账号时遇到的一些问题,所以今天东哥想跟大家分享的就是就是target账号注册教程和下单流程,让也想注册target账号的…...

一次性搞懂dBSPL、dBm、dBu、dBV、dBFS的区别!

相信学习音乐制作的同学在混音阶段经常会碰到各种关于声音的单位,其中最具代表性的可能就是分贝家族的单位了,如dBSPL、dBm、dBu、dBV、dBFS等。 那么,这些单位分别表示什么,又有什么区别呢? 描述声音信号强弱的单位…...

漂亮实用的15个脑图模板,你知道哪些是AI做的吗?

对于很多第一次接触到思维导图的朋友,看到软件的时候往往找不到方向,不知道如何创作? 今天大家的好助手来了。 一是有大量的思维导图模板,大家看着模板做,慢慢就会做了。 二是ProcessOn 思维导图已经可以用AI 做思维…...

历代程序员都无法逃脱的诅咒 -- 低代码

1764年5月4日星期四 愤怒的纺织工人 纵火烧毁了哈格里夫斯的家 因为他发明的珍妮纺织机 让很多当地的手工纺织工人失业了 这也被认为是第一次工业革命的开端 由于事发的星期四 所以这一事件也被称作疯狂星期四 类似的变革 也一次次的出现在软件行业 他是历代程序员都无法逃脱的…...

14Exceptional Control Flow Exceptions and Process(异常控制流,异常和进程)

异常控制流 异常控制流出现的地方: 异常控制流(Exceptional Control Flow,ECF)是程序执行过程中由于某些特殊事件或条件而导致的控制流的改变。异常控制流通常出现在以下几种情况: 硬件异常和中断:硬件异…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...

浅谈不同二分算法的查找情况

二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况&#xf…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...