FreeBSDのインストールが終わり、これからサーバーの構築を始めますがコンソール画面では何かと作業がしにくいので、TeraTerm等を使用しWindowsから操作するためSSH接続の設定をとりあえず変更します。
FreeBSDのコンソール画面で下記コマンドを入力
# vi /etc/ssh/sshd_config
61行目
#PasswordAuthentication no → PasswordAuthentication yes に変更し、下記コマンドで設定を反映させる
# service sshd restart
これでWindowsのTeraTermからSSH接続できます(TeraTermでの設定は他のOSの初期設定を参照してください)
Contents
1. バイナリーの更新
カーネルなどのバージョン情報の表示
1 2 |
# uname -srm FreeBSD 13.3-RELEASE amd64 |
利用可能なすべてのバイナリ更新(セキュリティアップデート)を取得
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# freebsd-update fetch Looking up update.FreeBSD.org mirrors... 2 mirrors found. Fetching public key from update2.freebsd.org... done. Fetching metadata signature for 13.2-RELEASE from update2.freebsd.org... done. Fetching metadata index... done. Fetching 2 metadata files... done. Inspecting system... done. Preparing to download files... done. Fetching 22 patches.....10....20. done. Applying patches... done. The following files will be updated as part of updating to 13.2-RELEASE-p1: /bin/freebsd-version /boot/kernel/kernel /boot/kernel/mpr.ko /boot/loader /boot/loader.efi /boot/loader_4th /boot/loader_4th.efi /boot/loader_lua /boot/loader_lua.efi /boot/loader_simp /boot/loader_simp.efi /boot/pxeboot /boot/zfsloader /usr/lib/debug/boot/kernel/kernel.debug /usr/lib/debug/boot/kernel/mpr.ko.debug /usr/lib/libpam.a /usr/lib/pam_krb5.so.6 /usr/lib32/libpam.a /usr/lib32/pam_krb5.so.6 /usr/share/man/man8/pam_krb5.8.gz /usr/src/lib/libpam/modules/pam_krb5/pam_krb5.8 /usr/src/lib/libpam/modules/pam_krb5/pam_krb5.c /usr/src/stand/i386/libi386/comconsole.c /usr/src/sys/conf/newvers.sh /usr/src/sys/dev/mpr/mpr.c |
更新またはアップグレードをインストール
1 2 3 4 5 6 7 8 9 10 11 12 |
# freebsd-update install Creating snapshot of existing boot environment... done. Installing updates... Restarting sshd after upgrade Performing sanity check on sshd configuration. Stopping sshd. Waiting for PIDS: 818. Performing sanity check on sshd configuration. Starting sshd. Scanning //usr/share/certs/blacklisted for certificates... Scanning //usr/share/certs/trusted for certificates... done. |
インストールしたイメージで起動するようにサーバーを再起動
1 |
# shutdown -r now |
更新後のバージョンを確認
1 2 |
# uname -srm FreeBSD 13.3-RELEASE-p1 amd64 |
1 2 3 4 |
# freebsd-version -kur 13.3-RELEASE-p1 13.3-RELEASE-p1 13.3-RELEASE-p1 |
2. PackagesとPorts Collectionの更新
2.1 パッケージシステム (pkgng) の初回実行設定
①初回実行設定
1 2 3 4 5 6 7 8 9 10 11 12 |
# /usr/sbin/pkg The package management tool is not yet installed on your system. Do you want to fetch and install it now? [y/N]: y Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:13:amd64/quarterly, please wait... Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done Installing pkg-1.20.9... Extracting pkg-1.20.9: 100% pkg: not enough arguments Usage: pkg [-v] [-d] [-l] [-N] [-j <jail name or id>|-c <chroot path>|-r <rootdir>] [-C <configuration file>] [-R <repo config dir>] [-o var=value] [-4|-6] <command> [<args>] For more information on available commands and options see 'pkg help'. |
➁確認
インストール済みパッケージ一覧が表示されたら OK
1 2 |
# pkg info pkg-1.20.9 Package manager |
2.2 Packagesの更新
packagesはpkgコマンドを使用してコンパイルを必要とせずアプリケーションをインストールできます。しかし、packagesだけですべてのアプリケーションをインストールできません。依存関係が邪魔をして必要なアプリが削除されることもあります。
1 2 3 4 5 6 7 |
# pkg update -f Updating FreeBSD repository catalogue... Fetching meta.conf: 100% 163 B 0.2kB/s 00:01 Fetching packagesite.pkg: 100% 7 MiB 7.2MB/s 00:01 Processing entries: 100% FreeBSD repository update completed. 33643 packages processed. All repositories are up to date. |
1 2 3 4 5 6 7 8 9 |
# pkg upgrade Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date. Updating database digests format: 100% Checking for upgrades (1 candidates): 100% Processing candidates (1 candidates): 100% Checking integrity... done (0 conflicting) Your packages are up to date. |
2.3 Ports Collectionのインストール
FreeBSD に付属の portsnap を用いて,ポーツ・コレクション(ports collection) をダウンロード,アップデート(更新)する.
①ポーツ・コレクション(ports collection) のダウンロードと展開
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# portsnap fetch Looking up portsnap.FreeBSD.org mirrors... 5 mirrors found. Fetching public key from dualstack.aws.portsnap.freebsd.org... done. Fetching snapshot tag from dualstack.aws.portsnap.freebsd.org... done. Fetching snapshot metadata... done. Fetching snapshot generated at Sun Apr 7 09:09:55 JST 2024: 5df03a7caabbb9064ce1f11d6769964eecbbfc74abc53f 106 MB 55 MBps 02s Extracting snapshot... done. Verifying snapshot integrity... done. Fetching snapshot tag from dualstack.aws.portsnap.freebsd.org... done. Fetching snapshot metadata... done. Updating from Sun Apr 7 09:09:55 JST 2024 to Sun Apr 7 13:02:13 JST 2024. Fetching 5 metadata patches... done. Applying metadata patches... done. Fetching 0 metadata files... done. Fetching 3 patches. (3/3) 100.00% done. done. Applying patches... done. Fetching 6 new ports or files... done. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# portsnap extract ------------------ ------------------ /usr/ports/x11/xvidtune/ /usr/ports/x11/xvinfo/ /usr/ports/x11/xvkbd/ /usr/ports/x11/xvmcinfo/ /usr/ports/x11/xvt/ /usr/ports/x11/xwatchwin/ /usr/ports/x11/xwayland-run/ /usr/ports/x11/xwaylandvideobridge/ /usr/ports/x11/xwd/ /usr/ports/x11/xwininfo/ /usr/ports/x11/xwinwrap/ /usr/ports/x11/xwit/ /usr/ports/x11/xwud/ /usr/ports/x11/xxkb/ /usr/ports/x11/xzoom/ /usr/ports/x11/yad/ /usr/ports/x11/yakuake/ /usr/ports/x11/yalias/ /usr/ports/x11/yeahconsole/ /usr/ports/x11/yelp/ /usr/ports/x11/zenity/ /usr/ports/x11/zutty/ Building new INDEX files... done. |
➁Port Collectionのインストール
OSインストールでportsをインストールしていない場合はこのまま進めてください。
portsをインストールした場合は、今後、gitを使用するのであれば既にインストール済みのPorts Collectionを削除してから作業をすすめてください。
1 |
# rm -rf /usr/ports |
1 2 3 4 5 6 7 8 9 10 |
# pkg install git # git clone https://git.FreeBSD.org/ports.git /usr/ports Cloning into '/usr/ports'... remote: Enumerating objects: 6165976, done. remote: Counting objects: 100% (936/936), done. remote: Compressing objects: 100% (120/120), done. remote: Total 6165976 (delta 923), reused 816 (delta 816), pack-reused 6165040 Receiving objects: 100% (6165976/6165976), 1.22 GiB | 12.19 MiB/s, done. Resolving deltas: 100% (3724852/3724852), done. Updating files: 100% (157395/157395), done. |
➂ポーツ・コレクションを用いて pkg をインストールする場合
make stoppedする場合---make deinstall →make reinstallを実行する
1 2 |
# cd /usr/ports/ports-mgmt/pkg # make install |
2.4 Ports Collectionのアップデート
①portsnapを使用する方法
1 |
# portsnap update |
➁portmasterを使ったポートのアップグレード
portmaster を探す
1 2 3 |
# cd /usr/ports # echo */portmaster ports-mgmt/portmaster |
portmaster のインストール
1 2 3 4 5 6 7 8 9 10 |
# cd /usr/ports/ports-mgmt/portmaster # make install clean -------- -------- ====> Compressing man pages (compress-man) ===> Installing for portmaster-3.29_2 ===> Checking if portmaster is already installed ===> Registering installation for portmaster-3.29_2 Installing portmaster-3.29_2... ===> Cleaning for portmaster-3.29_2 |
アップデートを検索する
1 |
# portmaster -L |
portmaster を用いて一括アップデート
portmasterは既存のポートを削除する前にバックアップパッケージを作成します。もし
新バージョンのインストールが成功すると、Portmasterはバックアップを削除します。
1 |
# portmaster -a |
代表的なオプションの例
-b : Portmasterが自動的にバックアップを削除しない
-i : Portmasterを対話モードで起動し、各ポートをアップグレードする前に確認を求める
アップグレード中にエラーが発生した場合は、-f を追加してすべてのポートをアップグレードし、再構築する
1 |
# portmaster -af |
➁Portupgradeを使ったポートのアップグレード
portupgradeをインストールする
1 2 |
# cd /usr/ports/ports-mgmt/portupgrade # make install clean |
インストールされているポートのリストをスキャンし、不整合をすべて修正する
1 |
# pkgdb -F |
システムにインストールされているすべての古いポートをアップグレードする
1 |
# portupgrade -a |
個々のアップグレードの確認を求めながらアップグレードする場合
1 |
# portupgrade -ai |