Внезапно изменено владение файлами в соответствии с / usr, пустота Linux

Эти даты лексикографически и хронологически сортируются одинаково, так что это всего лишь вопрос лексического сравнения:

awk '$2 < "2013/12/03"'
1
27.12.2018, 14:04
3 ответа

Я восстановил разрешения с помощью флешки Void live! Я сделал find /usr -printf "0%m %u:%g %p\n" > permissions-allдля создания файла со всеми разрешениями в /usr. Затем, загрузившись с установленной установки, я использовал простой скрипт bash для восстановления всех разрешений. xbps-install -fпроблематичен, если у вас очень плохое подключение и вы хотите восстановить большие части вашей системы, такие как xfce4. Спасибо всем за размышления, и я многому научился!

глава /usr/разрешения -все

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

восстановление скрипта -разрешения.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 -, чтобы любой, у кого возникла такая же проблема, мог попробовать его. Файл с самого последнего живого диска void xfce4. Здесь google -диск — это данные.

0
27.01.2020, 23:31

Надеюсь, это то, что вам нужно,

[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
27.01.2020, 23:31

Вы можете просто переустановить затронутые пакеты, используя 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
27.01.2020, 23:31

Теги

Похожие вопросы