*Drive*- Здесь рулят padonki

*Drive* - Counter Strike Source
Текущее время: 28 мар 2024, 13:27

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: 17 фев 2010, 18:43 
Не в сети
padonki
Аватар пользователя

Зарегистрирован: 14 авг 2006, 20:43
Сообщений: 3750
Благодарил (а): 9 раз.
Поблагодарили: 96 раз.
Как известно, Linux - это многопользовательская операционная система.
Это значит, что на одном компьютере могут работать несколько человек
одновременно. Каждый из них имеет свою домашнюю директорию, которая
находятся в разделе /home. Многие администраторы для /home создают
отдельный раздел на жестком диске. Следовательно, что мы имеем? Есть
отдельный раздел диска фиксированного размера и есть несколько
пользователей, которые могут им пользоваться. Здесь возникает вопрос.

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


Установка дисковых квот.


Для того, чтобы проделать все нижеописанное, утилита quota должна быть
установлена на вашем компьютере. Бинарные пакеты существуют для всех
распространенных дистрибутивов.
В Debian-производных дистрибутивах установка с помощью утилиты apt-get
выглядит так:

$ sudo apt-get install quota


Все. Никаких дополнительных пакетов не требуется.

Теперь, как я уже упоминал выше, допустим, у нас есть папка /home,
смонтированная на отдельном разделе жесткого диска, скажем /dev/sda8,
размером 20Гб, и два пользователя - serhiy и nadiia с домашними
директориями /home/serhiy/ и /home/nadiia. И что я хочу сделать?
Правильно, ограничим пользователя nadiia всего 50 мегабайтами.
Приступим.

1. Загрузитесь в однопользовательский режим. Поскольку директория
/home будет перемонтирована, то мы должны застраховаться от того, что
другие пользователи могут потерять свои данные.

#init 1


(этого можно и не делать, если вы уверены, что за компьютером больше
никто кроме вас не работает)

2. Отредактируйте файл /etc/fstab/:

$sudo vi /etc/fstab/


добавив usrqouta к опциям раздела /home.
Вот так это выглядит у меня:

/dev/sda8 /home ext3 defaults,usrquota 0 2


3. Перемонтируйте раздел /home:

$ sudo mount -o remount /home


4. Создайте файлы aquota.user и/или aquota.group. Файлы должны быть
созданы в самой верхней директории раздела. В нашем случае это /home.

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

$ sudo touch /home/aquota.user
$ sudo chmod 600 /home/aquota.user


5. Разрешаем linux читать файл aquota.user. Это делается с помощью
команды quotackeck. Будьте готовы к тому, что будет выведена ошибка,
как показано ниже. Это связано с тем, что файл был создан вручную, а
не командами qouta. Также будет сказано об отсутствии файла для групп.
Ничего страшного в этом нет

$ sudo quotacheck -vagum
quotacheck: WARNING - Quotafile /home/aquota.user was probably truncated. Can't save quota settings...
quotacheck: Scanning /dev/sda8 [/home] quotacheck: Old group file not found. Usage will not be substracted.
done
quotacheck: Checked 5265 directories and 74403 files


6. Задайте квоты для пользователей, используя команду edquota

$sudo edquota -u nadiia


Эта команда запустит редактор, установленный по умолчанию (переменная
EDITOR) (в моем случае это редактор mc -mcedit):

Disk quotas for user nadiia (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sda8 16 0 0 5 0 0


(Если используемый по умолчанию редактор вам не нравится, всегда можно
его изменить, запустив в консоли export EDITOR=vi. Вместо vi запишите
удобный для вас редактор)

В приведенном выше файле:

Blocks : Место, используемое пользователем в блоках длиной 1kB.

inodes : Число используемых пользователем файлов

Soft Limit : Максимальное количество блоков/файлов, которое
пользователь может иметь на данном разделе. Если используется период
отсрочки (grace period), то вместо жесткого ограничения, пользователь
нарушивший данные требования, получит лишь сообщение об этом. Значение
0 отключает данную опцию.

Hard Limit : Максимальное количество блоков/файлов, которое
пользователь может иметь на данном разделе даже с установленным
периодом отсрочки. Это жесткое ограничение, которое пользователь не
может превысить.

Ограничим пользователя всего 50-ю мегабайтами (приблизительно).

Disk quotas for user nadiia (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sda8 16 50000 0 5 0 0


7. Теперь можно выйти из однопользовательского режима (если вы
работали в нем), набрав

#init 5


Все. Теперь пользователь nadiia не может превысить 50Mb.
Другие команды quota.

Изменяем период отсрочки:

$sudo edquota -t


Эта команда установит период отсрочки для всех пользователей. Период
отсрочки - это период, во время которого опция soft period будет лишь
предупреждать, но не ограничивать. Могут быть использованы секунды,
минуты, часы, дни, недели и месяцы (нужно вписать на английском языке
seconds, minutes, hours, days, weeks и months ) Так выглядит запуск
этой команды у меня:

Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/sda8 7days 7days


Редактирование квот для групп:

$sudo edquota -g


Регулярная проверка квот:

Полезно регулярно выполнять quotacheck. Это можно реализовать, добавив
задание в файл crontab

0 3 * * 0 /sbin/quotacheck -vagu


(частоту выполнения задания можно выставить, используя синтаксис cron)
Отчет об квотах:

Команда repquota показывает суммарный отчет по квотам на файловой
системе. У меня отчет выглядит следующим образом:

$ sudo repquota /home


# Report for user quotas on device /dev/sda8 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace root -- 131312 0 0 15 0 0 serhiy -- 18774192 0 0 79512 0 0 sshd -- 14512 0 0 137 0 0 nadiia -- 16 50000 0 5 0 0

_________________
Моя характеристика с детского сада: Хорошо кушает, спит, гуляет! Прошло много лет, ничего не изменилось.
Изображение


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти: