O uso da tela no terminal é bloqueado pelo tamanho do nome de usuário

3

Eu sou um usuário de tela no terminal, mas eu tentei montar uma tela no meu Macbook e resulta neste aviso:

$ screen
LoginName too long - sorry.

Eu leio na web e a sugestão é mudar o nome de usuário do meu computador, mas eu sou o único usuário e o administrador do computador, e tenho muita informação na minha sessão.

Posso fazer alguma coisa?

    
por Cristian Velandia 15.03.2013 / 16:14

3 respostas

6

Este é um bug conhecido, relatado aqui . Ele também bloqueia se $HOME tiver mais de 25 caracteres.

Consegui contornar isso aplicando um patch (que aumenta o limite de 20 a 50) e reconstruindo a partir do código-fonte.

O patch está em esta mensagem . Não se aplica às fontes de tela 4.0.3 baixadas do ftp.gnu.org; aparentemente, depende de algumas alterações não lançadas adicionadas depois disso.

(Nota: Quando baixei o patch, ele o nomeou bin4fE4KxGNNI.bin ; renomei-o manualmente para gnuscreen-21653.patch .)

Então peguei as últimas screen sources do git:

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

aplica o patch:

patch -p 1 < gnuscreen-21653.patch

então construído a partir da fonte:

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

Isso me deu um executável screen que posso executar a partir de /home/accountwithaverylongusername no meu sistema Linux. Deve funcionar da mesma maneira no OSX.

Se o seu nome de usuário tiver mais de 50 caracteres, você provavelmente poderá atualizar a constante depois de aplicar o patch.

Espero que este patch, ou algo parecido, apareça na próxima versão da tela GNU.

    
por 15.03.2013 / 16:41
4

Eu trabalhei em torno do mesmo bug usando o tmux ao invés da tela.

    
por 15.03.2013 / 19:29
1

O Screen-4.3.1 resolveu este bug. Basta fazer o seguinte:

1-Download Screen-4.3.1

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

2-descomprimir

tar -zxvf screen-4.3.1.tar.gz

3-Vá para o diretório

cd screen-4.3.1

4-Run configure para criar o Makefile

./configure

5-Faça e instale

make
make install

6-Provavelmente irá pedir-lhe para fazer a seguinte cópia manualmente:

sudo cp etc/etcscreenrc /etc/
    
por 25.01.2016 / 17:19