今朝 Google chromeがお亡くなりになった。
その日は突然やってきた。何気ない朝だった。
普段プログラミングの勉強も兼ねて、chromeでseleniumを用いてスクレイピングをしている。今朝もいつも通り、スクリプトに機能を追加して走らせたが、機能追加によるものとは違い何かいつもと違う挙動を見せた。空耳であると思われるが、何かボキっと鈍い音が聞こえた。
クラッシュレポートが画面に表示される。もちろんappleに送信はしない。
そしてもう一度スクリプトを走らせる。
ターミナルにエラーが出力され、chromeが起動出来ない的なメッセージが表示されている。
きっとプロセスが終了出来てないんだろう、その時はそんな風に軽々しく考えていた。
$ ps
とコマンドを打つ。やはりchromedriverとgoogle chromeというプロセスが起動していた。$killall chromedriver
でプロセスを切る。続けて普段なら$killall chrome
も行うのだが、notfoundと表示された。
そして、デスクトップに目をやると普段のchromeアイコンが無残な姿に変貌していた。
こんな姿今まで見たことない。そしてクリックしてもクラッシュレポートが表示されるのみでchromeを起動する事が出来なかった。ここでようやく事の重大さに気付く。これではらちが明かないと思いMacを再起動する。ガシャーンと音を立て起動するMacの画面を見て我々は血の気が引いていくのを感じた。そこには先ほどと変わらない無慈悲なアイコンのChromeがDockに鎮座している。そして再び彼を呼び起そうとクリックするも彼は目を覚ます事はなかった。ここで彼が逝ってしまった事を悟る。我々は何度か叫びクリックして彼を呼び起そうとした。ダメだった。何度もクラッシュレポートが表示され彼が旅立った事を教える。
その後、何か蘇生方法はないかとgoogle先生・chromeのコミュニティの元を訪れたが、我々と同じ症状を示す文献は見られなかった。だがその中で再インストールすることに考えをシフトしていく。そして修正方法を見つける。この方法を用いる事で完全に作業前と同じ状態でchromeを蘇らせることに成功する。
もちろん、ブックマーク、同期設定、各々ユーザ、タブ、履歴、セッション等々に関するまで全て元通りになる。とても鮮やかで華麗な方法のため大抵のクラッシュ後、再インストールを検討しなければならない、chromeに適応出来るだろう。自分でも見事だと思うので記事にした。
ここまで茶番に付き合って頂き「ありがとう」と礼を述べる。
ちなみにこちらがクラッシュ時のappleに送信予定だったエラーレポートだ。
原因がわかる方がいたら教えて欲しい。
個人的にはchromeのアップデートが知らずに予定されていて(普段chromeを付けっ放しでアップデートが更新されていなかった。)スクリプトを起動する際にchromeを終了し、その直後更新が完了する前にスクリプトでchromeを起動してしまい、上手く更新作業がされずにクラッシュしたと考察する。
Process: Google Chrome [811]
Path: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Identifier: Google Chrome
Version: ???
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: Google Chrome [811]
User ID: ***
Date/Time: 2020-11-03 11:27:21.661 +0900
OS Version: Mac OS X 10.13.6 (17G65)
Report Version: 12
Anonymous UUID: ***
Sleep/Wake UUID: ***
Time Awake Since Boot: 3700 seconds
Time Since Wake: 750 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (Code Signature Invalid)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace CODESIGNING, Code 0x1
kernel messages:
VM Regions Near 0 (cr2):
- ->
__TEXT 000000010093a000-0000000100962000 [ 160K] r-x/r-x SM=COW
Thread 0 Crashed:
0 ??? 0x0000000100cb119c _dyld_start + 0
Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x0000000000000000 rbx: 0x0000000000000000 rcx: 0x0000000000000000 rdx: 0x0000000000000000
rdi: 0x0000000000000000 rsi: 0x0000000000000000 rbp: 0x0000000000000000 rsp: 0x00007ffeef2c5bc0
r8: 0x0000000000000000 r9: 0x0000000000000000 r10: 0x0000000000000000 r11: 0x0000000000000000
r12: 0x0000000000000000 r13: 0x0000000000000000 r14: 0x0000000000000000 r15: 0x0000000000000000
rip: 0x0000000100cb119c rfl: 0x0000000000000200 cr2: 0x0000000000000000
Logical CPU: 0
Error Code: 0x00000000
Trap Number: 0
Binary Images:
0x10093a000 - 0x100961fff +??? (0) <B9E032C2-2131-360D-B147-BB24643AF0C2> (null)
0x100cb0000 - 0x100cfaacf +??? (551.4) <8A72DE9C-A136-3506-AA02-4BA2B82DCAF3> (null)
External Modification Summary:
Calls made by other processes targeting this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by all processes on this machine:
task_for_pid: 1837
thread_create: 0
thread_set_state: 0
VM Region Summary:
ReadOnly portion of Libraries: Total=596K resident=0K(0%) swapped_out_or_unallocated=596K(100%)
Writable regions: Total=8408K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=8408K(100%)
VIRTUAL REGION
REGION TYPE SIZE COUNT (non-coalesced)
=========== ======= =======
STACK GUARD 56.0M 2
Stack 8192K 2
__DATA 240K 5
__LINKEDIT 136K 3
__TEXT 460K 3
shared memory 8K 3
=========== ======= =======
TOTAL 64.8M 12
Chromeが起動しなくなった時の修正方法
1:~/Library/Application\ Support/Google/Chrome
にデータが入ってるので、一度デスクトップに移動
2:Chromeを削除して再インストール
3:インストール後の起動する前にChromeフォルダを元の場所に戻す。
4:前回の作業状態のまま起動する。
iTunesのデータを移行する際も似たような方法で行っていたので一か八かで実行したら使えた。
この方法を思いつくのに4時間ほど溶かしてしまったのと、chromeが壊れた事にショックで寝込みそうだったのでこの記事で多くのchromeクラッシャーが救われたら嬉しい。chromeがクラッシュして起動できなくなる状態が頻繁に起こるのか疑問だが、自分と同じ状態に陥った人の助けになればと思う。
参照
Google Chrome Can't Open On MacBook - Google Chrome Community
記事に関するコメント等は
🕊:Twitter
📺:Youtube
📸:Instagram
👨🏻💻:Github
😥:Stackoverflow
でも受け付けています。どこかにはいます。
Discussion