エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


makewhatis、mandbコマンドでLinuxのオンラインマニュアル索引情報を更新

      2020/06/05

makewhatis、mandbコマンドでwhatisデータベースを更新

 

Linuxのコマンドのオンラインマニュアルの whatisデータベース

 
Linuxのコマンドには、オンラインマニュアルが用意されています。
 
そのマニュアルを検索するコマンドには「whatis」「apropos」「man -f」「man -k」があります。
 
「whatis」「man -f」が、完全一致で検索を行い、
「apropos」「man -k」が、部分一致で検索を行います。
 
これらのコマンドで検索をする際に検索対象にするのが「whatisデータベース」と呼ばれる「オンラインマニュアルの検索データベース」です。
 
 
そして、この「whatisデータベース」を作成、更新するコマンドが、「makewhatis」「mandb」となります。
 
「makewhatis」の方が古くからあるコマンドですが、最近の RHEL(Red Hat Enterprise Linux)や CentOS7などでは「makewhatis」がなくなり「mandb」コマンドに置き換えられています。
今後は「makewhatis」は「mandb」に置き換わっていくものと思われます。
 
また、オンラインマニュアルを検索するコマンドは、「whatis」「apropos」「man -f」「man -k」がありますが、これらはすべて「whatisデータベース」を対象に検索を実行しています。
 
新しくコマンドをインストールした場合は、「makewhatis」「mandb」を実行し、「whatisデータベース」を更新します。
 
 
「whatis」「apropos」「man -f」「man -k」コマンドについての解説は書きの記事を参考にしてください。
Linuxのコマンドの情報を調べるwhich、whereis、whatis、apropos、man
 
また、「man」コマンドについては下記の記事を参考にしてください。
Linuxのマニュアルページ表示コマンドmanの解説
 
 

makewhatisコマンド、mandbコマンドの基本形

 
基本形は以下になります。
 

 

 
「makewhatis」「mandb」のいずれもパラメータなしでコマンドのみで実行することで、デフォルトの設定に従い、「whatisデータベース」を更新します。
(「whatisデータベース」がない場合は新規作成をします。)
 
また、これらのコマンドは root権限で実行する必要があります。
 
 

 
上記の通り、「mandb」と入力すると、マニュアルがあるフォルダをチェックし、「whatisデータベース」を更新します。
 
「whatisデータベース」の更新は 1、2秒程度で終了します。
 
 

makewhatisコマンドのオプション

 
「makewhatis」コマンドには下記のオプションがあります。
 

オプション 説明
-u 新しいページの内容で whatisデータベースを更新する
-v 詳細メッセージを表示する
-w manpathとして「man –path」の値を使う

 
オプションは用意されていますが、通常の利用ではオプションを使うことはありません。
 
 

mandbコマンドのオプション

 
「mandb」コマンドには下記のオプションがあります。
 

オプション 説明
-d、–debug デバッグ情報を表示する
-q、–quiet 実行中のメッセージを非表示にする
-c、–create whatisデータベースを最初から作り直す。データベースが破損したとき、仕様が変わったときなどに使用する。
-t、–test 実行のテストを行う。実際に実行はしない。
-f、–filename 指定したファイルだけ更新する。一般的には使用しない。
-c、–config-file= 指定したファイルを設定ファイルとして使用する
-V、–version バージョンを表示する

 
 
オプションは用意されていますが、通常の利用ではオプションを使うことはありません。
 
あえてあるとすれば、「whatisデータベース」が壊れたときに「-c」オプションを使うくらいでしょうか。
 
 

mandbコマンドの設定情報

 
mandbコマンドの設定情報は、「/etc/man_db.conf」にあります。
 
この設定ファイルの中に、mandbコマンドを実行したときに探しに行くオンラインマニュアルのファイルの場所などが記載されています。
 
 

whatisデータベースに関連するコマンド

 
最後に、whatisデータベースに関連するコマンドをご紹介します。
すでに紹介したものも含まれていますが。
 

コマンド 説明
accessdb whatisデータベースの内容をダンプとして出力します。
apropos オンラインマニュアルを検索します。
catman 表示用のマニュアルページを生成、更新します。
lexgrog 指定されたコマンドの 1行サマリー情報を表示します。
man 指定されたコマンドのマニュアルページを表示します。
mandb whatisデータベースを生成、更新します。
manpath $MANPATH の内容を表示します。$MANPATH がない場合は、man.confなどを元に検索のパスを表示します。
whatis オンラインマニュアルを検索します。
zsoelim ファイルの内容を読み込み、.so file形式の記述行を変更します。

 
 
「whatis」「apropos」コマンドについての解説は書きの記事を参考にしてください。
Linuxのコマンドの情報を調べるwhich、whereis、whatis、apropos、man
 
また、「man」コマンドについては下記の記事を参考にしてください。
Linuxのマニュアルページ表示コマンドmanの解説

 - Linuxコマンド

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

cat、less、head、tail、split、sedなどLinuxでファイルを操作するコマンド
cat、less、head、tail、split、sedなどLinuxでファイル、文字列を操作するコマンド

Linuxでファイル、テキストを操作するコマンドのまとめ。cat、less、head、tail、split、tr、sedなど、ファイルを表示、置換、連結、分割などの各コマンドの使い方の紹介と詳細ページの紹介。

Linux findコマンドを使ってn日前のファイルを削除する 3つの記述方法
Linux findコマンドを使ってn日前のファイルを削除する 3つの記述方法

作成からn日経ったファイルを削除したい、そんなときにはfindコマンドを使う。コマンドの記述の方法は3種類あり、それぞれを解説。書き易さもあるがスピードに大きく差がある記述方法もある。

less、moreはページャー、ファイルの中身を表示するLinuxのコマンド
less、moreはページャー、ファイルの中身を表示するLinuxのコマンド

Linuxにはコマンドで実行した結果が長い場合、1画面ごとに区切って表示するコマンドが用意されている。それがページャーと呼ばれるmore、lessだ。この使い方を解説。

Linuxの環境変数でパスの設定をする方法とシェル変数の扱い方を解説
Linuxの環境変数でパスの設定をする方法とシェル変数の扱い方を解説

Linuxでコマンドを設置するパスの設定情報である環境変数「PATH」の確認方法と環境変数「PATH」に新しいパスを追加する方法の解説。Linuxのシェルでの変数の扱い方についての解説も。

Linuxの wcコマンドでファイルの行数、単語数、バイト数、文字数をカウントする
Linuxの wcコマンドでファイルの行数、単語数、バイト数、文字数をカウントする

Linuxの行数、単語数、文字数、バイト数をカウントする「wc」コマンドの使い方の解説。find、lsと組み合わせてファイル数のカウント方法などを解説。

Linuxのファイル表示・結合catの逆処理のtac、revコマンドの解説
Linuxのファイル表示・結合catの逆処理のtac、revコマンドの解説

Linuxにtac、revというコマンドがある。catの逆の処理なのだが、tacは最終行から逆に表示し、revは行末の文字から逆に表示をすることを解説しつつその使い方について詳しく解説をする。

Linuxで使用される主な環境変数・PATH、HOME、PS1・printenv、set、declare
Linuxで使用される主な環境変数・PATH、HOME、PS1・printenv、set、declare

Linuxに設定されている主な環境変数の解説。PWD、HOSTNAME、USER、LANG、HOME、LOGNAME、PS1、PS2、HISTSIZE、HISTFILE、HISTFILESIZE、TERMなどがある。

Linuxのheadコマンドは先頭行から、tailコマンドは最終行から指定した行を表示する
Linuxのheadコマンドは先頭行から、tailコマンドは最終行から指定した行を表示する

Linuxのhead、tailコマンドはファイルの先頭の一部、もしくは、末行の一部を表示するコマンド。行数や文字数で指定をする。tailはログを監視するためのオプションがある。

Linuxのマニュアルページ表示コマンドmanの解説
Linuxのマニュアルページ表示コマンドmanの解説

Linuxにはコマンド操作のオンラインマニュアルが用意されています。そのマニュアルを表示するコマンドが「man」です。「man」コマンドの使い方について解説します。

Linuxのタイムスタンプはmtime、ctime、atimeの3種類。touchコマンドで更新する方法
Linuxのタイムスタンプはmtime、ctime、atimeの3種類。touchコマンドで更新する方法

Linuxのファイルのタイムスタンプにはmtime、ctime、atimeの3種類がある。その違いを詳細に解説しつつ、lsで表示するオプション、touchで更新するオプションを解説。