
























这是一个创建于 557 天前的主题,其中的信息可能已经有所发展或是发生改变。
我的磁盘空间不够了,之前分区的时候没搞好,根目录给了 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 文件了,但现在拷贝不出来
第 1 条附言 · 2024 年 12 月 5 日
不是云服务,就是一台 GEN7 的服务器,我没有富裕的硬盘备份,3.2T 的资料,我把 docker 一个一个的备份成 tar 文件了。。。有一个目录不知道为什么,变成了用户 911 的,组也是 911 ,但我没这个用户。。。
第 2 条附言 · 2024 年 12 月 6 日
我无法 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 set
使用 pkttyagent --process 的方法始终不成:
pkexec chown root:root /etc/sudoer
pkexec must be setuid root
我甚至都无法 mount 一个移动硬盘进来了
uuair@:~$ mount /dev/sde1 ~/mydisk
mount: /home/uuair/mydisk: must be superuser to use mount.
dmesg(1) may have more information after failed mount system call.
mount: (hint) your fstab has been modified, but systemd still uses
the old version; use 'systemctl daemon-reload' to reload.
现在我在用 sftp ,先把 docker 拷贝下来。
1 FoxRiverMan 2024 年 12 月 5 日先恢复关键系统目录的所有权吧 |
2 bthulu 2024 年 12 月 5 日这什么都不用干吧, 就算都是你的, root 用户照样能读写 |
3 Exxfire 2024 年 12 月 5 日不懂,直接权限还原回去会遇到什么问题? |
4 uuair 2024 年 12 月 5 日@FoxRiverMan #1 @Exxfire #3 还原权限怎么操作??我现在./99%的文件都不是 root 的了,我没法 sudo 啊。 |
5 adrianzhang 2024 年 12 月 5 日进 rescue ,mount 后,把别的同版本 OS 的关键文件都 rsync 过去。 |
6 IvanLi127 2024 年 12 月 5 日没办法切换到 root 用户?实在不行重启到单用户模式进去改应该可以。 |
7 orioleq 2024 年 12 月 5 日 via iPhone记得我知乎看过一个热帖就是根目录权限被改掉了,好像挺难恢复的 |
8 uuair 2024 年 12 月 5 日我找不到第二台电脑做这事,而且一个一个的改看起来也不现实啊。。。能不能覆盖安装一下?保留/home 不动,直接安装,是不是就可以了? |
9 Belmode 2024 年 12 月 5 日少侠好武功 |
10 kneo 2024 年 12 月 5 日 via Android用你自己的用户把 sudo.conf 改成 root 不行? |
11 swLoXtOtd89pGg8t 2024 年 12 月 5 日找个 liveCD 进去,把 docker tar 包放 home ,home 里面的文件应该是同一用户的,-R 直接改 owner 就行。 对于 docker 的配置,在/var/lib/docker/containers/*/config.v2.json 可以拿到相关信息。 至于系统本身是没救了,尤其是 etc ,不同文件对应不同 owner 。 |
12 xuanbg 2024 年 12 月 5 日所以我直接用 root |
13 swLoXtOtd89pGg8t 2024 年 12 月 5 日如果 home 是单独的分区,重装时候不选择格式化 home 就行;如果不是,那就有些麻烦,怎么操作都有丢数据的风险,最好还是找个盘备份出来再动。 |
14 RobinHuuu 2024 年 12 月 5 日 via Android其实还可以救。用 livecd 或者恢复环境进去,chroot 方式重新安装 sudo 以及 su 的包。这样保证你能进正常系统用 sudo 和 su ,其他有权限问题的可执行文件用这种方式解决。普通文件有 sudo 后改下权限就行了,就是有点麻烦。 |
16 zgcwkj 2024 年 12 月 5 日用 dd 命令,把 home 打包一下。重装再还原(也许行 |
17 hukei 2024 年 12 月 5 日少侠好武功 |
19 keepfun 2024 年 12 月 5 日如果是云机器 可以申请 加硬盘 如果不能加 想办法 通过网络 把文件传出去 |
20 shylockhg 2024 年 12 月 5 日可以备份回滚 |
22 Geon97 2024 年 12 月 5 日chown -R 的威力如同 rm -rf |
23 iyiluo 2024 年 12 月 5 日先别重启,有个 docker-autocompose 应用,能把你正在跑的容器转成 docker-comopse.yml ,可以备份当前容器的各种配置,不过你的系统已经烂了,试试能不能把 autocompose 镜像拉下来,然后逐个备份容器生成 yml 文件 |
24 guo4224 2024 年 12 月 5 日找个虚拟机,备份一下权限,然后 livecd 进去恢复权限试试? |
25 konakona 2024 年 12 月 5 日少侠好功力。 权限乱了以后其实更难恢复,听上去是 centOS ,更严,2333 |
26 elechi 2024 年 12 月 5 日拿个 u 盘做个 livecd 启动,然后把磁盘挂载到 livecd 系统中,改文件权限 |
27 smallparking 2024 年 12 月 5 日 via Androidu 盘启动 |
28 la2la 2024 年 12 月 5 日太麻烦了 |
29 life90 2024 年 12 月 5 日我倒有个傻瓜点的方法。不嫌麻烦的话。 |
30 0x5c0f 2024 年 12 月 5 日一般系统提供的包管理软件,以 rpm 为例 |
31 yyyb 2024 年 12 月 5 日没 rm -rf 就不叫事儿 |
34 inframe 2024 年 12 月 5 日全部改成 777 ,文件拖出来,重装系统 |
35 zuotun 2024 年 12 月 5 日还好只是 chown ,如果是 chmod -R 那就惨了得对着具体文件恢复,你这样找个正常的相同系统直接对着恢复就行。恢复必须要 liveCD 环境,随便找个闲置的存储设备插进去启动就行,另外 sudo 有问题不代表就不能用了,这只是一个软件包没有也能切到 root 。 |
37 cybort 2024 年 12 月 5 日 via Android如果所有者都是你,那不需要 sudo 啊,直接 chown 改 |
38 COW 2024 年 12 月 5 日 via Android#4 根据错误提示,先用 su 拿到 root ,然后用 chmod 4755 和 chown 把这个文件改一下,把 sudo 问题解决了先。 |
39 feedcode 2024 年 12 月 6 日1. 把你自己的 group 加到 admin rules ,以 ubuntu 为例, 只有 sudo/admin group 才行 然后再 pkttyagent -p $(echo $$) |pkexec chown root /path/to/file 2. 如果你在 docker 组里 3. 重启时候编辑 Grub menu ,append to kernel command line |
40 uuair 2024 年 12 月 6 日@cybort #37 怎么可能。。。。 |
41 uuair 2024 年 12 月 6 日@feedcode #39 ``` 我的 group 包括 uuari ,所以`vi /usr/share/polkit-1/rules.d/49-ubuntu-admin.rules`的时候: ``` 然后 echo $$ 848784 ``` |
42 liuliancao 2024 年 12 月 6 日su 能进 root 吗 能进去就改回去看看 如果进不去就插启动 u 盘 进 rescue 修复 还不行就把盘拔出来 找个网吧 整个 linux 虚拟机挂载以后用 setfacl 的方式修复下 然后虚拟机试下 |
43 liuliancao 2024 年 12 月 6 日需要 sudo 的文件 需要 chmod u+s 你的文件 这个是 sudo 需要的标志位 |
44 uuair 2024 年 12 月 6 日@liuliancao #42 我就是没法 sudo 啊。。。因为/etc 目录不是 root 的了,所以只要 sudo 就出现提示: |
46 zlkent 2024 年 12 月 6 日问下 gpt 吧,这里不好贴 gpt 的答案 |
47 uuair 2024 年 12 月 6 日@liuliancao #45 不成的,都没有 root 权限了 我准备 live cd 了。 |
48 yc8332 2024 年 12 月 6 日用 root 登录看看行不行,不行就挂到另外的系统上搞,只要数据没删都能搞回来。 |
49 julyclyde 2024 年 12 月 7 日老老实实重装吧 |
50 uuair 2024 年 12 月 14 日我现在不记得 root 的用户了,所以 root 登陆不上。 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。