chowning каждый домашний пользователь себе рекурсивно

Хорошо, поэтому у меня около 100 каталогов в моей домашней папке, каждая из которых принадлежит самому домашнему пользователю. Иногда мне приходится вручную заменять некоторые файлы как root, поэтому разрешения нарушаются, а некоторые файлы больше не принадлежат этому пользователю. Чтобы исправить это, мне всегда нужно использовать следующую команду в домашнем каталоге:

chown -R user:user user/ 

Теперь я смотрю на некоторые ярлыки, потому что я не могу сделать это для всех 100 пользователей.

Мне интересно, что будет сделано:

 chown -R *:* * 

2 Solutions collect form web for “chowning каждый домашний пользователь себе рекурсивно”

Полный ответ был бы

1) Открыть файл, например vi chown_homedirs

2) Вставьте следующий код

 #!/bin/bash cd /home && for h in * do chown -R "$h:$h" "$h"; done 

3) Сохраните файл

4) chmod +x chown_homedirs

5) запустить ./chown_homedirs

ПРИМЕЧАНИЕ. Если в каталогах пользователей есть пробелы, вам всегда нужно указывать расширение. Если вы не укажете, что расширение может потерпеть неудачу и привести вас к неожиданным результатам.

Вы можете использовать stat, чтобы получить права пользователя и группы на файл, а затем использовать их для обновления файлов, что-то вроде

 #!/bin/bash cd /home for file in * do user=$(stat -c %U "$file") group=$(stat -c %G "$file") echo chown -R "$user":"$group" "$file" done 

Это касается ситуации, когда каталог owner / group / не является одинаковым. Очевидно, удалите эхо, если вы проверите тесты для вас.

  • Как запретить изменять владельца модифицируемых файлов?
  • Изменить владельца собственного каталога
  • Почему «.» работать в chown?
  • Если chown может изменять группы, почему был создан chgrp?
  • Разрешить группе r / w в папке, принадлежащей конкретному пользователю
  • Как изменить владельца каталога
  • Переместить файл и сохранить владельца и режим в одной атомной операции
  • Должен ли владелец / usr быть root?
  • Как скрыть чужие каталоги от пользователя?
  • Изменено право собственности на весь os на root: root
  • как изменить разрешение файла / proc / self / pagemap.?
  • Linux и Unix - лучшая ОС в мире.