FreeBSD にセキュリティパッチを当てようとしたのだが、
/usr/src
がまるっきり消えていた。
調べてみると FreeBSD のソースコード管理はかなり昔に cvs から subversion に変更になっていた。
cvsup, csup に替わる svnup というのがあるらしいのでインストール。
# portinstall net/svnup
インストールできたのでコマンドをとりあえず入力してみた。
# svnup
Usage: svnup <section> [options]
Please see /usr/local/etc/svnup.conf for the list of <section> options.
Options:
-4 Use IPv4 addresses only.
-6 Use IPv6 addresses only.
-b Override the specified section's Subversion branch.
-f Display the local files that do not exist in the repository.
-h Override the specified section's hostname or IP address.
-k Override the location where known file lists are stored.
-l Override the specified section's destination directory.
-n Display the section's most recently downloaded revision number and exit.
-o Override the specified section's default port.
-p Override the specified section's protocol (svn, http, https).
-r The revision number to retreive (defaults to the branch's
most recent revision if this option is not specified).
-t Remove all local files that are not found in the repository.
Note: this will remove files in directories like /usr/ports/distfiles/
and /usr/src/sys/amd64/conf/. Proceed with caution.
-v How verbose the output should be (0 = no output, 1 = the default
normal output, 2 = also show a progress indicator, 3 = also show
command and response text plus command response parsing codes).
-V Display svnup's version number and exit.
どうやら /usr/local/etc/svnup.conf
を見て引数に <section>
を渡せと言っているみたい。
/usr/local/etc/svnup.conf
のフィルの中身は以下の感じでした。
# $FreeBSD$
#
# Default configuration options for svnup.conf.
[defaults]
work_directory=/var/tmp/svnup
#host=svn.freebsd.org
#host=svn0.us-west.freebsd.org
#host=svn0.us-east.freebsd.org
#host=svn0.eu.freebsd.org
protocol=https
verbosity=1
trim_tree=0
extra_files=0
[release]
branch=base/releng/9.1
target=/usr/src
[ports]
branch=ports/head
target=/usr/ports
[stable]
branch=base/stable/9
target=/usr/src
[current]
branch=base/head
target=/usr/src
[defaults]
セクションの host が全てコメントアウトされていたので、
1つをコメント外してあとは各セクションの branch の設定を修正。
修正後に以下のコマンドでソースコードを取得。
# svnup release