我是终端屏幕的用户,但我尝试在我的 Macbook 上安装屏幕并出现以下警告:
$ screen
LoginName too long - sorry.
我在网上看到建议更改我的电脑的用户名,但我是该电脑的唯一用户和管理员,并且我的会话中有很多信息。
我能做点什么吗?
答案1
这是一个已知的错误,报告于此处$HOME
。如果长度超过 25 个字符,它也会阻塞。
我可以通过应用补丁(将限制从 20 增加到 50)并从源代码重建来解决这个问题。
补丁位于这条信息。它不适用于从 ftp.gnu.org 下载的 screen-4.0.3 源代码;显然它依赖于此后添加的一些未发布的更改。
(注意:当我下载补丁时,它将其命名为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 screen 的下一个版本中。
答案2
我通过使用解决了同样的错误tmux而不是屏幕。
答案3
Screen-4.3.1 已经解决了这个错误。只需执行以下操作:
1-下载屏幕-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-运行 configure 创建 Makefile
./configure
5-制作并安装
make
make install
6-它可能会要求您手动执行以下复制:
sudo cp etc/etcscreenrc /etc/