Portál AbcLinuxu, 6. května 2025 23:04
# User quotas
# ===========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on
SQLNamedQuery get-quota-limit SELECT "name, quota_type, per_session, limit_type, bytes_in_avail, bytes_out_avail, bytes_xfer_avail, files_in_avail, files_out_avail, files_xfer_avail FROM ftpquotalimits WHERE name = '%{0}' AND quota_type = '%{1}'"
SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, files_out_used, files_xfer_used FROM ftpquotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"
SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used = files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name = '%{6}' AND quota_type = '%{7}'" ftpquotatallies
SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies
QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
RootLogin off
RequireValidShell off
SQLNamedQuery gettally SELECT "ROUND((bytes_in_used/1048576),2) FROM ftpquotatallies WHERE name='%u'"
SQLNamedQuery getlimit SELECT "ROUND((bytes_in_avail/1048576),2) FROM ftpquotalimits WHERE name='%u'"
SQLNamedQuery getfree SELECT "ROUND(((ftpquotalimits.bytes_in_avail-ftpquotatallies.bytes_in_used)/1048576),2) FROM ftpquotalimits,ftpquotatallies WHERE ftpquotalimits.name = '%u' AND ftpquotatallies.name = '%u'"
SQLShowInfo LIST "226" "Used %{gettally}MB from %{getlimit}MB. You have %{getfree}MB available space."
Takže, jak jsem předpokládal. Někde jsem vylovil backup s etchem, provedl jsem upgrade na lenny, kde to skočilo automaticky na lenny9 (hláška o volném místě kaput), dále jsem provedl downgrade na lenny4, hláška o volném místě byla ok. Poté jsem provedl upgrade na lenny5 a hláška o volném místu kaput. Takže to dělají změny v lenny5.
Dále jsem provedl upgrade na squeeze a stále je to rozbité.
Zkusil jsem si zkompilovat vlastní verzi ze zdrojáků, stejně, jako popisuji zde : ProFTPD + MySQL + Quota + šifrování.
Jen teda s tím rozdílem, že kompiluji bez "mod_sftp_pam" a "mod_vroot" a je potřeba nainstalovat navíc ještě tyto knihovny : unixodbc-dev, libsqlite3-dev, libpqxx-dev, libssl-dev
Takže takto :
wget -c ftp://mirror.wrpn.net/proftpd/distrib/source/proftpd-1.3.3g.tar.bz2 tar xvfj proftpd-1.3.3g.tar.bz2 cd proftpd-1.3.3g
./configure '--prefix=/usr' '--with-includes=/usr/include/postgresql:/usr/include/mysql' '--mandir=/usr/share/man' '--sysconfdir=/etc/proftpd' '--localstatedir=/var/run' '--libexecdir=/usr/lib/proftpd' '--enable-sendfile' '--enable-facl' '--enable-dso' '--enable-autoshadow' '--enable-ctrls' '--with-modules=mod_readme' '--enable-ipv6' '--enable-nls' '--build' 'i486-linux-gnu' '--with-shared=mod_unique_id:mod_site_misc:mod_load:mod_ban:mod_quotatab:mod_sql:mod_sql_mysql:mod_sql_postgres:mod_sql_sqlite:mod_sql_odbc:mod_dynmasq:mod_quotatab_sql:mod_ldap:mod_quotatab_ldap:mod_ratio:mod_tls:mod_rewrite:mod_radius:mod_wrap:mod_wrap2:mod_wrap2_file:mod_wrap2_sql:mod_quotatab_file:mod_quotatab_radius:mod_facl:mod_ctrls_admin:mod_exec:mod_sftp:mod_sftp_sql:mod_shaper:mod_sql_passwd:mod_ifsession' 'build_alias=i486-linux-gnu' 'CFLAGS=-O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_OPENSSL -DUSE_LDAP_TLS ' 'LDFLAGS=' 'CPPFLAGS='
make checkinstall --pkgname=proftpd --pkgversion "1.3.3g" --backup=no --default --maintainer=max@devaine.cz --install=no dpkg -i proftpd_1.3.3g-1_i386.deb
V této verzi je to ok. Jsou tedy dvě možnosti, buď to byl oficiální bug, nebo si to tam zanesli debianisti při špatným backportování patchů.
Taktéž jsem ve finále ještě provedl upgrade na debian testing a tam je proftpd ve verzi 1.3.4a, kde to taktéž funguje.
Pro tebe se mi jeví dvě možnosti řešení. Buď přestaneš používat zmíněnou fci, nebo si ubalíš vlastní balíček proftpd 1.3.3g (asi bych jí dal přednost), nebo 1.3.4a.
Vzhledem k tomu, že lenny již není podporován, bych dal přednost ubalení si vlastní verze ze zdrojáků.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.