2

Реляционные базы данных обычно хранят свои данные в /var /lib / что-то. Пользователи находятся в / home (с данными в /var / www). Как я могу применить одну общую квоту дискового пространства для всех этих независимых программных систем (файловых систем, СУБД и т.д.)?

PS Вокруг меня спорят, насколько крутой SU. Давайте посмотрим, что у вас есть.

1 ответ1

3

Вы можете переместить файлы базы данных каждого пользователя в его домашнюю директорию, чтобы они учитывались в любой отслеживаемой квоте. Если /var и /home или в одной и той же файловой системе, вы можете сделать это с помощью жестких ссылок, поэтому нет необходимости даже останавливать msySQL, в противном случае перемещайте файлы в домашние каталоги и вставляйте символические ссылки обратно в `/var/lib/what '.

Для содержимого, доступного через Интернет, я в любом случае настраиваю сайты каждого пользователя в своих домашних каталогах (обычно в каталоге /home/<user>/public_html (с символической ссылкой на этот каталог /home/<user>/www как некоторые предпочитаю это). Таким образом, файлы находятся в том же месте, что и остальные их домашние каталоги, поэтому нет дополнительного места для подсчета.

В зависимости от того, как подсчитываются квоты, может возникнуть проблема с владением файлами. Например, если вы запускаете свой веб-сервер таким образом, что все работает как один пользователь (пользователи, nobody и www-data являются общими), любые файлы, созданные сценариями, доступными через Интернет, не будут принадлежать пользователю, поэтому, если это остановит их подсчет в их квоте вам будет не хватать некоторых вещей в ваших счетах. У меня есть сценарии каждого пользователя, запускаемые как они сами (через suPHP или phpSUexc для PHP), так что все в конечном итоге становится правильным, что означает, что это не проблема для сценариев, доступных через Интернет, и любого вывода, который они создают в файловой системе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .