我的新MacBook Pro(2016年末,触控条)有一个奇怪的问题。
它工作正常然后,使用它一段时间后,打开新的终端窗口不起作用,因为 login
挂起。重新启动可以解决问题。
这似乎是其他人所拥有的一个问题所以我已经尝试了所有的解决方案(来自 1 和 [2] ):
- 删除
~/Library/Preferences/com.apple.Terminal.plist
- 将我的默认shell设置为另一个shell(来自
/bin/zsh
至/bin/sh
要么/bin/bash
) - 删除或清理我的
.profile
,.zprofile
,...这不起作用,我可以验证问题发生在甚至调用shell之前,因为如果我echo HEY
作为我的第一行.zshenv
这甚至都达不到。肯定是login
造成麻烦。编辑/etc/profile
在顶部添加回声也没有显示任何内容 - 改变了
Run command:
在我的终端配置中设置类似的东西echo foo
也行不通(离开Run inside shell
选中或取消选中不会更改任何内容)。
其他说明:
- 喜欢 [2] ,
ssh-add -K
在重新启动之间没有坚持密钥,这是我之前从未遇到麻烦的事情。 - 控制台不会显示任何可疑错误或警告。
- 开新
Terminal
窗口确实似乎创建了tty文件(/dev/ttys<number>
)。 - 发生这种情况时,如果我使用Terminal.app或iTerm.app并不重要
- 我有一个非常干净的安装(刚拿到我的笔记本电脑,没有恢复任何备份,只是安装了一些应用程序
brew install
和brew cask install
)。
这真的很难调试,因为我无法重现它,而且我常常无法打开一个新的终端,甚至试图找出正在发生的事情。
有人有任何提示吗?
更新:
使用iTerm,我可以通过将start命令设置为来获取shell /bin/bash
。但是,在这个shell中, sudo
不起作用。它挂起(没有显示提示)和 ctrl-C
和 ctrl-D
它挂起时不起作用。
运用 一些 其他程序在这个shell中也不起作用: node
要么 /usr/local/bin/node
都挂了。据我所知,这是程序 /usr/local/bin
。
更新2:
brew list --full-name
导致这些包:
autoconf
automake
blueutil
boost
cabal-install
cairo
cfssl
cmake
coreutils
doxygen
editorconfig
erlang
ffind
ffmpeg
flow
fontconfig
fontforge
freetype
gdbm
gettext
ghc
git
glib
go
gobject-introspection
graphicsmagick
harfbuzz
haskell-stack
highlight
icu4c
influxdb
jemalloc
jpeg
keybase
lame
libevent
libffi
libpng
libtermkey
libtiff
libtool
libuv
libvterm
libxml2
lua
mongodb
msgpack
nginx
node
openssl
openssl@1.1
pango
pcre
pixman
pkg-config
postgresql
protobuf
python
python3
rabbitmq
readline
reattach-to-user-namespace
redis
sqlite
the_silver_searcher
thefuck
tmux
unibilium
unixodbc
wxmac
x264
xvid
xz
yarn
z
zsh
josegonzalez/php/php54
neovim/neovim/neovim
更新3:
这些观点与@ Monomeeth的答案相符:
当它发生时,a
login
项目确实显示在活动监视器中。 (强制)退出它也会关闭挂起的终端窗口。手动关闭窗口不会使login
进程在Activity Monitor中消失。终端标题是
Terminal — login — term big — ttys001 — 89x18 — ⌘1
,哪里term big
是设置名称。没有
sudo
进程显示在活动监视器中。我可以创建一个sudo
通过打开iTerm.app(使用bash)并运行来完成此过程sudo echo ok
那里。它不能退出,但强制退出工作并杀死它:bash-3.2 $ sudo echo ok 被杀:9
更新4:
当它发生时,运行 login
从一个仍然可用的shell 不 工作,而 login
在较新的贝壳似乎挂起。
更新5:
我最近买了一台新笔记本电脑(MacBook Pro 2017,没有Touch Bar),问题仍然存在。
我也换过贝壳:我现在正在使用 fish
有一个漂亮的香草配置。我认为排除外壳是罪魁祸首。
操作系统也已更新至10.13.3(17D47)High Sierra。
我尝试在这台机器上尽可能少地安装:
brew list —-full-names
coreutils 8.29
dnsmasq 2.78
faac 1.29.9.2
fdk-aac 0.1.5
ffmpeg 3.4.1
fish 2.7.1
freetype 2.9
gdbm 1.14.1_1
gettext 0.19.8.1
git 2.16.1
highlight 3.42
htop 2.0.2_2
icu4c 60.2
imagemagick 7.0.7-22
jemalloc 5.0.1
jpeg 9b
lame 3.100
libav 12.2
libogg 1.3.3
libpng 1.6.34
libtermkey 0.20
libtiff 4.0.9_1
libtool 2.4.6_1
libuv 1.19.1
libvorbis 1.3.5_1
libvpx 1.7.0
libvterm 681
libyaml 0.1.7
lua 5.3.4_2
luajit 2.0.5
mongodb 3.6.2
msgpack 2.1.5
neovim 0.2.2
node 9.5.0
openssl 1.0.2n
opus 1.2.1
parallel 20180122
pcre 8.41
pcre2 10.30
postgresql 10.2
python 2.7.14_3
python3 3.6.4_2
readline 7.0.3_1
ripgrep 0.7.1
ruby 2.5.0
sqlite 3.22.0
the_silver_searcher 2.1.0
thefuck 3.25_1
unibilium 1.2.1
x264 r2795
xvid 1.3.5
xz 5.2.3
youtube-dl 2018.02.08
不知道现在可以做什么。我能想到的唯一应用程序是 Divvy
要么 Apptivate
因为他们似乎都过时了。这是旧机器与新机器上安装的交集:
coreutils
ffmpeg
freetype
gdbm
gettext
git
highlight
icu4c
jemalloc
jpeg
lame
libpng
libtermkey
libtiff
libtool
libuv
libvterm
lua
mongodb
msgpack
node
openssl
pcre
postgresql
python
python3
readline
sqlite
the_silver_searcher
thefuck
unibilium
x264
xvid
xz
更新6:
更新7:
我的env通常看起来像这样:
Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.k60Nf5UBfq/Render
DISPLAY=/private/tmp/com.apple.launchd.6FMoWPSlJI/org.macosforge.xquartz:0
EDITOR=env VIRTUAL_ENV= nvim -u /Users/john-doe/.config/vim/vimrc -p
GNUTERM=X11
HOME=/Users/romeo
HOMEBREW_NO_EMOJI=1
HOMEBREW_PREFIX=/usr/local
LANG=en_GB.UTF-8
LESS=-RI
LESSHISTFILE=-
LOGNAME=romeo
LS_COLORS=di=00;31:ex=00;37:mi=00;41;30:tw=00;33
MANPATH=/usr/local/opt/coreutils/libexec/gnuman
PAGER=less
PATH=/Users/john-doe/.config/fisherman/re-search:/usr/local/opt/python/libexec/bin:/usr/local/opt/ruby/bin:/usr/local/opt/coreutils/libexec/gnubin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/MacGPG2/bin
PWD=/Users/romeo
SECURITYSESSIONID=186a8
SHELL=/usr/local/bin/fish
SHLVL=1
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.fQn5sHMuZP/Listeners
TERM=xterm-256color
TERM_PROGRAM=Apple_Terminal
TERM_PROGRAM_VERSION=400
TERM_SESSION_ID=D2AF7A50-8B41-4793-9201-8304A02C9B29
TMPDIR=/var/folders/15/zcyyfw_x7638z7vfg5zd85z40000gn/T/
USER=romeo
XDG_CACHE_HOME=/Users/john-doe/.cache
XDG_CONFIG_HOME=/Users/john-doe/.config
XPC_FLAGS=0x0
XPC_SERVICE_NAME=0