NISの設定が終わりましたので、各種NISマップを引けるようになりました。
そこで、この後の各種設定他が楽になるように、NISマップを使った”am-utils”の設定を行っておきます。【注*1】
小生の、”作業記録”&”健忘禄”&”拙宅標準手順書もどき”になっておりますことをご容赦頂ければ幸いです。m(_o_)m
現在は、automount/autofsが主流のようですが(*2、*3、*4)、
”am-utils[*5]"では、正規表現的にマップを記述でき、かゆいところに手が届くため、
NFSクライアントである、アーキテクチャ/バージョンの異なる各サーバーから、ディレクトリ構造が同じように見る事ができます。
1. am-utilsのコンパイル・インストール
インストールディスクにあるパッケージからインストールするのが速いのですが、小生はportsコレクションからインストールすることが結構あります。
理由は
- プチカスタマイズしたい場合にはコンパイルする必要があり、portsコレクションであれば、対処できる。
- コンパイルに際して、/src/ports/distfilesにソースファイルがダウンロードされるので、必要な各アプリのソースが手元に残る。
ことから、今回は、portsコレクションからインストールします😀(*6)。
root@file_sv:# cd /usr/ports/sysutils/am-utils | ; | portsコレクションに移動。 |
root@file_sv:# make clean |
; | 一応、ディレクトリのお掃除。 |
root@file_sv:# make | ; | コンパイル。 |
root@file_sv:# make install | ; | インストール。 |
root@file_sv:# cd | ; | ホームディレクトリに戻る。 |
2. am-utilsの設定・起動・確認
(1)”/etc/amd.conf”の作成
root@file_sv:# cd /etc | ; |
/etcに移動。 |
root@file_sv:# vi /etc/amd.conf | ; | am-utilsのコンフィグレーションファイルを作成する。 |
GLOBAL OPTIONS SECTION [ global ] # DEFINE AN AMD MOUNT POINT [..] |
パラメータfull_osの設定 パラメータosver 設定
|
(2)”/etc/rc.conf”の修正
”amd-utils”を自動起動させるために、”/etc/rc.conf”を修正します。
"/usr/local/etc/rc.d"に”amd-utils”の起動スクリプトがあるのですが、直接実行しようとすると、”/etc/rc.confを修正しろ!”と叱られます😅。
root@file_sv:# cd /etc | ; |
/etcに移動。 |
root@file_sv:# vi /etc/rc.conf | ; | rc.confの設定変更。 |
下記の黄色字部分を追加します。
[..] # amd_enable="YES" [..] |
|
(3)起動
rc.conf設定を反映させるために、再起動します。
root@file_sv:# reboot |
|
(4)動作確認
”TeraTerm”でファイルサーバーにログインします。
ユーザーのホームディレクトリがマウントされていれば、正常に動作しています😀。
3. ディレクトリ修正
後々の作業・設定のために、とりあえず、ローカルのディレクトリの内、”ports”と”src”をローカルディスクからリモートディスクに変更しておきます😀。
root@file_sv:# cd /usr |
|
|
root@file_sv:# mv ports ports.local | ||
root@file_sv:# ln -s /nfs/share/ports . | ||
root@file_sv:# mv src src.local | ||
root@file_sv:# ln -s /nfs/share/src . |
これで、カーネルの再コンパイル時に”cd /usr/src/sys”に移動するだけで、
バージョン異なっていても、ファイルサーバー上にある、対応するバージョンのリモートディスクを”/tmp_mnt/share/src”を、
”am-utils”が勝手にマウントしてくれますので、
ファイルサーバーのディレクトリ構造、をnfsクライアント上で意識する必要はなくなります(*8)。
【次回に続く予定】
出典・引用・備考
*1:この投稿の内容は、特定の機種並びに特定の環境での確認結果になります。
同等機種や異なる環境での動作他を保証するものではありませんので、ご留意いただけます様お願いいたします。
*2:SunOS4を使っている時はautomountを使ってましたが、
FreeeBSD/PC98を併用し始めて以降、Unix系OSとして、FreeBSD/PC98やLinuxが増えたうえ、
ハードウェアアーキテクチャもi386/ppcなどが増えたことで、
”am-utils”にたどり着き、以来、使い続けています😀。
*3:当初、マルチアーキテクチャ環境では、ログインスクリプトでaliasを設定して対処していましたが、ログインスクリプト/automountの組み合わせでは、メンテナンス性が悪く、ミスが頻発するようになったこともあります😅。
*4:Ubuntuでは、20.04からam-utilsが利用できなくなっているので😢、Linux系OSでの対処方法は思案中です🤔。
*5:"The Berkeley Automounter Suite of Utilities"、https://www.am-utils.org/、最終閲覧日:2025年5月30日
*6:以下は、ローカルディレクトリで作業していますが、小生の場合、実際にはメインファイルサーバー上のディスクをnfsマウントして、そこで作業しています。
マウントしたnfsディスク上で作業することで、ローカルディスクの節約になる他、ソースファイルなどが複数のマシンに分散するのを防ぐことが出来るためです😀。
*7:小生の場合、他のマシンからftpでコピーして、3のパラメータを修正しています。
*8:”full_os ”、”os”、” osver”変数が適切に設定されていればですが😅。。。