ubuntu莫名的 系统出现文件系统只读

运维记录

日期:2024年9月15日

问题描述:

在安装多个 LNMP 服务后,系统重启出现了问题。当尝试运行 apt update 命令时,系统出现了如下错误信息:

复制代码
忽略:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
忽略:2 http://archive.ubuntu.com/ubuntu jammy InRelease
忽略:3 http://cn.archive.ubuntu.com/ubuntu jammy InRelease
忽略:4 http://cn.archive.ubuntu.com/ubuntu jammy-backports InRelease
...
错误:2 http://archive.ubuntu.com/ubuntu jammy InRelease
  暂时不能解析域名"archive.ubuntu.com"
...
W: chown to _apt:root of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (30: 只读文件系统)
...
W: 无法下载 http://archive.ubuntu.com/ubuntu/dists/jammy/InRelease  暂时不能解析域名"archive.ubuntu.com"

问题分析:

运行 df -h 命令时发现 /mnt/data 的挂载点丢失,文件系统变为只读模式。检查 /etc/fstab 文件时发现其内容为空,这可能是导致文件系统变为只读模式的原因。

解决步骤:

  1. 检查文件系统:

    bash 复制代码
    sudo fsck /dev/sda3

    检查结果显示 /dev/sda3 文件系统没有问题。

  2. 尝试重新挂载文件系统为读写模式:

    bash 复制代码
    sudo mount -o remount,rw /
  3. 测试是否能够创建文件:

    bash 复制代码
    sudo touch /testfile
  4. 使用 blkid 命令查找文件系统的 UUID 信息:

    bash 复制代码
    sudo blkid
  5. 编辑和恢复 /etc/fstab 文件:

    根据 blkid 输出的信息,恢复 /etc/fstab 文件的内容:

    bash 复制代码
     # 根文件系统
     UUID=xxxxxxxxxxxxxxx   /   ext4    defaults    0   1
     # 启动分区
     UUID=xxxxxxxxxxx    /boot/efi    vfat    defaults    0    2
     # raid阵列盘
     UUID=xxxxxxxxx   /mnt/data   ext4   defaults   0   2
  6. 备份新的 /etc/fstab 文件:

    将恢复后的 /etc/fstab 文件备份到 /etc/fstab.bak

    带日期时间的备份
    sudo cp /etc/fstab /etc/fstab.$(date +%F_%T).bak

总结:

系统重启后 /etc/fstab 文件丢失或被删除,导致文件系统变为只读模式。通过查找 blkid 中的信息,恢复了 /etc/fstab 文件并重新挂载了文件系统为读写模式。为防止未来出现类似问题,及时备份了 /etc/fstab 文件。


相关推荐
Unpredictable22210 分钟前
【VINS-Mono算法深度解析:边缘化策略、初始化与关键技术】
c++·笔记·算法·ubuntu·计算机视觉
RussellFans41 分钟前
Linux 文本三剑客(grep, awk, sed)
linux·运维·服务器
猴哥聊项目管理1 小时前
什么是DevOps智能平台的核心功能?
运维·项目管理·制造·devops·软件·项目管理软件·软件分享
Chuncheng's blog1 小时前
CentOS 7如何编译安装升级gcc至7.5版本?
linux·运维·c++·centos
aitav01 小时前
⚡️ Linux Docker 基本命令参数详解
linux·运维·docker
Nazi61 小时前
docker数据管理
运维·docker·容器
静水楼台x2 小时前
nginx日志的一点理解
运维·nginx
文牧之2 小时前
Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS
运维·数据库·oracle
姓刘的哦2 小时前
ubuntu中使用docker
linux·ubuntu·docker
代码程序猿RIP2 小时前
【Linux】(1)—进程概念-⑤进程调度
linux·运维