Frequently Asked Questions по FreeBSD 2.X : Разное : Почему длина регистрационного имени всё ещё ограничена
Previous: Почему невозможно изменить права на символические ссылки?
Next: Можно ли запускать программы для DOS во FreeBSD?

12.5. Почему длина регистрационного имени всё ещё ограничена 8 символами?

Наверное, вы думаете, что достаточно будет изменить значение константы UT_NAMESIZE, перекомпилировать полностью систему и всё будет работать. К несчастью, часть приложений и утилит (включая системные) имеют жёстко заданные малые значения (не всегда "8" или "9", но и такие странные, как "15" или "20") в структурах и буферах. Это приведёт не только к порче файлов журналов (из-за записи полей переменного размера там, где ожидается поле фиксированного размера), но может повлиять на работу клиентов системы Sun NIS и может в принципе вызвать другие проблемы при взаимодействии с другими системами UNIX.

Во FreeBSD 3.0 и старше, максимальная длина имени была увеличена до 16 символов и все утилиты с предопределённым размером имени были найдены и исправлены. Так как это касается столь многих областей в системе, то такие изменения не делались вплоть до 3.0.

Если вы абсолютно уверены, что сможете найти и исправить проблемы такого рода самостоятельно, когда они возникнут, то можете увеличить длину регистрационного имени в ранних релизах, отредактировав файл /usr/include/utmp.h и изменив соответствующим образом константу UT_NAMESIZE. Вы должны будете также изменить значение MAXLOGNAME в файле /usr/include/sys/param.h, чтобы оно соответствовало UT_NAMESIZE. И наконец, если вы компилируете из исходных текстов, не забудьте, что /usr/include обновляется каждый раз! Делайте изменения в соответствующих файлах каталога /usr/src/..


Frequently Asked Questions по FreeBSD 2.X : Разное : Почему длина регистрационного имени всё ещё ограничена
Previous: Почему невозможно изменить права на символические ссылки?
Next: Можно ли запускать программы для DOS во FreeBSD?