闯了大祸,根目录权限变成我自己了。

185 天前
 uuair

我的磁盘空间不够了,之前分区的时候没搞好,根目录给了 1.7T 一直闲置,为了下载一个 700 多 G 的文件,我简单的 mount 到了一个下载目录下,transmission 下载的时候报错说权限问题,我直接 chown -R uuair:www-data 了,我还纳闷,一个空目录,怎么会卡住了。。。结果 sudo 的时候发现错误,然后,./目录下大部分文件都不是 root 的了,尤其是/etc 下,所有的都是我了。

好了,现在怎么办?

第一:/home文件夹下有 3.2T 的文件,我没有其他的硬盘可以备份。

第二:我运行了 12 个 docker ,其中有几个配置了很久,可能我自己都记不清了,这部分怎么保留?

我使用了docker commit -p 然后 docker save -o ~/container-backup.tar container-backup的方法保存成 tar 文件了,但现在拷贝不出来

9417 次点击
所在节点    Ubuntu
50 条回复
uuair
184 天前
@feedcode #39

```
uuair@uu-ubu:/etc$ groups uuair
uuair : uuair adm cdrom sudo dip plugdev lpadmin lxd sambashare docker
```

我的 group 包括 uuari ,所以`vi /usr/share/polkit-1/rules.d/49-ubuntu-admin.rules`的时候:

```
polkit.addAdminRule(function(action, subject) {
return ["unix-group:sudo", "unix-group:uuair"];
```

然后 echo $$ 848784
`pkttyagent --process 848784`

```
uuair@uu-ubu:/etc$ pkexec chown root:root /etc/sudoer
pkexec must be setuid root
```
问题还是一样的。
liuliancao
184 天前
su 能进 root 吗 能进去就改回去看看
改的方式 搜索下别人导出来的权限备份(getfacl 导出来的文件,主要是常见的/bin,/usr/bin,/sbin 这几个目录) 然后改回去

如果进不去就插启动 u 盘 进 rescue 修复

还不行就把盘拔出来 找个网吧 整个 linux 虚拟机挂载以后用 setfacl 的方式修复下 然后虚拟机试下
liuliancao
184 天前
需要 sudo 的文件 需要 chmod u+s 你的文件 这个是 sudo 需要的标志位
➜ puppetmaster git:(main) ✗ ls -l /usr/bin/pkexec
-rwsr-xr-x 1 root root 26776 2023 年 2 月 1 日 /usr/bin/pkexec
➜ puppetmaster git:(main) ✗ chmod
➜ puppetmaster git:(main) ✗ getfacl /usr/bin/pkexec
getfacl: Removing leading '/' from absolute path names
# file: usr/bin/pkexec
# owner: root
# group: root
# flags: s--
user::rwx
group::r-x
other::r-x
uuair
184 天前
@liuliancao #42 我就是没法 sudo 啊。。。因为/etc 目录不是 root 的了,所以只要 sudo 就出现提示:
sudo: /etc/sudo.conf is owned by uid 1000, should be 0
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit s
liuliancao
184 天前
@uuair sudo 肯定用不了了 我说的是 su
zlkent
183 天前
问下 gpt 吧,这里不好贴 gpt 的答案
uuair
183 天前
@liuliancao #45 不成的,都没有 root 权限了
su: Authentication failure

我准备 live cd 了。
yc8332
183 天前
用 root 登录看看行不行,不行就挂到另外的系统上搞,只要数据没删都能搞回来。
julyclyde
182 天前
老老实实重装吧
su/sudo 丢失 setuid 之后,在 ubuntu 这种默认没开 root 用户的系统上你基本上没办法获得 root 权限
uuair
176 天前
我现在不记得 root 的用户了,所以 root 登陆不上。
回复模式变成只读,也就是 rw single init=/bin/bash 修改后,机器黑屏。。。。
live cd 的 u 盘也无法启动,估计是 U 盘太新了,容量太大不被支持。。。
好烦啊。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1095187

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX