Настройка локали ftpd
Автор : Глеб Рейс / Дата : 2007-07-11 12:32
Добавить или посмотреть комментарии :
(0)
Рейтинг пользователей :
0
Автор : Глеб Рейс / Дата : 2007-07-11 12:32
Добавить или посмотреть комментарии :
Рейтинг пользователей :
0
Возникла мелкая проблема, очень легко решаемая с помощью команды inetadm, вот и решил заодно сделать эту запись.
Примечание редактора: данная сложность у меня возникала каждый раз при настройке нового сервера, а наименование параметра напроч вылетает на следующий день... поэтому для полного закрепления материала публикуется дубликат статьи...
При подключении к моему лаптопу, FTP клиент отказывался корректно работать, потому что при подробном листинге файлов (команда ls -l) даты указывались с помощью русских названий дней недели, и это сбивало FTP клиента с толку и он не мог правильно разобрать листинг файлов. Сразу стало ясно, что FTP сервер на лаптопе выдаёт даты по-русски из-за того, что демон наследует переменные окружения. И вот как это его поведение можно изменить с помощью inetadm:
Данная команда выводит все свойства, которые можно изменить для сервиса ftp:
SCOPE NAME=VALUE
name="ftp"
endpoint_type="stream"
proto="tcp6"
isrpc=FALSE
wait=FALSE
exec="/usr/sbin/in.ftpd -a"
user="root"
default bind_addr=""
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
default tcp_wrappers=FALSE
Как видно, существует опция inherit_env, которая по умолчанию включена. Вот её-то я и отключил:
После этого окружение перестало наследоваться демоном, и, в частности, локаль для отображения дат изменилась на стандартную C (английскую).
Точно таким же методом можно менять любые настройки какого угодно сервиса, подвластного inetadm.
Примечание редактора: данная сложность у меня возникала каждый раз при настройке нового сервера, а наименование параметра напроч вылетает на следующий день... поэтому для полного закрепления материала публикуется дубликат статьи...
При подключении к моему лаптопу, FTP клиент отказывался корректно работать, потому что при подробном листинге файлов (команда ls -l) даты указывались с помощью русских названий дней недели, и это сбивало FTP клиента с толку и он не мог правильно разобрать листинг файлов. Сразу стало ясно, что FTP сервер на лаптопе выдаёт даты по-русски из-за того, что демон наследует переменные окружения. И вот как это его поведение можно изменить с помощью inetadm:
Данная команда выводит все свойства, которые можно изменить для сервиса ftp:
Код:
#inetadm -l svc:/network/ftp:defaultSCOPE NAME=VALUE
name="ftp"
endpoint_type="stream"
proto="tcp6"
isrpc=FALSE
wait=FALSE
exec="/usr/sbin/in.ftpd -a"
user="root"
default bind_addr=""
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
default tcp_wrappers=FALSE
Как видно, существует опция inherit_env, которая по умолчанию включена. Вот её-то я и отключил:
Код:
inetadm -m svc:/network/ftp:default inherit_env=FALSEПосле этого окружение перестало наследоваться демоном, и, в частности, локаль для отображения дат изменилась на стандартную C (английскую).
Точно таким же методом можно менять любые настройки какого угодно сервиса, подвластного inetadm.
Комментарии :
Комментариев нет
