如何在Linux上写只读文件系统? (linux 写只读文件系统)

在Linux系统中,只读文件系统是非常重要的一种文件系统。只读文件系统可以保护计算机系统免受病毒、恶意软件以及其他形式的攻击。只读文件系统可以保护计算机系统免受恶意软件和病毒的侵犯,同时,只读文件系统可以避免你误删除或修改重要的系统文件和配置文件,因此在Linux系统上写只读文件系统是非常必要的。那么如何在Linux系统上写只读文件系统呢?下面就来为大家简要介绍一下详细的步骤。

一、制作只读文件系统的方式

制作只读文件系统的方式有两种,一种是手动制作,另一种是使用特定的工具来制作。手动制作只读文件系统的方式比较麻烦,所以我们这里推荐使用特定的工具进行制作。

二、使用live-build工具制作只读文件系统

Live-build是用于构建Debian、Ubuntu或任何其他派生发行版的iso映像或售后服务(live)系统的工具。它可以快速和轻松地制作自定义配方的应急重装镜像。

Live-build提供了一个完整的框架,以自动执行许多任务,例如文件复制、打包和解包ISO(无论是ISO 9660还是SquashFS格式)等等。bash shell、perl、python、python3和ruby等等各种中文化可用于脚本编写。

以下是如何使用live-build工具制作只读文件系统的详细步骤:

1、安装live-build工具:

# sudo apt-get install -y live-build

2、创建一个项目目录:

# mkdir my-project

# cd my-project

3、将live-build的配置文件复制到项目目录:

# cp -r /usr/share/live/build/examples/cowbuilder .

# cp /usr/share/doc/live-build/examples/auto/config .

# cp /usr/share/live/build/examples/auto/ubuntu.list.chroot .

# cp -r /usr/share/debootstrap/scripts/* cowbuilder/

4、重新编辑config文件:

# vim config

在文件中修改以下选项:

#TODO – REPLACE codename with the codename of the target distribution

配置文件中的乱码可以使用Vim编辑编码方式进行修改::set fileencoding=xxx 即可。

5、创建一个chroot目录:

# lb config –mode bootstrap

# lb bootstrap

6、修改配置文件:

# vim config

设置只读挂载分区的选项:

# Filesystem compression method:

# Supported: none|gzip|lzma|bzip2

# No compression:

COMPRESS=none

#create a read-only filesystem. Used primarily for squashfs.

LB_READ_ON_ROOTFS=1

7、构建iso文件:

# lb config –mode ubuntu –ubuntu-series xenial –architectures i386

# lb build

8、查看构建的结果:

# ls -l ./images

构建成功的话,你就可以在./images目录下看到一份only-read.iso文件。这个文件就是你刚刚构建的只读文件系统。

三、使用OverlayFS制作只读文件系统

OverlayFS是一个轻量级的存储驱动程序,它是Linux内核中最新的文件系统之一。OverlayFS将多个文件系统挂载在同一位置,并且可以将其中任何一个文件系统标记为只读。

以下是使用OverlayFS制作只读文件系统的详细步骤:

1、使用debootstrap创建一个根文件系统:

# debootstrap xenial /opt/only-read http://mirrors.aliyun.com/ubuntu/

2、准备一个空的只读文件系统:

# mkdir /tmp/ro

# cd /tmp/ro

# mkdir -p bin in lib lib64 etc opt usr var

# chmod 755 bin in lib lib64 opt usr var

# touch etc/resolv.conf

# chmod 644 etc/resolv.conf

3、将根文件系统复制到只读文件系统:

# rsync -a /opt/only-read/ .

# rm -rf dev proc run sys tmp var/cache/apt/archives/*

4、使用OverlayFS将只读文件系统与根文件系统进行合并:

# mkdir /tmp/work

# mkdir /mnt/only-read

# mount -t overlay overlay -o lowerdir=/opt/only-read,upperdir=/tmp/work,workdir=/tmp/overlay/only-read /mnt/only-read

5、将合并的文件系统挂载为只读:

# mount -o remount,ro /mnt/only-read

现在,你已经成功将Linux系统上的文件系统制作成了只读文件系统。只读文件系统能有效地保护计算机系统,避免文件被恶意软件和病毒感染,也能保护重要的系统文件和配置文件不被意外的修改和删除。毫无疑问,这是一件非常重要的事情。

相关问题拓展阅读:

  • linux 文件系统变为了只读,这个问题怎么解决
  • linux文件系统自动变成只读 为什么

linux 文件系统变为了只读,这个问题怎么解决

可以先进入挽救模式备份数据后重做系统。

具体是什么原因有很多。

最有可能是卸载了安装包,同时把关联的依赖包都卸载了。

这样导致系统文件的缺失。

另外硬盘损坏也会导致这个问题。

1、mount:

  用于查看哪个模块输入只读,一般显示为:

  /dev/hda1 on / type ext3 (rw)

  none on /proc type proc (rw)

  udevfs on /proc/bus/u type udevfs (rw)

  none on /dev/pts type devpts (rw,gid=5,mode=620)

  /dev/hda5 on /home type ext3 (rw)

  none on /dev/shm type tmpfs (rw)

  /dev/hda2 on /usr/local type ext3 (rw)

  /dev/nb1 on /EarthView/RAW type ext3 (ro)(变为只读了)

  2、如果发现有ro,就重新mount,或者umount以后再remount

  3、umount /dev/nb1

  如果发现有提示“device is busy”,找到是什么进程使得他busy

  fuser -m /mnt/data 将会显示使用这个模块的pid

  fuser -mk /mnt/data 将会直接kill那个pid

  然后重新mount即可。

  4、还有一种方法是直接remount,命令为

  mount -o rw,remount /mnt/data

具体深入的做法,情况不同可以自行选择:

服务器/var/log/messages报错 :

end_request: I/O error, dev sda, sectorBuffer I/O error on device sda1, logical blocklost page write due to I/O error on sda1

下面是整个处理全过程

# fdisk -lu #之一步 :找出本地扇片所在的分区。

Disk /dev/sda: 73.4 GB,bytes

255 heads, 63 sectors/track, 8924 cylinders, totalsectors

Units = sectors of 1 * 512 = 512 bytes

Device Boot Start End Blocks Id System

/dev/sda1 *Linux

/dev/sda83 Linux

/dev/sda7+ 83 Linux

/dev/sda0 5 Extended

/dev/sda1 83 Linux

/dev/sda6 82 Linux swap

# tune2fs -l /dev/sda3 |grep “Block size” #找到block大小。

Block size: 4096

(8605)*512/4096 =利用公式算出逻辑块地址

b = (int)((L-S)*512/B)

# debugfs

debugfs 1.35 (28-Feb-2023)

debugfs: open /deb/sda3

/deb/sda3: No such file or directory while opening filesystem

debugfs: open /dev/sda3

debugfs: icheck

Block Inode number

debugfs: ncheck

Inode Pathname

/users/inn.net.cn/data/upload/download/innshow004.rar

debugfs: quit

#dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=#找到这个快的文件之后,需要做好备份,我们强制把它设置为0字节。

# sync

linux文件系统自动变成只读 为什么

可以先进入挽救模式备份数据后重做系统。

具体是冲衡搭什么原因有很多。

最有可能是卸载了拦手安装包,同时把关联散拿的依赖包都卸载了。

这样导致系统文件的缺失。

另外硬盘损坏也会导致这个问题。

因为当前用户对那个文件没有相应的权限,你可以在那个目录执行命令 ls -l查看当前文件以及相应的所有者和对应的权限,drwxrwxrwx应该是这样的,每一个字母都有可能是 – ,其中之一个d表示是不是文件夹,后面的分成空启三组,分别对应所有者,所属组,其它用户。r是读权限,w是写,x是执行。如果你是Ubuntu系统的话可以用sudo命令提升用户权限,系统会提示你输入root用户的密码。如果是Redhat, Fedora, CentOS之类的系统就直接su -,然后系统会扰卜提示你输入root密码,这回你就有权限了。用root用户是可以修改文件的所有者和所属组的。详细的你可以查一下chown和chgrp命令。要修改相应的权限可以看一下chmod命缓亏穗令。如果还有不明白的可以追问或者私信。Linux系统其实很不错,日常用也很不错,你需要的都能满足。

关于linux 写只读文件系统的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/210227.html<

(0)
运维的头像运维
上一篇2025-04-09 20:17
下一篇 2025-04-09 20:19

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注