理解linux只读模式的原因 (linux 只读原因)

理解Linux只读模式的原因

Linux是一种类Unix的操作系统,它是一种流行的开源系统,被广泛应用于服务器、桌面电脑和嵌入式系统。其中的只读模式也是值得探究的一个话题,什么是只读模式,为什么需要只读模式,我们将从多个方面来探讨这个话题。

什么是只读模式?

只读模式是一种保护机制,它限制了对文件系统的读取和写入权限,只允许读取文件而不修改它们。在只读模式下,不允许更改文件系统上的文件、目录或者文件所有者。当您试图修改文件系统时,Linux系统可能会发出错误提示。

为什么需要只读模式?

只读模式虽然看起来似乎缺少功能,但是它确实是Linux系统中必备的重要功能。这是因为只读模式有以下几个重要的优势:

安全性: /usr/bin、/in、/bin、/lib这些目录里的文件是Linux系统的核心,只有当他们处于只读状态才能避免对系统的误操作。只读模式可以确保文件不会被修改或删除,有利于保证系统的稳定性和安全性。

维护: 在Linux系统的应用中,只读模式可以帮助提高系统的可维护性。如果系统无法启动,则可以通过只读模式检查文件系统的完整性,并根据需要进行修复。此外,只读模式也可用于备份数据,防止数据丢失或损坏,而且仅需要一些简单的命令即可实现。

恢复: 只读模式也可以用来恢复被卷入错误中的系统。例如,如果默认的引导选项不能启动系统,您可以通过从USB等存储设备启动进入只读模式,然后出现问题后从存储设备启动系统。

如何进入只读模式?

进入只读模式十分简单,用户只需要在启动时添加一个目标对应的参数,即可进入只读模式。从Grub启动菜单中选择一个目标,按“e”键编辑选定的目标,然后在末尾添加 “ro” 参数。完成操作后,重启Linux系统即可成功进入只读模式。

只读模式的注意事项

当您在只读模式下工作时,需要注意以下几点:

1.不能修改文件系统上的文件,目录或文件所有者。

2.不要安装新软件或更新软件,因为您不能写入磁盘。

3.如果要进行其他操作,请使用只读模式下的命令。

结论

只读模式是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

解决办法

1.重启看是否可以修复(很多机器可以)

2.使用用fsck – y 来修复文件系统

3.若,在进行修复的时候有的分区会报错,重新启动系统问题依旧

查看下分区结构

# more /etc/fstab

# more /proc/mounts

# mount

/dev/sda3 on / type ext3 (rw)

proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

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

/dev/sda1 on /boot type ext3 (ro)

tmpfs on /dev/shm type tmpfs (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)

查看ro挂载的分区,如胡毕果发现有ro,就重新mount

umount /dev/sda1

mount /dev/sda1 /boot

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

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

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

然后重新mount即可。

4.直接remount,命令为

# mount -o rw,remount /boot

linux 只读原因的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux 只读原因,理解linux只读模式的原因,如何解决linux系统只读的信息别忘了在本站进行查找喔。


数据运维技术 » 理解linux只读模式的原因 (linux 只读原因)