written by 優曇華院
起こったこと
ひょんなことから受けることになった組織学再試が1週間以内に迫っている訳だが,MacでInkscapeが突然使えなくなった.よくあるのは,起動した瞬間に「内部エラーが発生しました.直ちに終了します.」と表示される奴だ.これの原因はMacのInkscapeでLNAG=sjisになっているからだってのは有名な話だ.だが,今回は前代未聞のエラーが起こった.とりあえず,次のスクリーンショットを見て欲しい.
初期化を決心するまでの流れ
Homebrewでreinstall,xquartzのreinstall,Cashesの消去,Homebrewの入れ直し,OSの再インストールなど,思いつく限りのことはやった.だが,どれも同じような感じである.これではどうしようもないではないか!v0.91とかだと別のエラーが出やがった.ということで,Macを初期化することにした.Macを初期化することにした.普段よく使うソフトはHomebrew経由でインストールしたものばかりなので,入れなおすのはそこまで面倒ではない.しかしながら,1つだけ,1つだけ,どうしようもないやつがある:
Microsoft Office!
大学が包括ライセンス契約を結んで云々らしいが,とにかく,これを再インストールするのは手続きがあったりして面倒.ということで,初期化した後に,何とかこれを使えるようにしたい.MacではMS Officeは,Excel.app みたいなバイナリとかのパッケージと,*.plistからなっている:
- /Applications/Microsoft *.app
- /Users/admin/Library/Application Support/Microsoft *
- /Users/admin/Library/Preferences/com.microsoft.*.plist
- /Library//Application Support/Microsoft
- /Users/admin/Library/Preferences/com.microsoft.licensingV2.plist
.さて,このうち2. ~5. は大きさが小さいので適当にバックアップを取っておけばよいが,1. はかなり容量がでかい(2GB前後)のでバックアップの方法を考える必要がある.5. はライセンス認証のファイルだけど,他人のPCに渡しても多分使えないと思うよ.
Time Machineの設定
Macには,TimeMachineというものがあり,外部ドライブにバクアップを取ることができる.だが,あいにくながら優曇華院は外付けHDDなるものを持っていない.それどころか,USBフラッシュメモリーすら持っていない.ということで,Windowsの中にディスクを作って,そこにMacのバックアップデータをWi-Fi経由でぶち込むことにした.
先ずは,WindowsとMacの間でファイル共有を使えるようにしなければならぬ.どちらのPCもパスワードで保護された管理者アカウントを使えることが必須だ.
- Windowsのネットワークと共有センターで,共有するオプションを全てonにする.
- WindowsのC:/ユーザーで,プロパティ>共有>詳細な共有を選び,「このフォルダーを共有する」をonにする.アクセス許可を選び,Everyoneのアクセス許可を全て許可にする.
- Windowsのコマンドプロンプトでipconfigを打ち込み,IPアドレスを確認する.
- MacでFinderを起動し,command + k を押す.そして,smb://[WindowsのIPアドレス]を打ち込み接続する.例えば,smb://192.168.11.1のような感じだ.そして,接続し,Windowsで使っているアカウントの名前とパスワードを入れれば,ユーザーフォルダにアクセスできるようになる.
- Windowsでネットワークを選び,Macを選択する.Macで使うアカウントでログインすれば,Macintosh HDとuserフォルダにアクセスできる.
以上でファイル共有の設定が終わりである.いよいよTime Machineの準備に入る.
MacのTimeMachineをWindows共有フォルダに作る.
- ディスクユーティリティで空のイメージを作成:
hdiutil create -type SPARSEBUNDLE -layout GPTSPUD -fs HFS+ -volname TimeMachine -size 256gb ~/Desktop/TimeMachine
- デスクトップにできた
TimeMachine.sparsebandle
をWindowsの適当な場所に放り込む. - macからWindowsに入れたsparsebandleを開く.(TimeMachineがマウントされる)
- TimeMachineのdestinationをセットする:
sudo tmutil setdestination /Volumes/TimeMachine
-
あとはTimeMachineからバックアップを始めれば良い.
ちなみに,WindowsとMacで接続が切れないようにするため,Windowsでは,管理者権限で
net config server /autodisconnect:-1
と打てばよい.Macでは,充電中にのみバックアップする+画面オフにしてもスリープにしないオプションを入れるとよい.あとは,TCP遅延ACKを0にする:
sudo sysctl -w net.inet.tcp.delayed_ack=0
とよい.
クリーンインストールとバックアップ
Macを再起動し,起動音が鳴ったらcmd+R.ディスクユーティリティでMacintosh HDを削除.Mojaveを再インストール.これで,きれいさっぱりになったMacになる.ここで,Homebrewやら何やらを入れてInkscapeがきちんと動くか確認しておく.結果はいけた.brew doctorでも文句言われなかったし,完璧.
続いて,バックアップで再現する.クリーンインストールしたMacでは設定がまた変わってるので,
sudo tmutil setdestination /Volumes/TimeMachine/
しておく.移行アシスタントから,Timemachineでの復元を選択.あとは待てば終了.きちんと使えるようになった.
まとめ
なんでInkscape使えなくなったんだろうね.わっかんねえな.
コメントをお書きください