FreeBSD Daily Topics
2012年8月16日 pkg(8)でソフトウェアをすべて削除する方法と自動インストール]
この記事を読むのに必要な時間:およそ 2 分
pkgng
- How to delete all installed softwares by pkg(8)
pkg(8)経由でインストールしたソフトウェアをすべて削除するには,deleteサブコマンドに-aオプションを指定します。たとえば次のように操作します。このケースで,すべて削除することで2GBの空き領域ができるという出力がでています。
# pkg delete -a The following packages will be deinstalled: xorg-drivers-7.5.2 xorg-fonts-7.5.1 xcursor-themes-1.0.3_1 xorg-apps-7.5.2 xorg-docs-1.6,1 ...略... libX11-1.4.4,1 kbproto-1.0.5 libxcb-1.7 libXdmcp-1.1.0 libpthread-stubs-0.3_3 libXau-1.0.6 xproto-7.0.22 pkg-config-0.25_1 The deinstallation will free 2 GB Proceed with deinstalling packages [y/N]: y Deinstalling xorg-drivers-7.5.2... done Deinstalling xorg-fonts-7.5.1... done Deinstalling xcursor-themes-1.0.3_1... done Deinstalling xorg-apps-7.5.2... done Deinstalling xorg-docs-1.6,1... done Deinstalling xorg-libraries-7.5.1... done Deinstalling gio-fam-backend-2.28.8_1... done ...略... Deinstalling libxcb-1.7... done Deinstalling libXdmcp-1.1.0... done Deinstalling libpthread-stubs-0.3_3... done Deinstalling libXau-1.0.6... done Deinstalling xproto-7.0.22... done #pkg(8)コマンドそのものも削除されるため,pkg delete -aを実行したあとでpkg(8)を実行すると次のように最新のpkg(8)をダウンロードするかどうかの確認が表示されます。
# pkg delete -a The package management tool is not yet installed on your system. Do you want to fetch and install it now? [y/N]: N #pkg(8)でインストールされたソフトウェアのパッケージファイルは/var/cache/pkg/All/ディレクトリに保存されているため,もう一度インストールする作業は短時間で済みます。pkg(8)を使っていて解決できない不整合が発生した場合には,いったんすべてpkg delete -aしてからもう一度インストールしなおす方法が簡単です。
たとえば次のようなスクリプトを用意しておいて,pkg delete -aを実行したあとに自動でインストールを実施するといった方法が考えられます。
#!/bin/sh yes | pkg yes | pkg update yes | pkg install \ zsh \ bash \ xorg \ compiz-fuzion \ lxterminal \ leadpad \ pcmanfm \ gtk-engines2 \ gnome-themes \ lxde-icon-theme \ ja-font-std \ ja-font-ipaex \ ja-font-ipa-uigothic \ ja-font-mona-ipa \ ja-ibus-mozc \ ja-nkf \ vim-lite \ chromium \ firefox \ opera \ thunderbird \ sylpheed \ pidgin \ sudo \ smartmontools \ topless \ tmux \ tree \ lha \ lv \ git \ subversion-1.7.5 \ #とくにPorts Collectionと併用している場合,不整合が発生してpkg upgradeが実行できない状況になることがありますので,そうした場合にはいったんすべて削除してから作業をやり直すことになります。現在はpkg-configがpkgconfigに移行したことが原因でPorts Collectionとpkg(8)は不整合が発生しやすい状況になっているため,この方法は覚えておくと便利です。
FreeBSD Daily Topics
- 2012年8月24日 Raspberry PiでFreeBSDを動作させる方法
- 2012年8月22日 EuroBSDCon 2012旅費支援
- 2012年8月21日 EuroBSDCon 2012,オンライン登録開始
- 2012年8月20日 第10回FreeBSD勉強会:ストレージの管理:GEOM,UFS,ZFS基礎[後編]
- 2012年8月17日 Hyper-V FreeBSDドライバ,公開開始
- 2012年8月16日 pkg(8)でソフトウェアをすべて削除する方法と自動インストール]
- 2012年8月15日 pkg(8)でソフトウェアをアップグレードする方法
- 2012年8月14日 pkg(8)とPorts Collectionを共用する場合のコツ
- 2012年8月13日 FreeBSD 10-CURRENTでpkg(8)を使う場合のコツ
- 2012年8月10日 次世代パッケージ管理システムpkg(8)の使い方


