'last -d'は本当に遅い

'last -d'は本当に遅い

1秒以内にコマンド(および)を実行できますが、last実行するとlast -ilast -d私のテストによると、最大5分22秒かかります。

参考として-dフラグを追加すると、次のようになります。

   -d     For non-local logins, Linux stores not only the host name of the
          remote host but its IP number as well.  This  option  translates
          the IP number back into a hostname.

マニュアルページには追加時間がかかるという内容はありません。言ったように、LinuxはすでにIPを保存しているので、ライブホスト名に基づいてIPの遅いリバースルックアップを実行する必要はありません。また、:0ホスト名の値の「照会」(ローカルログイン)は「IPアドレス」の値を返す必要がありますが、遅くなります0.0.0.0

この-dフラグはすべてのコンピュータで遅いですか、それとも私だけですか?これは、どこかにあるファイルが破損している、アクセスできない、または読みにくいという意味ですか?

ちなみに私は走っています。32ビットUbuntu 13.10(まだアップグレードされていません)。

ベストアンサー1

DNS検索の順序は何ですか/etc/nsswitch.conf?最初のオプションとして提供する必要がありますfiles

hosts:      files mdns4_minimal [NOTFOUND=return] dns myhostname

システムで検索順序を確認することをお勧めします。

同じテストを実行しましたが、結果は47秒でしたlast -d

0.0.0.0 localhostその後、これを追加し、/etc/hosts実行には0.031秒しかかかりませんlast -d

注 - 削除した0.0.0.0理由は次のとおりです。ウィキペディアによると、そこに置くことは無効です。

おすすめ記事