Jan 14, 2013 10:03
Ітак, маємо необхідність обмежувати розмір каталогу, причому задача стоїть обмежити саме розмір даного каталогу, а не заквотувати розмір дискогвого простору для конкретного користувача (хуйово спроектований хостінг-сервер, я казав, шо ступим на ці граблі, але кого це їбе, продовжуємо =))
І так, допустимо маємо каталог /home/site1/, необхідно його розмір обмежити, ну допустим до 10Мб. Ми поступимо таким чином - створимо ще одну ФС, у файлику і змонтуємо її в цей каталог. Надалі, при необхідності, ми зможемо міняти розмір ціїє ФС, тим самим надаючи необхідний об'єм для запису. Коротше почнем. Для початку створимо файл, в якому будемо тримати нашу ФС:
root@smartbackup /home # dd if=/dev/zero of=/home/fs/site1.img bs=1024 count=100000
Далі нам необхідно відформатувати даний файл:
root@smartbackup /home # mkfs.ext3 /home/fs/site1.img
Ок, файл готовий до використання, тепер змонтуємо його в потрібну директорію:
root@smartbackup /home # mount -o loop /home/fs/site1.img /home/site1
Все, тепер ми маємо можливість записати в диреторію /home/site1 не більше 10Мб інформації.
Якщо нам необхідно, щоб монтування відбувалось автоматично, одразу після перезагрузки, нам потрібно відредагувати /etc/fstab таким чином:
/home/fs/site1.img /home/site1 ext3 loop 1 2
Припустимо нам необхідно змінити максимальний розмір папки до 15Мб, поступаємо слідуючим чином: обов'язково розмонтуємо диск, перевіримо його на помилки і виправимо їх, змінимо його розмір і знову примонтуємо. Робим:
root@smartbackup /home # umount /home/fs/site1.img
root@smartbackup /home # e2fsck -f /home/fs/site1.img
root@smartbackup /home # resize2fs -p /home/fs/site1.img 15M
root@smartbackup /home # mount -o loop /home/fs/site1.img /home/site1
І продовжуємо працювати. Все просто =)
P.S. Дітки, не робіть хуйні!!!1. Вказаний вище спосіб є категорично не правильним підходом до квотування дискового простору!!!1. Читайте документацію і проектуйте свої серваки првильно.
linux,
setup