FreeBSD

ProFTPd,Fatal: unknown configuration directive

Если при рестарте после обновления порта вы увидели такую ошибку:

Fatal: unknown configuration directive 'TLSEngine'


В новой ветке ProFTPD, начиная с версии 1.3.4a, модули подгружаются динамически и их нужно ручками дописывать в proftpd.conf, например:

	LoadModule mod_tls.c
	LoadModule mod_ratio.c
	LoadModule mod_readme.c
	LoadModule mod_rewrite.c
	LoadModule mod_ban.c
	LoadModule mod_copy.c
	LoadModule mod_deflate.c
	LoadModule mod_ifsession.c
	LoadModule mod_ifversion.c
	LoadModule mod_quotatab.c
	LoadModule mod_quotatab_file.c
	LoadModule mod_quotatab_sql.c
	LoadModule mod_sftp.c
	LoadModule mod_sql.c

Учитывайте так же очередность загрузки модулей, модули, зависящие от других, должны загружаться позже, если прописать:

	LoadModule mod_quotatab_file.c
	LoadModule mod_quotatab_sql.c
	LoadModule mod_quotatab.c

получите ошибку:

/libexec/ld-elf.so.1: /usr/local/libexec/proftpd/mod_quotatab_file.so: Undefined symbol "quotatab_register_backend"

Чтобы работал mod_sql нужно установить порт

/usr/ports/databases/proftpd-mod_sql_mysql/

или

/usr/ports/databases/proftpd-mod_sql_postgres/

(смотря какая у вас база данных) и в конфиге прописать:

	LoadModule mod_sql.c
	# и загрузить модуль:
	LoadModule mod_sql_mysql.c
	# или
	LoadModule mod_sql_postgres.с

	SQLBackend mysql
	# или
	SQLBackend postgres

В виртуальных серверах можно использовать разные базы, просто указать нужную через SQLBackend.

Оригинал тут

Оставить комментарий