人々はこのページをどこからもたらしますか?それらを保存しますか?どのくらい安全ですか?

人々はこのページをどこからもたらしますか?それらを保存しますか?どのくらい安全ですか?

私はmanこれがどのように機能するかを理解しようとしています。残念ながらman man、次の質問に対する回答は提供されていません。

  1. コマンドページが一緒にインストールされていますか、それともmanリモートデータベースから取得されますか?
  2. ウェブから取ったものならどれくらい安全でしょうか? TLSを介して行われますか?
  3. manページをローカルにキャッシュしますか?それでは、定期的に清掃する必要がありますか?

答え1

現代のUnixシリーズシステムではファイルシステム階層標準、マニュアルページは通常、にあるディレクトリツリーに保存されます/usr/share/man。以前のUNIXシリーズシステムでは、この/usr/man

通常、manネットワークはまったく使用されていませんが、誰かがどこかにネットワークベースの実装を実装した可能性があります。

roff通常、マニュアルページは元の古い文書フォーマットシステム(GNU実装名が指定されている)を使用して作成されますgroff。マニュアルページを表示すると、このmanコマンドは現在使用中のウィンドウの幅に適した出力を生成するフォーマッタを介してマニュアルページソースコードを実行します。フォーマッタは、同じソースコードからPostScript、PDF、およびHTMLバージョンのマニュアルページも生成できます。これは、端末スタイルの固定幅テキストに限定されません。

このコマンドは通常、(FHS)またはマニュアルページのディレクトリ階層(以前のシステム)の別々のサブディレクトリにすばやく再表示できるように、マニュアルmanページのフォーマットされたテキストバージョンをページとしてキャッシュします。システムには、このキャッシュを自動的にクリーンアップする基本(通常毎週)クローン操作がすでに含まれている可能性があります。cat/var/cache/man

CUPS印刷システムからPDFへの印刷が有効になっている場合は、man -t ls | lp -d <name of your PDF virtual printer>PDFビューアで実行して結果の出力を確認してください。またはman -Thtml ls > ls_man_page.htmlHTMLバージョンを入手してください。 (これはDebian 10のコマンドman-db実装ですman。フォーマットオプションは他の実装と異なる場合があります。)

答え2

コマンドページが一緒にインストールされるかどうか

はい、一般的にそうです。ただし、もちろん、ローカルパッケージ管理システムを使用せずに、いつでもシステムに新しいカスタムマンページを追加できます。システムパッケージマネージャを使用して、そのマンページcomがどのパッケージから来たのかを判断できます。 Linuxベースのシステムのマンページの大部分は、以下で提供されています。Linuxのマニュアルページプロジェクト

ウェブから取ったものならどれくらい安全でしょうか?

そうではありませんが、他の人が言ったように、誰かが自分の実装を書いたかもしれません。最初の行で混乱が来ると思いますman man

man - an interface to the on-line reference manuals

またはBSDバージョンでは:

man — display online manual documentation pages

バラよりこのLQの質問 説明のために。

楽しんでも見てくださいhttps://explainshell.com。これは、与えられたコマンドのオプションが何を意味するかをすばやく説明する良いサイトです。 https://explainshell.com/explain?cmd=ls+-Alhtrただし、特定のコマンドのローカル実装は異なる場合があり、すべてのオプションをサポートしていない可能性があることに注意してください(特に小規模なBusyboxなどのシステムを使用している場合)。

リモートディレクトリをローカルにマウントし、そこからマニュアルページを見つけるようにman指示できるという点で、確かにネットワーク経由で動作します。たとえば、リモートFreeBSDシステムでは、次のようにマニュアルページを読むことができます。man

$ sshfs freebsd:/usr/share/man /mnt/bsd-manpages
$ MANPATH=/mnt/bsd-manpages man man
$ MAN(1)                                                                                

    BSD General Commands Manual                                                                                   MAN(1)

NAME
     man — display online manual documentation pages

manはページをローカルにキャッシュしますか?それでは、定期的に清掃する必要がありますか?

すでにとてもよく説明しています。テレコムの答え

関連情報