当前位置: 首页 > 科技观察

为什么Linux允许用户删除根目录?如果删除它会怎样?

时间:2023-03-20 01:35:24 科技观察

为什么Linux允许用户删除根目录?这个问题似乎不是一个有吸引力的话题。很多学习Linux的朋友可能没有意识到这个问题。对于linux这个精巧的系统,很多危险的命令都做了一些防范,但是为什么最危险的命令却没有禁止执行呢!今天有朋友突然问我这个问题,我一时答不上来。大多数情况下,我们谁都不会去执行这个命令,这会破坏我们的操作系统,但是这种情况是比较容易发生的,那么这个命令之所以能够被执行,是偶然的吗?在一些社区搜索后,终于在一个网站上看到了BenN的回答。他的回答如下:以root身份登录,或使用sudo,本质上是对机器说:“我知道我在做什么。”阻止人们做可疑的事情通常也会阻止他们做聪明的事情。此外,允许用户对根目录进行操作还有一个很好的理由:彻底删除操作系统和文件系统以退役计算机。(危险!在某些UEFI系统上,rm-rf/也会损害物理机。)显然,人们不小心执行了此命令,因此它添加了安全功能。rm-rf/在大多数系统上不执行任何操作,还提供-no-preserve-root,并且您不能无意中键入它。这也有助于防止编写糟糕但意图良好的shell脚本。意思是如果不指定参数--no-preserve-root,GNUrm将拒绝执行该命令,只输入rm-rf/不会执行删除根目录下的文件。小E在Ubuntu上进行了测试,测试结果如下:我执行了rm-rf/*结果如下。我正在疯狂删除系统文件,但一段时间后没有任何反应。我按Ctrl+C停止。页面如下。仍然可以出现输入框但是有些命令不能用,但是可以随意切换目录,也就是说有些系统文件是不能删除的。好像还是可以执行一些相关的命令,所以正如BenN所说,当你用root用户登录,或者使用sudo使用这个命令的时候,就是在对系统说“我知道我能做什么,我知道我做什么。”或者你也可以认为Linux在设计这个危险命令的时候并没有阻止它,因为当我想停用我的电脑时,我删除了我电脑的文件。所以一般在使用Linux的时候,一般不要使用权限过大的用户。对于一些经常需要操作的目录,可以使用root用户设置权限为777,或者将你经常使用的用户加入root用户组等,也很方便。也可以防止一些新手因为误操作导致系统崩溃。