linux命令只读 linux以只读方式打开文件

Linux报错只读文件系统(集群非法关机、断电)踩坑 出现错误的原因是由于我突发奇想写了一个reboot集群的脚本,导致集群非法关机,然后就炸了 。。。
在我使用上述reboot脚本后,发现MobaXterm(远程工具)ssh死活连不上了 。
赶紧检查集群,发现如下报错:
由于心急没有管报错(第一次见看不懂),直接输密码进入界面(我的是无可视化界面的CentOS 6.5) 。
进界面后首先尝试ssh其他节点 。报错 。
尝试从宿主机ping虚拟机,也ping不通 。
那么首先确定网络问题,查看/etc/sysconfig/network-scripts/ifcfg-eth0下的ip配置 。
没有问题 。
输入命令查看ip:
发现只有127.0.0.1,此时基本确定网络服务故障或未自启动 。
输入命令启动网络服务:
可以看到ip正常了 。
测试宿主机ping虚拟机也正常了 。
测试虚拟机ping虚拟机也正常了 。
测试ssh本机也正 。。。等等!
ssh没通 , 报错如下:
和最开始的报错是一样的,有了经验,大致也猜测的出很有可能sshd服务也没有自启动 。
输入sshd启动命令:
控制台报错信息:
/var/lock/subsys/sshd not group or world-writable
出现此报错,整个系统问题已经初现端倪 。
虽然启动sshd服务报错了,但尝试ssh本机却正常了 。
此时试着启动集群的各个进程 。
果然,大量报错 。
只读文件系统几个大字摧毁我幼小的心灵
想起解决的网络、ssh问题,明白了罪恶的源头就在....
就是它!万恶之源!
首先查看挂载的分区:
又有报错,不过看不懂 。猜测是mount命令相关的文件也被修改成只读了 。
开机报错的/dev/sda1分区并没有挂载,而/dev/sda3是正常的rw(读写)状态 。
我有点晕 。
尝试修复/dev/sda3分区:
第一次使用fsck命令 , 看不太明白,不过该命令没起到什么作用 。
有点绝望,随手尝试了修改/dev/sda3分区的状态:
居然不报错了!
至此报错全部消失,网络服务和ssh服务也正常开机自启了 。
留下懵逼的我,具体原理日后学习再补充 。
如何解决linux系统只读linux系统重启或无故变为只读造成网站无法正常访问的简单临时的做法linux命令只读:

1、mount:
用于查看哪个模块输入只读linux命令只读,一般显示为:
/dev/hda1 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (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、如果发现有rolinux命令只读 , 就重新mount,或者umount以后再remount
3、umount /dev/nb1
如果发现有提示“device is busy”,找到是什么进程使得linux命令只读他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, sector 122194293 Buffer I/O error on device sda1, logical block 446493 lost page write due to I/O error on sda1
下面是整个处理全过程
[root@php5 ~]# fdisk -lu #第一步 :找出本地扇片所在的分区 。
Disk /dev/sda: 73.4 GB, 73407868928 bytes
255 heads, 63 sectors/track, 8924 cylinders, total 143374744 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 63 4096574 2048256 83 Linux
/dev/sda2 4096575 75778604 35841015 83 Linux
/dev/sda3 75778605 129034079 2662773783 Linux
/dev/sda4 129034080 143364059 7164990 5 Extended
/dev/sda5 129034143 139267484 5116671 83 Linux
/dev/sda6 139267548 143364059 2048256 82 Linux swap
[root@php5 ~]# tune2fs -l /dev/sda3 |grep "Block size" #找到block大小 。
Block size: 4096
(122194293-75778605)*512/4096 =528691 利用公式算出逻辑块地址
b = (int)((L-S)*512/B)
[root@php5 ~]# debugfs
debugfs 1.35 (28-Feb-2004)
debugfs: open /deb/sda3
/deb/sda3: No such file or directory while opening filesystem
debugfs: open /dev/sda3
debugfs: icheck 582391
Block Inode number
582391 277584
debugfs: ncheck 277584
Inode Pathname
277584 /users/inn.net.cn/data/upload/download/innshow004.rar
debugfs: quit
[root@php5 ~]#dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=582391 #找到这个快的文件之后,需要做好备份,linux命令只读我们强制把它设置为0字节 。
[root@php5 ~]# sync
linux文件只读模式怎么解除解除Linux文件只读模式linux命令只读的方法有以下几种linux命令只读:
1. 使用chmod命令linux命令只读:chmodw 文件名
2. 使用vim编辑器linux命令只读:在vim编辑器中输入: set w
3. 使用chattr命令:chattr -i 文件名
4. 使用mount命令:mount -o remount, rw 文件所在linux命令只读的目录
linux root用户修改权限说是只读文件系统,怎么办?linux root用户修改权限说是只读文件系统是设置错误造成的,解决方法为:
1、打开linux系统,建立一个目录,文件夹创建命令mkdir ceshi 。
2、查看一下这个文件夹的权限 。
3、现在这个ceshi的文件的用户组linuxadmin,修改用户组的权限 chgrprootceshi 。
4、chmod-Ra w 修改ceshi文件夹的权限 。
5、chown 改变文件夹所有者,用chown该所属者为bin 。
6、查看权限的方式可以借助【man】 chgrp、chown、chmod 查看帮助文档 。
注意事项:
Linux与其他操作系统相比,具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪 , 灵活性高,功能强大,成本低 。
linux中文件拥有者去掉执行权限 , 其他用户加上读写权限,同组用户加上只读权限命令是什么可以使用chmodfilename改变文件的权限linux命令只读,可以使用chownfilename改变文件所属的用户和组 。
Linux下权限有三种 , 用户权限 , 组权限,其他用户 。可以使用ls-lfilename会列出改文件的权限 。分别用rwx表示读,写和可执行三种权限,
对于目录linux命令只读:
r:可以对此目录执行ls以列出内部的所有文件;
w:可以在此目录创建文件;
x:可以使用cd切换进次目录 , 也可以使用ls-l查看文件的详细内容;
对于文件:
r:可读,可以使用类似cat等命令查看文件内容;
w:可写,可以编辑或删除此文件;
x:可执行,eXecutable,可以命令提示符下当做命令提交给内核运行 。
扩展资料
【linux命令只读 linux以只读方式打开文件】linux文件权限命令
属性为rwx,则对应的数字为4 2 1=7
属性为rw-,则对应的数字为4 2=6
属性为r-x,则对应的数字为4 1=5
d表示文件的类型,这个文件的类型为目录
rwx表示文件拥有者的权限是读写执行,
r-x表示与拥有者同组的用户权限为读取和执行
r-x表示其他用户的权限也为读取和执行
参考资料来源:百度百科—linux命令
linux如何给文件设置只读权限可以用chmod 命令修改文件权限 。
chmod命令是非常重要的 , 用于改变文件或目录的访问权限 。用户用它控制文件或目录的访问权限 。该命令有两种用法 。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法 。
用法:
文字设定法:
chmod [who] [| - | =] [mode] 文件名?
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)” , 即文件或目录的所有者 。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户 。
o 表示“其他(others)用户” 。
a 表示“所有(all)用户” 。它是系统默认值 。
操作符号可以是:
添加某个权限 。
- 取消某个权限 。
= 赋予给定权限并取消其他所有权限(如果有的话) 。
设置mode所表示的权限可用下述字母的任意组合:
r 可读 。
w 可写 。
x 可执行 。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性 。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主 。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位 。
t 保存程序的文本到交换设备上 。
u 与文件属主拥有一样的权限 。
g 与和文件属主同组的用户拥有一样的权限 。
o 与其他用户拥有一样的权限 。
文件名:以空格分开的要改变权限的文件列表,支持通配符 。
在一个命令行中可给出多个权限方式,其间用逗号隔开 。例如:chmod g r,o r example 使同组和其他用户对文件example 有读权限 。
数字设定法:
数字表示的属性的含义:
0表示没有权限
1表示可执行权限
2表示可写权限
4表示可读权限
然后将其相加 。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)
如果想让某个文件的属主有“读/写”二种权限,需要把4(可读) 2(可写)=6(读/写)
linux命令只读的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于linux以只读方式打开文件、linux命令只读的信息别忘了在本站进行查找喔 。

    推荐阅读