AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 491105
Accepted
bart van deenen
bart van deenen
Asked: 2018-12-28 02:58:56 +0800 CST2018-12-28 02:58:56 +0800 CST 2018-12-28 02:58:56 +0800 CST

恢复 /usr 下更改的文件所有权,Void Linux

  • 772

失去理智后,我chown -R root:root /usr在 Void Linux 系统上做了

ls -lR /usr有人能把 Void 系统上的结果邮寄给我吗?我将检查更改,让一切再次正常运行,并在此问题中发布我的发现。

根据 msp9011 的回复,并意识到我需要 xfce4、networkmanager 系统的信息,请从以下位置发布结果:

find /usr/ \(  -perm -4000 \)  -exec ls -l {} +

和

find /usr/ \( ! -group root \)  -exec ls -l {} +

你能在某处分享结果吗?

PS 只是重新安装 Void 很痛苦,因为我正在进行长途旅行,而且我的互联网访问通常是通过蜂窝网络或糟糕的 wifi 进行的。

chown void-linux
  • 3 3 个回答
  • 169 Views

3 个回答

  • Voted
  1. Duncaen
    2018-12-29T15:31:15+08:002018-12-29T15:31:15+08:00

    您可以使用 重新安装受影响的软件包,除非您指定两次xbps-install -f,否则它将保留配置文件。-f

     -f, --force
         Force downgrade installation (if package version in repos is less
         than installed version), or reinstallation (if package version in
         repos is the same) to the target PKG, overwriting regular package
         files and symlinks (if they have been modified) but preserving
         configuration files.  If -f is specified twice all files will be
         unpacked, even configuration files.
    

    xbps-pkgdb(1)能够检测包文件的许多问题,但遗憾的是目前不是所有者/模式,但这将是一个很好的添加功能。

    • 1
  2. Siva
    2018-12-28T03:24:54+08:002018-12-28T03:24:54+08:00

    希望这是你需要的,

    [root@localhost usr]# find /usr/ \(  ! -group root \)  -exec ls -l {} +
    -rwx--s--x. 1 root slocate   38464 Mar 12  2015 /usr/bin/locate
    -rwxr-sr-x. 1 root nobody   141384 Aug 31  2017 /usr/bin/ssh-agent
    ---s--x---. 1 root stapusr  183072 Jun 19  2018 /usr/bin/staprun
    -r-xr-sr-x. 1 root tty       15224 Jul 24  2015 /usr/bin/wall
    -rwxr-sr-x. 1 root tty       12016 Jan 26  2018 /usr/bin/write
    -rwx--s--x. 1 root utmp      17160 May  9  2018 /usr/lib64/vte/gnome-pty-helper
    -rwx--s--x. 1 root utmp       9808 Aug 18  2010 /usr/libexec/utempter/utempter
    -rwx--s--x. 1 root lock      15808 Aug 19  2010 /usr/sbin/lockdev
    -rwxr-sr-x. 1 root postdrop 189000 Mar 23  2017 /usr/sbin/postdrop
    -rwxr-sr-x. 1 root postdrop 217832 Mar 23  2017 /usr/sbin/postqueue
    -r-s--x---. 1 root apache    13984 Jun 19  2018 /usr/sbin/suexec
    
    /usr/libexec/utempter:
    total 12
    -rwx--s--x. 1 root utmp 9808 Aug 18  2010 utempter
    
    • 0
  3. Best Answer
    bart van deenen
    2018-12-30T06:50:44+08:002018-12-30T06:50:44+08:00

    我通过 Void live usb 棒恢复了权限!我做了find /usr -printf "0%m %u:%g %p\n" > permissions-all一个在 /usr 中生成具有所有权限的文件。然后从 borked install 启动,我使用了一个简单的 bash 脚本来恢复所有权限。xbps-install -f如果您的连接性很差,并且您想恢复系统的大部分内容(如 xfce4),那么这是有问题的。谢谢大家的思考,我学到了很多!

    /usr/permissions-all 的负责人

    0755 root:root /usr
    0755 root:root /usr/lib
    0755 root:root /usr/lib/libimobiledevice.so.6.0.0
    0777 root:root /usr/lib/libsoxr.so.0
    0777 root:root /usr/lib/libXvMCr600.so.1.0
    0777 root:root /usr/lib/libwebpmux.so.3
    0755 root:root /usr/lib/audit
    0755 root:root /usr/lib/audit/sotruss-lib.so
    0777 root:root /usr/lib/libfontenc.so.1
    0755 root:root /usr/lib/libvulkan_radeon.so
    0755 root:root /usr/lib/libthunarx-3.so.0.0.0
    0777 root:root /usr/lib/libturbojpeg.so.0
    

    脚本 restore-permissions.sh

    #!/bin/bash
    set -e
    while read p ug f
    do
        if [ -e "$f" ] ; then
            ug_=$(find "$f" -maxdepth 0 -printf "%u:%g")
            p_=$(find "$f" -maxdepth 0 -printf "0%m")
            if [ "$ug_" != "$ug"  ] ; then
                echo "$f wrong ug $ug_ should be $ug, fixing"
                chown $ug "$f"
            fi
            if [ "$p_" != "$p"  ] ; then
                echo "$f wrong perms $p_ should be $p, fixing"
                chmod $p "$f"
            fi
        fi
    done < permissions-all
    

    我已将我permissions-all的和恢复脚本添加到公共 google-drive 文件夹中,因此遇到相同问题的任何人都可以尝试。该文件来自最新的 void xfce4 live 磁盘。这里google-drive是数据。

    • 0

相关问题

  • 找不到包“fontconfig”

  • 如何更改当前目录、子目录和子目录的子目录中文件的所有权?

  • 如何在 x200 thinkpad 上为 Void Linux 安装网络驱动程序?

  • chown 不给我任何权利

  • 是否可以根据数字 UID 将文件 chown 给尚不存在的用户?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve