<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://megapuper.ru/index.php?action=history&amp;feed=atom&amp;title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82</id>
	<title>Proftpd. Настройка квот - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://megapuper.ru/index.php?action=history&amp;feed=atom&amp;title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82"/>
	<link rel="alternate" type="text/html" href="http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;action=history"/>
	<updated>2026-04-30T16:29:57Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158804&amp;oldid=prev</id>
		<title>Root в 11:47, 17 сентября 2019</title>
		<link rel="alternate" type="text/html" href="http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158804&amp;oldid=prev"/>
		<updated>2019-09-17T11:47:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Версия 11:47, 17 сентября 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Строка 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;После настройки Proftpd проверяем что модуль квот &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;присутствует и &lt;/del&gt;добавляем такой блок в &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;конфиг&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;После настройки Proftpd проверяем&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, &lt;/ins&gt;что модуль квот &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;активирован в modules.conf&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; LoadModule mod_quotatab.c&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;И &lt;/ins&gt;добавляем такой блок в &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;proftpd.conf&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;IfModule mod_quotatab.c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;IfModule mod_quotatab.c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; QuotaEngine on&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; QuotaEngine on&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Root</name></author>
		
	</entry>
	<entry>
		<id>http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158803&amp;oldid=prev</id>
		<title>Root в 11:46, 17 сентября 2019</title>
		<link rel="alternate" type="text/html" href="http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158803&amp;oldid=prev"/>
		<updated>2019-09-17T11:46:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Версия 11:46, 17 сентября 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Строка 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;После настройки Proftpd проверяем что модуль квот присутствует&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;, &lt;/del&gt;добавляем такой блок в конфиг &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;и рестартим proftpd&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;После настройки Proftpd проверяем что модуль квот присутствует &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;и &lt;/ins&gt;добавляем такой блок в конфиг&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;IfModule mod_quotatab.c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; &amp;lt;IfModule mod_quotatab.c&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; QuotaEngine on&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; QuotaEngine on&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Root</name></author>
		
	</entry>
	<entry>
		<id>http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158802&amp;oldid=prev</id>
		<title>Root: Новая страница: «После настройки Proftpd проверяем что модуль квот присутствует, добавляем такой блок в конф…»</title>
		<link rel="alternate" type="text/html" href="http://megapuper.ru/index.php?title=Proftpd._%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BA%D0%B2%D0%BE%D1%82&amp;diff=158802&amp;oldid=prev"/>
		<updated>2019-09-17T11:45:22Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «После настройки Proftpd проверяем что модуль квот присутствует, добавляем такой блок в конф…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;После настройки Proftpd проверяем что модуль квот присутствует, добавляем такой блок в конфиг и рестартим proftpd&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule mod_quotatab.c&amp;gt;&lt;br /&gt;
 QuotaEngine on&lt;br /&gt;
 QuotaLog /var/log/proftpd/quota.log&lt;br /&gt;
 QuotaDisplayUnits Mb&lt;br /&gt;
 QuotaOptions ScanOnLogin&lt;br /&gt;
 QuotaShowQuotas on&lt;br /&gt;
 QuotaLimitTable file:/etc/proftpd/quota/ftpquota.limittab&lt;br /&gt;
 QuotaTallyTable file:/etc/proftpd/quota/ftpquota.tallytab&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Создаём базы для лимитов и даём права&lt;br /&gt;
 # cd /etc/proftpd/quota&lt;br /&gt;
 # ftpquota --create-table --type=limit&lt;br /&gt;
 # ftpquota --create-table --type=tally&lt;br /&gt;
 # chown proftpd.nogroup ftpquota*&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Добавляем квоту в 10 мегабайт для пользователя ftpuser, рестартим сервер и проверяем&lt;br /&gt;
 # ftpquota --add-record --type=limit --quota-type=user --name=ftpuser --bytes-upload=10 --units=Mb&lt;br /&gt;
&lt;br /&gt;
В proftpd.log&lt;br /&gt;
 2019-09-17 11:27:12,519 ds01 proftpd[27732] 195.201.243.70 (5.187.65.81[5.187.65.81]): notice: user ftpuser: aborting transfer: Disk quota exceeded&lt;br /&gt;
&lt;br /&gt;
В quota.log&lt;br /&gt;
 2019-09-17 11:27:12,510 mod_quotatab/1.3.1[27732]: quotatab write(): limit exceeded, returning Disk quota exceeded&lt;br /&gt;
 2019-09-17 11:27:12,519 mod_quotatab/1.3.1[27732]: STOR: quota reached: used 10.00 of 10.00 upload Mb&lt;br /&gt;
 2019-09-17 11:27:12,521 mod_quotatab/1.3.1[27732]: STOR: quota reached: '1559912015.15913.wav' removed&lt;br /&gt;
&lt;br /&gt;
Прокатило. Заливка файла остановилась.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Текущие квоты можно посмотреть так&lt;br /&gt;
 # ftpquota --show-records --type=limit&lt;br /&gt;
 -------------------------------------------&lt;br /&gt;
  Name: ftpuser&lt;br /&gt;
  Quota Type: User&lt;br /&gt;
  Per Session: False&lt;br /&gt;
  Limit Type: Hard&lt;br /&gt;
    Uploaded bytes:	10485760.00&lt;br /&gt;
    Downloaded bytes:	unlimited&lt;br /&gt;
    Transferred bytes:	unlimited&lt;br /&gt;
    Uploaded files:	unlimited&lt;br /&gt;
    Downloaded files:	unlimited&lt;br /&gt;
    Transferred files:	unlimited&lt;/div&gt;</summary>
		<author><name>Root</name></author>
		
	</entry>
</feed>