端末ログインがハングする


27

新しいMacBook Pro(2016年後半、タッチバー)に奇妙な問題があります。

正常に動作し、しばらく使用した後、loginハングするため新しいターミナルウィンドウを開くことができません。再起動すると問題が修正されます。

これは他の人が抱えている問題のようですので、私は彼らの解決策をすべて試しました(から 1および[2]):

  1. 取りはずし ~/Library/Preferences/com.apple.Terminal.plist
  2. (から別のシェルに私のデフォルトのシェルを設定/bin/zshします/bin/sh/bin/bash
  3. 削除またはクリーニング私の.profile.zprofile、...これは動作しませんし、私はので、私の場合、シェルにも呼び出される前に、問題が発生したことを検証することができecho HEY、私の最初の行として.zshenvこれも達していません。loginトラブルを引き起こしているに違いありません。/etc/profile上部にエコーを追加する編集でも何も表示されません
  4. 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を使用して、開始コマンドをに設定することでシェルを取得できました/bin/bash。ただし、このシェルではsudo機能しません。(プロンプトを表示せずに)ハングし、ハングすると作業ctrl-Cctrl-D行いません。

他のプログラムを使用しも、このシェルでは機能しません: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の回答と一致しています。

  1. その場合login、アクティビティモニターにアイテムが表示されます。(強制)終了すると、ハングしていたターミナルウィンドウも閉じます。ウィンドウを手動で閉じてもlogin、アクティビティモニターでプロセスが終了することはありません。

  2. 端末のタイトルはTerminal — login — term big — ttys001 — 89x18 — ⌘1term big設定名です。

  3. sudoアクティビティモニターに表示されるプロセスはありません。sudoiTerm.app(bashを使用)を開き、そこで実行することでプロセスを作成できますsudo echo ok。終了することはできませんが、強制終了は機能し、強制終了します。

    bash-3.2 $ sudo echo ok殺された:9

アップデート4:

それが発生した場合、実行中のloginまだ使用可能ですシェルからはながら、作業をlogin新しいシェルでは、ハングアップするようです。

更新5:

最近、新しいラップトップ(MacBook Pro 2017、タッチバーなし)を入手しましたが、問題は解決しません。

私もシェルを切り替えました:今fishではかなりバニラの設定で使用しています。シェルが犯人として除外されていると思います。

OSも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

これが今何になり得るかわからない。私は考えることができる唯一のアプリがあるDivvyApptivate、それらの両方が時代遅れに見えるからです。これは、古いマシンと新しいマシンにインストールされたものの共通部分です。

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:

私の環境は通常次のようになります:

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

1
これは不十分な提案かもしれませんが、Appleカスタマーサポートに連絡してみましたか?あなたの質問は、投稿してからあまり注目されておらず、サポートスタッフがこの問題について聞いたことがあるかもしれません。私の他の唯一の提案は、MacOSを再インストールすることです。しかし、お使いのMacはとても新しいので、これが機能するかどうかはわかりません。
ノアール

@klanomath完了!
-romeovs

ログインが何をしているかを把握するには、アクティビティモニターでログインを選択し、サンプルプロセスを選択します。ハングしている他のプロセスについても同様です。ただし、このレベルのデバッグはStackExchangeのQ&Aには適さない場合があります。サンプルファイルを含めてAppleにバグレポートを提出するか、このレベルで問題を診断するためのサポートを提供できる人を見つけることをお勧めします。参照してくださいdeveloper.apple.com/bug-reporting
クリス・ページ

どれくらい掛かりますか?10分間実行したままにしましたか?お使いのマシンはOpen Directoryネットワークにバインドされていますか?特に、ログインはユーザー情報を取得する必要があります。また、ビジー/無応答のディレクトリサーバーがあるODネットワークを使用している場合は、応答に数分かかることがあります。他のプログラムもユーザー情報を取得し、この問題の影響を受ける可能性があります。
クリスページ

長く待っていませんでした。次回もお試しください。私はOpen Directoryネットワークに縛られていません。これらのエラーは、私がネットワークにいないときにも発生します。
-romeovs

回答:


13

ご存知のとおり、トラブルシューティングは排除のプロセスであり、多くの場合、かなりの忍耐が必要です。私はあなたのためにこれの一番下に到達しようとするいくつかのことを試してみたいと思います。

1.ログイン中にハングすることを確認します

ハングしているプロセスが実際にlogin中にある場合、これはプロセスがまだログインセッションの作成を待機していることを意味します。これが事実であると仮定すると、シェルをまだ開始しようとしなかったでしょう。

これを確認するには、次回この問題が発生したときにアクティビティモニターを起動して、シェルが実行されているかどうか、またはログインプロセスのみが表示されるかどうかを確認します

これを行う機会が得られたら、見つけたものを報告してください。

注:他の端末を開いている場合は、対応するプロセスを確認してください。私の推測では、ハングしているプロセスは最高のプロセスID(PID)番号を持つプロセスです。

2.ターミナルのタイトルは何ですか?

次回この問題が発生したときに、ターミナルウィンドウのタイトルを書き留めて報告することができますか?

3.須藤を殺す

MBPを再起動すると、この問題は常に解決すると述べています。

ただし、次回この問題が発生したとき(上記1で説明したことを実行した後)、アクティビティモニターからsudoを強制終了してみてください。

これを試してみたら、何が起こるか教えてください。

4. .bash *ファイルを移動してみてください

(さまざまな理由で)ユーザーディレクトリに.bash_profileファイルがあり、これが断続的な問題を引き起こしている可能性があります。これは気付かないこともありますが、Automatorを使用して、.bashファイルを見つけて移動するスクリプトを実行できます。

これを行うためのサンプルスクリプトを次に示します。

cd ~

mkdir moved
for F in .bash*
do
    mv $F moved
done

このスクリプトは、ホームフォルダー内の.bashで始まるすべてのファイルを、新しく作成された移動済みサブフォルダーに移動します。

スクリプトを実行した後、このフォルダーを確認し、実際にファイルが含まれているかどうかをお知らせください。

注:-新しいサブフォルダーには、任意のラベルを付けることができます。これを行うは、スクリプト内で移動した2つのオカレンスを、使用するラベルに変更します。

[更新]

いくつか試してみてください。

5. * .aslファイルをクリアしてみてください

まだ行っていない場合は、*。aslファイルをクリアしてみてください。これを行うには、次を使用します。

sudo rm -rf /private/var/log/asl/*.asl

注:-新しいシェルを作成するため、これには時間がかかる場合があります。完了したら、変更を有効にするためにターミナルを完全に終了してください。

6.セーフモード

MBPをセーフモードで起動すると、動作に違いがありますか?セーフモードで起動するには:

  1. Macを完全にシャットダウンします
  2. Macを再起動します
  3. すぐにShiftキーを押してキープしてください
  4. Shiftログインウィンドウが表示されたら、キーを放します(注:FileVaultを有効にしている場合は、2回ログインする必要があります)。
  5. MBPが起動したら、ターミナルを使用してみて、問題を再現できるかどうかを確認してください。
  6. 終了したら、通常どおりMBPを再起動してセーフモードを終了できます

7.オープンディレクトリ

言及していないので、これはおそらくあなたの場合には当てはまりませんが、Open Directoryネットワークに接続している場合、これも問題を引き起こしている可能性があります。通常、これは約10〜15秒待つだけですが、この状況で完了するのに5分以上かかる端末ログインのレポートを見てきました。


ありがとう!私が使用しているzsh、とさえ空で.zshrc.zprofile.profile、などidが発生していない、プラスになぜ他のプログラムを説明していないこと/usr/local/binもハングアップするので、私が思う4.絵から出ています。他の質問に対する回答が得られたら、回答します。
-romeovs

これらの質問に対する回答を含む更新を追加しました。login犯人のようですが、それでもiTermで動作する理由を説明していませんbash
ロメオフス

回答を更新しました。ただし、ターミナルログインの完了を待機する時間を指定していないことに気付きました。最終的にログインするかどうか、または単に無期限にハングするかどうかを知ることは良いことです。
Monomeeth

@romeovs不思議に思って、この問題を解決したことはありますか?
Monomeeth

nope :(まだ取り組んでいます。しかし、それはずっと少なくなり始めています。
romeovs

6

これは、ユーザーごとの最大プロセス(または場合によっては最大プロセス)を超えるのに最適です。

株式MacOSのインストールには、あなたが(ユーザーあたり709を取得ulimit -u)し、1064の最大のプロセス(sysctl -a | grep maxp

これらを簡単に強化するには、App StoreからServer.appをインストールしてから再起動します。より高い制限のパフォーマンスモードを設定することもできます。

セットアップ(OSバージョンとビルド)について説明しなかったため、ここにいくつかのヒントがあります-サーバーをインストールせずに制限を変更する古い記事を読んだ場合、ファイルを変更する機能を制限しているSIPを確認してください。アプリ:


素晴らしい点!私もこれを考えていませんでした。:)
Monomeeth

@Monomeethあなたの答えは素晴らしいです。たくさんの素晴らしいものがあります。
bmike

@bmikeプロセスの総数を確認して、これが事実であることを確認する方法はありますか?709プロセスを作成することでそれを再現することもできますか?
ロメオフス

5

私もこれを数ヶ月間見ています。非常にイライラします。それを修正するのはリブートだけです。

  • 2015年中頃のMBP(タッチバーなし)
  • MacOS 10.12.6ベータ

時々、tmuxと対話した後にログインがハングします。

推奨されるすべてのアプローチを試してみましたが、うまくいきませんでした。

関連しているかどうかはわかりませんが、ハングしたログインプロセス用のlsof -p LOGIN_PID非常に大きなファイルが表示さ/private/var/db/dyld/dyld_shared_cache_x86_64hれます。

2017年8月29日更新:

まだ問題があります。マシンが悪い状態になると、デバッグに使用できる既に正常にログインしたターミナルウィンドウが開いていることがあります。

多くのコマンドは正しく実行されませんが、それらはすべて書き込みに問題があるというパターンを示しています(標準出力では、私は考えています)。たとえば、を実行するとls -alls: write errorstderrに放出されます。を実行するとls -al > /dev/null、stderrには何も出力されません。


これを理解する運はありますか?
-romeovs

OSを更新してから、この問題は解決しました。いくつかのマイナーバージョンで修正されており、現在10.13.3(17D47)を実行しています。
ザック

10.13.3(17D47)も実行しています!頻繁に発生しますが、それでも時々発生します。
-romeovs

4

症状だけでなく、実際の問題を治療することが重要です。したがって、次の提案を試して、それに基づいて更新し、さらに改善策を提案できるようにしてください。

  1. どのユーザーが端末を所有していますか?
    私の最初の予感は、これがアカウントの設定方法に関連する可能性があることです。端末が管理者ユーザーのみがアクセスできるリソースまたはディレクトリにアクセスしようとしている場合(管理者以外のアカウントの場合)、凍結状態になる可能性があります-端末へのアクセスを許可しません。そのため、ターミナルセッションを開始するときは、それがユーザーのローカルであり、別のユーザーではないことを確認してください。sudoプロセスを作成できないという事実は、この方向を示しています。

  2. Control-ZまたはCommand-Zを入力:
    このコントロールキーシーケンスは、実行中のプログラムを中断し、シェルプロンプトを表示します。これで、jobsコマンドを入力してプログラムの名前を検索し、fgでプログラムを再起動するか、killで終了できます。

  3. 押してコマンド-C
    端末は、バックグラウンドでプログラムを実行しようとしている場合、これは中断します。数回試してみてください。出力が表示される場合は注意してください

  4. Control-Qを入力
    Control-Sで出力が停止している場合は、再起動します。

  5. 代替シェルを入手する
    別のシェルを数日間試してみたい場合、それらの動作は、特定の方法で動作する場合に与えられるターミナルの問題を理解するのに役立つ場合があります。代替手段については、以下のリンクを確認してください

https://git-scm.com/downloads/guis
https://computers.tutsplus.com/tutorials/beyond-terminal-4-os-x-terminal-alternatives--mac-56217

まだ言及されていない場合、以下を知るのに役立ちます:

  • ターミナルセッションをどのように開始しますか?これは、スポットライトまたはデスクトップアイコンまたは他の方法によるものですか?

  • ハングしたとき、端末は何をしていますか?コマンド(ハングする前に毎回同じコマンド)を実行中か、ターミナルセッション/ウィンドウを開始した瞬間からハングするだけですか。

  • 通常、端末は何に使用しますか?使用の大半がgit関連のコマンドのみである場合は、Github for Macのような何かを使用することをお勧めします。通常はそこからほとんどのことを行うことができます。


Ctrl-ZとCtrl-Cは両方とも画面に表示されるだけ^Z^C、Ctrl-Qは何もしません。通常、ターミナルでCommand-Nを使用してシェルを開きます。私はフルタイムのプログラマーですので、基本的にすべてに端末を使用しています。何かが実行される前に端末がハングします(オンlogin)。
ロメオフス

@romeovsポインター1については、ユーザーの種類はどうですか。問題のスクリーンショットも役立ちます。ありがとう
-pal4life

私はデフォルトのユーザーであり、Macbookの管理者です。
ロメオフス

4

私はSIPとdtraceログインを無効にして根本原因を見つけようとします(SIPを無効にして再度有効にするには、http://osxdaily.com/2015/10/05/disable-rootless-system-integrity-protection-macを参照してください-os-x /

$ csrutil status
System Integrity Protection status: disabled.
$ cp /usr/bin/login /tmp
$ sudo dtruss /tmp/login

サンプル出力を提供しようとして、物事が思ったよりもはるかに簡単であることがわかりました。ログインをコピーするだけで、SIPを無効にする必要はありません。

dtussはシステムコールを返し、問題が発生した場合のヒントを提供します。

cp /usr/bin/login .
sudo ls

パスワードを入力してください。それから

sudo dtruss -d -e ./login 2> dtruss_login.txt

ユーザー名を入力して、Enterを押します

パスワードを入力して、Enterを押します

「exit」と入力し、Enterキーを押します

最後にdtruss_login.txtをhttps://gist.github.com/などにアップロードします

このようにして、ファイルの内容をクリップボードにコピーできます

cat dtruss_login.txt | pbcopy

ここでログインの例を見つけることができます:https : //gist.github.com/wolframteetz/49c5188c9dfe68a3841fa18496679579

各行の2番目の整数は、呼び出しにかかった時間です。

もちろん、ログインがハングしたときにこれを実行できれば素晴らしいと思いますが、私が正しければ、これは不可能です。 ?


痛い。これは、ログインが開始されてから数時間または数日後に発生する何かに大きな苦痛を感じます。何をdtrussキャプチャして表示するかを絞り込めますか?
bmike

システムコールでログインがハングした場合(これは非常に可能性が高い)、表示されます。システムコール間でハングする場合は、その間を表示し、実際に何が起こっているかのヒントを提供します。たとえば、システムコールによって特定の構成ファイルを読み取った後にハングした場合、その構成の解析中にエラーが発生する可能性が高くなります。それをよく見る必要があります。また、ネットワーク関連の可能性があります...あなたがそれをデバッグするまで知っている人;)
user2707001

問題は、手遅れになるまで手動で問題を再現できないことです。
ロメオフス

次に、「永久に」ループでコマンドを実行し、「2> dtruss_login.txt」の代わりに「>> dtruss_login.txt 2>&1」を実行します。エラーが表示されると、出力の最後に表示されます。
user2707001

:私は最終的にdtrussログを取得することができましたgist.github.com/romeovs/6661ae0db77e57281b531676cc5dc007 10秒程度後にログインハング以来、これは決して終了したので、私CTRL-C'edを。
romeovs

1

loginコマンドのソースコードは、Appleによって公開されています。WebサイトはmacOS 10.13.3 Sourceです。唯一の必要なダウンロードはsystem_cmds-790.30.1です。ダウンロードしたプロジェクトは、loginコマンドをビルドするだけに簡単に変更できます。変更されたプロジェクトとloginコマンドはGitHubのdavidanderson61 / system_cmds-10.13.3に配置されています。

ここでの考え方は、loginデバッグ情報をコンソールに書き込むように変更することです。これは、loginコマンドがハングする理由を判断するのに役立ちます。変更は、参加を希望する人なら誰でも行うことができます。これは私だと思っていました。

デバッグloginコマンドをインストールします。

  1. Webサイトdavidanderson61 / system_cmds-10.13.3 / releasesから最新リリースを選択します

  2. デバッグloginコマンドをDownloadsフォルダーにダウンロードします。[アセット] loginで、右クリックして[リンクされたファイルをダウンロード] を選択し、[保存] を選択します。

  3. 部分的に、システム整合性保護(SIP)を無効にします。コマンドを以下に示します。コマンドを入力する前に、macOS Recoverを起動してから、ターミナルウィンドウを起動する必要があります。

    csrutil  enable  --without  fs
  4. 以下のコマンドを入力して、元のloginコマンドを保存します。login.orignal既に存在する場合は、この手順を省略できます。

    sudo  mv  /usr/bin/login  /usr/bin/login.original
  5. 以下のコマンドを入力して、デバッグloginコマンドをコピーし、適切な権限を設定します。

    sudo  cp  ~/Downloads/login  /usr/bin/login
    sudo  chmod  104555  /usr/bin/login
  6. システム整合性保護(SIP)を有効にします。次のコマンドを入力します。その後、再起動する必要があります。

    sudo  csrutil  clear

コンソールアプリケーションを構成する

以下は、loginコマンドからのメッセージのみを表示するようにコンソールアプリケーションを構成する手順です。

  1. コンソールアプリケーションを開きます。
  2. PID以下に示すように、列を追加します。

    g2

  3. login[検索]フィールドに入力します。

    g3

    [検索]フィールドにフォーカスがある間に、returnキーを押します。[検索]フィールドは、次のように変更されます。

    g8

  4. 以下に示すようAnyProcess、に変更します。

    g4

  5. リスト以下に示すようContainsEquals、に変更します。

    g5

  6. Saveボタンを選択します。「名前を付けて検索を保存:」のプロンプトが表示されたら、を入力しLogin、を選択しますSave

    g6

結果は次のように表示されます。次回コンソールアプリケーションを開くときは、[ログイン]ボタンを選択するだけです。

g7

付録

GitHubリポジトリの作成方法。

  1. system_cmds.xcodeprojXcodeで開いているファイルをクリックします。
  2. メニューバーからを選択しますSource Control->Create Git Repositories...
  3. メニューバーからを選択しますProduct->Scheme->New Scheme...。次に、loginターゲットおよび名前として選択します。
  4. メニューバーからを選択しますProject->Build
  5. Xcodeを終了します。
  6. GitHubにログインして、新しいリポジトリを作成します。
  7. GitHubリポジトリの[クイックセットアップ]ページの上部で、クリックg1してリモートリポジトリのURLをコピーします。
  8. ターミナルアプリケーションウィンドウの場合、次のコマンドを入力します。<remote repository URL>前の手順でコピーしたURLに置き換えます。

    git  remote  add  origin  <remote repository URL>
  9. Xcodeでプロジェクトを開き、メニューバーからを選択しますSource Control->Push...

最初のリリースの作成方法

  1. ターミナルアプリケーションウィンドウから、次のコマンドを入力します。

    git  tag  -a  v1.0  -m  "Original source code"
    git  push  origin  v1.0
  2. ビルドしたloginコマンドをDownloadsフォルダーにコピーします。

  3. GitHubアカウントから、として新しいリリースを作成しますv1.0~/Downloads/loginバイナリとして添付します。


1

emacsでsbtコンソールを実行しているときにもこの問題が発生しました。最初にsbt consoleを「きちんと」終了するのではなく、単にウィンドウを強制終了してsbt consoleを終了すると、ウィンドウが閉じられた後でもJavaプロセスがハングし、新しいターミナルセッションの作成が妨げられました。アクティビティモニターからjavaプロセスを強制終了し、emacs内と新しいタブからぶら下がっているターミナルを実際に起動しました。

さて、コマンドexitor ctrl-d(またはctrl-c ctrl-demacs term/multi-term)を使用して適切に終了し、ウィンドウを強制終了してください。


0
  1. 処理中にプロセスが本当にハングするかどうかを確認します login
  2. アクティビティモニターrootを確認し、適切に終了(クラッシュ、ターミナルの強制終了など)し、まだ実行中のプロセス(nano、emacs、vim)に注意してください。
  3. このプロセスを強制終了すると、ログインがすぐに機能するはずです。

0

ちょうど私の2セント。

Sublime Text用のTerminusパッケージをインストールしました。これにより、テキストエディター内でターミナルを実行できます。

Sublime Textを閉じると、すぐに端末が再び動作するようになりました。


これが質問に答えるのに役立つとは思わない。これは、Terminus内で端末を実行することで端末がハングするのを防ぎますか?たとえそうなっても、ここで別の問題を解決しているようです。
haykam

Sublime Text
Abundance

0

FWIW、私はこれと同じ問題を抱えていました。再起動後に解決しますが、1日に複数回行う時間を節約したかったのです。特定のnodeJS環境を使用した後に開始されたため、アクティビティモニターに入り、ノードプロセスが進行中であることに気付きました。そのインスタンスを削除することで問題は解決したので、これを経験している人が最近nodeまたはnpmをローカルで操作し始めた場合、それが問題である可能性があります。


私の場合、迷惑な「java」プロセスでしたが、Activity Monitorで強制終了すると、端末がハングしなくなりました
アダムB

0

迷子のnvimインスタンスを削除すると、これが修正されました。これはnvimに固有のものではないと思いますが、私の場合はnvimがそれをしていたために問題が発生しました。アクティビティモニターで不適切な孤立したターミナルアプリを探し、見つかった場合はそれを強制終了します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.