从这个任何恢复?须藤chmod 600。*


8

警告 - DO NOT运行上面所提到COMMAND

因此,我似乎在这里做了一些相当愚蠢的说明。我试图更改目录中几个文件的权限,所有这些文件都.以sudo / root身份开始读/写。

我尝试一次更改多个文件的尝试似乎在全局上做了非常可怕的事情。在目录中(不是在根目录下)时,我跑着走了sudo chmod 600 .*,现在我要从手机中发布此文件……此刻我仍然打开终端窗口,但是我很确定笔记本电脑是否可以睡觉我已经完全完成了。可笑的是,这意味着这个问题有些紧迫性。

哦,这似乎改变了我该猜到的地方附近该死的权限。我什至无法运行lsor cd ..命令。尝试cd /home/briancd ~给出错误bash: cd: /home/brian: Permission Denied以及尝试执行sudo命令只是说bash: /usr/bin/sudo: Permission Denied

我担心会重新启动,不知道是否有任何内置的东西可以从这种愚蠢的东西中恢复,但是我想我会先在这里问一下,然后再使情况变得更糟。我是一个非常新的Linux,因为我将其主要操作系统转换了下来,最近又提倡使用它,但是,哎呀,这有点刺耳。任何想法尝试尝试将不胜感激。

编辑:我想提供有关如何/在何处执行此命令的说明。它是从/.atx $任意目录执行的,但下面有更多详细信息。

以我的常规用户名登录后brian,我打开了/.atx一个包含三个配置类型纯文本文件的终端。每个文件名均以开头.。该目录/名称/文件不是通用软件包的任何部分,而只是我以编程方式移动的任意一组配置。文件包含一些SQL Server连接字符串信息,只希望它们被半遮蔽。


如果没有说明哪个目录你在,我猜你在里面/root没有/ ,当你这样做(从我看到你的问题),这意味着你的.*拍摄水珠/root文件夹本身(.以当前工作目录的引用)的所有文件/目录一起以前导点开头。不知道是否有办法从系统中更改它,但是您可能可以从活动USB启动并从那里撤消操作。但是,请不要仅仅将其视为100%的答案。
Sergiy Kolodyazhnyy

可以通过任何一种方式欣赏想法和反馈,并将根据情况进行考虑。这真的很愚蠢。我将使用从何处运行命令的详细信息来更新正文(这是为什么我在这里如此困惑,因为当时似乎并不危险的原因之一)
Brian Jorden


4
我将假设.*您的命令中的扩展为包括您所在..目录的父目录。例如,如果您位于,/home/brian则其权限/home将设置为600,而您将没有进入/home目录的权限。您能在开放式终端中执行吗ls -ld /*
Charles Green

2
您可以尝试恢复权限,请参见askubuntu.com/questions/43621/…。那里有几个脚本,但是我还发布了一种从恢复模式使用apt-get的方法(我更喜欢脚本),请选择。由于不能使用sudo,因此必须启动到恢复模式。wiki.ubuntu.com/RecoveryMode请务必重新安装/ RX(请参阅Wiki)
Panther

Answers:


3

哇,这里的恢复实际上比我预期的要平稳,并且SEEMS的一切都再次恢复了良好的状态。

非常感谢@CharlesGreen解释了该命令如何扩展目录。也要感谢@Panther提供有关某种相关问题进入恢复模式的信息。(如果你们俩都想重新分享您的评论作为答案,我会予以支持)

幸运的是,与链接的文章不同,此问题似乎很简单。似乎当我sudo chmod 600 .*仅从命令目录下的一个目录运行命令时,/.*UP部分扩展到了真正的根目录./从而更改了引起的所有其他权限的转移权限。

解决此问题的“方法”是启动进入恢复模式,将驱动器重新安装为读/写,然后转到主根目录(cd /),然后单击chmod +rx .。重新启动后,一切似乎恢复正常。

讲故事的道德,在其上执行命令.*至少有时会影响当前目录上方的目录。我本打算只影响以.... oops 开头的文件。

非常感谢大家的评论和帮助。


1
它可能影响了父目录,因为..匹配了.*glob。
Cthulhu

1
使用更坚固外壳的另一个原因。例如,默认情况下,zsh不包含.或未包含..在其中.*
muru 17-10-30

1

为此的“解决方案”是引导进入恢复模式,将驱动器重新安装为读/写,转到主根目录(cd /),然后转到chmod + rx ..重新引导后,所有内容看起来都将恢复为正常。

为了使将来的读者清楚一点,他们可能会将此问题作为公认的答案,因此该chmod +x解决方案作为一般解决方案存在一些问题。这个特定的问题似乎是用户的主目录,因此下面的一些担忧可能很少,但是如果将此问题应用于业务服务器并影响了多个用户或其他数据目录,则不建议使用该解决方案。

从积极的方面来说,此步骤将允许用户重新获得对文件的访问权限,以便可以将它们复制到备份介质上,以防止进一步丢失。归根结底,这是任何数据恢复工作的主要目标。

最大的问题是原始文件可能已应用了特定的权限,而现在这些权限已经丢失。某些程序-尤其是ssh-强制执行文件权限以进一步确保其安全性,如果+rw在其文件夹和文件上设置了权限,则这些程序将不起作用。

另一个问题是,如果/将其递归应用于根()文件夹,则可能会有其他文件打开,供系统上的任何人查看和修改。在服务器可能包含敏感数据(PCI /财务或医疗保健/ HIPAA信息)的业务环境中,这种访问可能导致审计结果和影响。

在个人/家庭环境中,这种恢复可能是完全可以接受的。请注意,某些事情可能会被悄悄破坏或发生怪异行为。

在业务环境中,可以使用这种恢复来重新获得对数据的访问,但是最终应通过重新安装服务器并从备份中恢复来解决任何此类重大变化。

您确实有当前备份,对吗?;-)


1
继续前进并进行投票,因为这里有一些普遍有用的建议/信息。在我的特殊情况下,我很幸运,只有被更改的权限直接存在于其中,/并且没有递归地级联到任何其他目录中。还值得注意的是,这只是放在我的个人笔记本电脑上,尽管我可能丢失了一天的工作(尚未执行git push),但是重新安装与“用户”相关的文件将是一个巨大的麻烦和烦恼应用程序。我通常都会同意,如果它是任何类型的服务器,那么只需花费较少的时间和精力即可擦除/重建。
Brian Jorden
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.