CentOS权限系统如何恢复?CentOS权限系统恢复方法

时间:2021-05-25

有时候手贱不小心给chmod -R 777 / 了,这下系统就瘫痪了~怎么办呢?? 往下看吧

首先你必须准备一台和故障机器一样的系统,比如可以在虚拟机中安装一套一样版本的linux

在新系统中创建一个 waynerQiu.c 程序,内容如下

#include <sys/stat.h>

#include <ftw.h>

intlist(constchar*name,conststructstat *status,inttype)

{

if(type == FTW_NS)

return0;

printf("%s 0%3o\n", name, status->st_mode & 07777);

return0;

}

intmain(intargc,char*argv[])

{

if(argc == 1)

ftw(".", list, 1);

else

ftw(argv[1], list, 2);

exit(0);

}

然后编译该文件,并导出权限信息

#编译

gcc waynerQiu.c -o waynerQiu.com

#执行并导出相关目录的权限

./waynerQiu.com / >> waynerQiu.txt

将导出的文件copy至故障机器并执行下面的脚本

#!/bin/sh

if[ $# != 1 ]

then

echoUsage : $0 \<filename\>

exit

fi

PERMFILE=$1

cat$PERMFILE |whilereadLINE

do

FILE=`echo$LINE |awk'{print $1}'`

PERM=`echo$LINE |awk'{print $2}'`

chmod$PERM $FILE

#echo "chmod $PERM $FILE"

done

echo"change perm finished! "

可以将脚本保存为一个shell文件如:mygod.sh

然后执行

mygod.sh waynerQiu.txt

等程序跑完之后,重新启动系统,看看是不是已经恢复了?

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章