Использование экрана на терминале заблокировано длиной имени пользователя

Я пользуюсь экраном на терминале, но я попытался смонтировать экран на моем Macbook, и выдает следующее предупреждение:

$ screen
LoginName too long - sorry.

Я читаю в Интернете, и мне предлагается изменить имя пользователя моего компьютера, но я единственный пользователь и администратор компьютера, и у меня много информации во время сеанса.

Можно что то сделать?

3 ответа

Решение

Это известная ошибка, о которой сообщается здесь. Это также душит, если $HOME длиннее 25 символов.

Я смог обойти это, применив патч (который увеличивает ограничение с 20 до 50) и перестроив его из исходного кода.

Патч есть в этом сообщении. Это не относится к источникам screen-4.0.3, загруженным с ftp.gnu.org; по-видимому, это зависит от некоторых невыпущенных изменений, добавленных после этого.

(Примечание: когда я скачал патч, он назвал его bin4fE4KxGNNI.bin; Я вручную переименовал его в gnuscreen-21653.patch.)

Так что я схватил последнюю screen Исходники из GIT:

git clone git://git.savannah.gnu.org/screen.git

применил патч:

patch -p 1 < gnuscreen-21653.patch

затем построен из источника:

./autogen.sh
cd src
./configure --prefix=/where/you/want/to/install
make
make install

Это дало мне screen исполняемый файл, из которого я могу запустить /home/accountwithaverylongusername в моей системе Linux. Это должно работать так же на OSX.

Если ваше имя пользователя длиннее 50 символов, вы можете просто обновить константу после применения патча.

Надеюсь, этот патч или что-то подобное появится в следующем выпуске экрана GNU.

Я работал над той же ошибкой, используя tmux вместо screen.

Screen-4.3.1 решил эту ошибку. Просто сделайте следующее:

1-Download Screen-4.3.1

wget http://www.linuxfromscratch.org/blfs/view/svn/general/screen.html

2-декомпрессия

tar -zxvf screen-4.3.1.tar.gz

3-Перейти в каталог

cd screen-4.3.1

4-Run настроить для создания Makefile

./configure

5-Сделать и установить

make
make install

6-Возможно, вам будет предложено сделать следующую копию вручную:

sudo cp etc/etcscreenrc /etc/
Другие вопросы по тегам