apache /home/user/public_html

Собственно вопрос в том как грамотно настроить чтобы не сбрасывало права в 700 /home/user
И нормально ли ставить на /home/user 750 и добавлять apache в группу user?
Где-то прочитал что можно поставить update=off в .calculate/ini.env,
но может это не слишком правильный способ?

Если грамотно, то используйте acl:

# Для начала добавьте параметр acl к устройству монтируемому к /home в fstab, и перемонтируйте.
# Далее, для удобства, создайте отдельную группу, которой позволите доступ в хомяки, а также в нее добавите индейца
groupadd -r home_ro
# теперь зададим нужные права на какталоги
setfacl -m 'd:g:home_ro:X,g:home_ro:X' /home/user
setfacl -Rm 'd:g:home_ro:rwX,g:home_ro:rwX' /home/user/public_html
# и добавим индейца в нужную группу:
usermod -aG home_ro apache

Огромное спасибо! то что нужно. Пробел у меня с этими факлами. Теперь понимаю что зря оставлял без внимания, не так все сложно как виделось. Осталось только попрактиковаться.

Путанные мысли в слух: Утилиты calculate навряд ли делают что-то особо чудесное. Таким же образом пропишут права. Но нужно их средствами создать группу и т.д., т.е. нужно осваивать их. Но пока некогда, как всегда. Для домашнего десктопа-сервера и так сойдет. Возможно для апача просто не реализована эта фишка как для самбы в некоторых дистрибутивах, что добавляешь юзера в группу “шароправообладающие” и можно шарить свои папки. Но и там проблемы когда такие закрученные права как rwx------.

Оставлю тут мини-HOWTO на будущее для себя и других,
и буду надеяться очередной emerge не снесет такие красивые права

 # tune2fs -l /dev/sda1 | grep acl
 Default mount options:    user_xattr acl
 # groupadd -r home_ro
 Создание системной группы
 # gpasswd -a apache home_ro
 Добавление пользователя apache в группу home_ro
 # getfacl /home/serg
 getfacl: Removing leading '/' from absolute path names
  # file: home/serg
  # owner: serg
  # group: serg
 user::rwx
 group::---
 other::---
 # setfacl -m 'd:g:home_ro:X,g:home_ro:X' /home/serg
 # getfacl /home/serg
 getfacl: Removing leading '/' from absolute path names
  # file: home/serg
  # owner: serg
  # group: serg
 user::rwx
 group::---
 group:home_ro:--x
 mask::--x
 other::---
 default:user::rwx
 default:group::---
 default:group:home_ro:--x
 default:mask::--x
 default:other::---
 # setfacl -Rm 'd:g:home_ro:rwX,g:home_ro:rwX' /home/serg/public_html
 # getfacl /home/serg/public_html
 getfacl: Removing leading '/' from absolute path names
  # file: home/serg/public_html
  # owner: serg
  # group: serg
 user::rwx
 group::r-x
 group:home_ro:rwx
 mask::rwx
 other::r-x
 default:user::rwx
 default:group::r-x
 default:group:home_ro:rwx
 default:mask::rwx
 default:other::r-x
 # /etc/init.d/apache2 restart

К сожалению всетаки выбивает:

 # getfacl /home/serg/
getfacl: Removing leading '/' from absolute path names
 # file: home/serg/
 # owner: serg
 # group: serg
user::rwx
group::---
group:home_ro:--x               #effective:---
mask::---
other::---
default:user::rwx
default:group::---
default:group:home_ro:--x
default:mask::--x
default:other::---

как бороться с этим?

Пардон, надо было
setfacl -Rm 'd:g:home_ro:rwX,g:home_ro:rwX' /home/user/public_html
с ключом -R, я его забыл указать. Уже исправил выше.

К сожалению всетаки выбивает:

как бороться с этим?

А что именно не так?

Спасибо, тоже исправил в своем HOWTO.
Не так то, что что-то выбивает права в исходную, и как указано в коменте #effective:— и доступа снова нет. Впихнул эти две команды на права в скриптик, буду периодически пускать, пока не разберусь что именно вызывает такой эффект.
Я довольно часто emerge вызываю и как понял что права перезаписываются гдето в этом процессе.
update=off в .calculate/ini.env стоит но не помогает.
тыркаюсь потихоньку в эти cl-утилиты но пока непонятно с какой стороны заходить