Macでアプリケーションをアンインストールする際、
「アプリケーションフォルダ(Application)」にあるものをそのままゴミ箱に持って行って
削除している方も多いのではないだろうか。
しかし、Cisco Anyconnect Secure Mobility Client のように、アンインストール用のプログラムが用意されているにも関わらず、うっかりゴミ箱に放り込んで完全に削除してしまった際に起きるハマりが以下である
- 再インストールしようとすると**「既にインストール済みです」**と怒られる
- アンインストール用のプログラムも無い、そのまま消してしまった。
- あったとしても**「削除済みです」**
- どこにゴミをおいているのかわからないのでクリーンに出来ない
- 調べてもよくわからない上にまともな前例が無いので結局クリーンインストール
非常にどうしようもない。というより一番最後は**「こんな馬鹿な事するのは私だけ」**と思い知らされる瞬間だったりする。悔しい。
↓実際にAppleの公式コミュニティでもこのようにお説教されている
「アンインストール出来てませんよ、それ。 サードパーティ製のソフトウェアはドラッグアンドドロップでアプリケーションフォルダ内のものをゴミ箱に移してはならない」
・・・
とりあえず今回はどうしても業務で使わなければならず、クリーンインストールもしたくない為、Cisco Anyconnect Secure Mobility Clientの再インストールが出来るようにするまでを記す。
#行ったこと1
Q. How do I uninstall Cisco VPN Client on Mac OS X?
手動で片っ端からファイルを削除する
sudo -s
rm -rf /System/Library/StartupItems/CiscoVPN
rm -rf /Library/StartupItems/CiscoVPN
rm -rf /System/Library/Extensions/CiscoVPN.kext
rm -rf /Library/Extensions/CiscoVPN.kext
rm -rf /Library/Receipts/vpnclient-kext.pkg
rm -rf /Library/Receipts/vpnclient-startup.pkg
reboot
一般的なバージョンの人は一旦これでOK。
どうやら入れたVPNクライアントのバージョンが 4.9.01.0180の場合はこれも必要らしい。
sudo -s
rm -rf /Cisco\ VPN\ Client.mpkg
rm -rf /com.nexUmoja.Shimo.plist
rm -rf /Profiles
rm -rf /Shimo.app
exit
以下は更に古いバージョンや、Shimoとかを使ってる人向けらしい
sudo -s
rm -rf /Library/Application\ Support/Shimo
rm -rf /Library/Frameworks/cisco-vpnclient.framework
rm -rf /Library/Extensions/tun.kext
rm -rf /Library/Extensions/tap.kext
rm -rf /private/opt/cisco-vpnclient
rm -rf /Applications/VPNClient.app
rm -rf /Applications/Shimo.apprm -rf /private/etc/opt/cisco-vpnclient
rm -rf /Library/Receipts/vpnclient-api.pkg
rm -rf /Library/Receipts/vpnclient-bin.pkg
rm -rf /Library/Receipts/vpnclient-gui.pkg
rm -rf /Library/Receipts/vpnclient-profiles.pkg
rm -rf ~/Library/Preferences/com.nexUmoja.Shimo.plist
rm -rf ~/Library/Application\ Support/Shimo
rm -rf ~/Library/Preferences/com.cisco.VPNClient.plist
rm -rf ~/Library/Application\ Support/SyncServices/Local/TFSM/com.
nexumoja.Shimo.Profiles
rm -rf ~/Library/Logs/Shimo*
rm -rf ~/Library/Application\ Support/Shimo
rm -rf ~/Library/Application\ Support/Growl/Tickets/Shimo.growlTicket
exit
ただし、これらを行っても再インストールは出来なかった。つまり、ゴミファイルがまだ残っているのである。
それならもう「インストールするやアンインストールする時に参照したりいじるフォルダ・ファイルを片っ端から見ていこう」と思って以下を行った。
#行ったこと2
###vpn.pkgの中身を開く
anyconnectをダウンロードしてきた際、以下のようにdmgではなくpkg形式で構築されている。
dmg形式と違ってpkg形式はフリーソフトを使わないと中身が開けなかった。
-
unpkg をインストールする。※Mac OS X 11.2でも動作を確認
-
unpkgを起動したら、Dockに[vpn.pkg]をドラッグドロップする
-
ターミナル上からアンパッケージしたデータの中(デフォルトだとデスクトップ)にあるスクリプトを起動する
$sudo ~/Desktop/vpn/opt/cisco/anyconnect/bin/vpn_uninstall.sh
Uninstalling Cisco AnyConnect Secure Mobility Client...
find: /Applications/Cisco: No such file or directory ←多分アプリケーションフォルダのやつ消したら出るやつ
Successfully removed Cisco AnyConnect Secure Mobility Client from the system.
これでゴミデータが消える。
今回の場合はvpn_uninstall.shを叩くだけで
Cisco Anyconnect Secure Mobility Clientの再インストールが可能になった。
場合によっては同フォルダにある anyconnect_uninstall.shも叩くと良いかもしれない。
#参考