Как изменить права доступа к файлу с неизвестным владельцем и группой?

Вопрос или проблема

Я изменил права доступа к директории рекурсивно, но несколько файлов остались без изменений, поскольку у них неизвестный владелец и группа:

sudo chmod -R g+r /home/user/.local/share/waydroid/data/
ls -l /home/user/.local/share/waydroid/data/data/android.ext.services/
ls: невозможно получить доступ к '/home/user/.local/share/waydroid/data/data/android.ext.services/cache': Отказано в доступе
ls: невозможно получить доступ к '/home/user/.local/share/waydroid/data/data/android.ext.services/code_cache': Отказано в доступе
всего 0
d????????? ? ? ? ?            ? cache
d????????? ? ? ? ?            ? code_cache

rsync не может прочитать эти файлы с неизвестными владельцами:

rsync: [sender] readlink_stat("/home/user/.local/share/waydroid/data/user_de/0/org.lineageos.overlay.accent.red/cache") не удалось: Отказано в доступе (13)

Проверьте эту тему https://serverfault.com/q/65616. В ней обсуждается, что может вызвать d????????? ? ?

Ответ или решение

Для изменения прав доступа к файлам с неизвестными владельцем и группой необходимо предпринять несколько шагов. Проблема с отсутствием информации о владельце и группе, как правило, возникает в результате поврежденной файловой системы или если файлы были созданы или перемещены с другой системой, что не совместимо с текущей.

1. Проверка файловой системы

Первым делом стоит проверить, нет ли ошибок в файловой системе. Для этого можно использовать утилиту fsck. Однако, помните, что эту команду необходимо запускать для отключенных разделов. Например:

sudo umount /dev/sdXY  # Замените sdXY на ваш раздел
sudo fsck /dev/sdXY

После завершения проверки и исправления ошибок, можно попробовать получить доступ к файлам снова.

2. Изменение владельца и группы

Если проблема в том, что файлы действительно не имеют владельца и группы (то есть отображаются как d?????????), вам нужно использовать команду chown с ключом -hR, чтобы установить владельца и группу для всех файлов и подкаталогов:

sudo chown -R user:user /home/user/.local/share/waydroid/data/

Здесь user:user — это ваш пользователь и группа, которые должны быть установлены для этих файлов.

3. Изменение прав доступа

После того как вы установили владельца и группу, можно снова изменить права доступа, как вы делали ранее:

sudo chmod -R g+r /home/user/.local/share/waydroid/data/

4. Проверка текущих прав доступа

Чтобы удостовериться, что права доступа были изменены корректно, вы можете использовать следующее:

ls -l /home/user/.local/share/waydroid/data/

5. Дополнительные шаги (если необходимо)

Если файлы все еще отображаются как d?????????, возможно, что они повреждены или не могут быть прочитаны. Попробуйте следующее:

  • Используйте команду stat для получения дополнительной информации о файлах:

    stat /home/user/.local/share/waydroid/data/data/android.ext.services/cache
  • Если не удается восстановить доступ с помощью fsck, возможно, потребуется восстановить файлы из резервной копии (если она есть) или удалить их, если они не критичны для системы.

Эти шаги должны помочь вам восстановить доступ к файлам и изменить их права доступа. Если проблема сохраняется, стоит рассмотреть возможность получения профессиональной помощи в восстановлении данных.

Оцените материал
Добавить комментарий

Капча загружается...