修正:SSHエラー「ホスト名サーバーを解決できませんでした」



問題を排除するために楽器を試してください

ホスト名を使用しようとすると、sshがホスト名を解決できなかったことを示すエラーが表示される場合があります。このエラーが発生した場合は、最初にネットワークに接続していることを確認する必要があります。あらゆるタイプのワイヤレスネットワークのユーザーは、リクエストを完了するのに十分な信号を受信して​​いることを確認する必要もあります。多くの開発者によると、接続の欠如がこれらのエラーの最も一般的な原因です。タイプミスよりもさらに一般的です。



接続がしっかりしていることが確実な場合は、次に誤植がないか確認する必要があります。 IPアドレスまたはある種のリソースロケーター行を誤って入力した可能性があります。情報が表示される方法については気難しいように思われるかもしれませんが、sshソフトウェアは、常に適切なリソースに接続していることを確認する必要があります。さらに、hostsファイルは、接続しようとしているリソースに関して、最終的にsshを間違った方向に向ける可能性もあります。



方法1:不正な形式のホスト名コマンドを解決する

sshの代わりにsshまたはsshと入力するなどの間違いをしなかったとすると、hostnameコマンドの形式が正しくない可能性があります。ソフトウェアは、他の形式ではなくssh user @NAMEとして指定されたコマンドを想定しています。コマンドに適切な権限でターミナルを開きます。通常、sshを使用すると通常のユーザーとして操作でき、スーパーユーザーの権限は必要ありません。



Ctrl、Alt、Tを同時に押してターミナルを開くこともできます。一部のXfce4ユーザーは、Windowsまたはスーパーキーを押しながらTキーを押すことができます。[ダッシュ]、[アプリケーション]、[KDE]、または[ひげ]メニューから、検索してターミナルと入力するか、システムツールから選択してプロンプトを開始できます。グラフィカルユーザーインターフェイスを持たないUbuntuServerまたはRedHat EnterpriseLinuxおよびScientificLinuxのバージョンのユーザーは、Ctrl、Alt、およびF1-F6を押したままにして仮想コンソールにアクセスする必要があります。続行する前にログインする必要があります。

プロンプトが表示されたら、sshコードを発行し、それが以前の形式であることを確認します。たとえば、ネットワークにホスト名が接続されている場合は、ssh root @myPlaceを試すことができます。 IPアドレスに直接接続する場合は、オクトソープ記号を数字に置き換えたコマンドssh root @ ##。#。#。##をお勧めします。



root @ serverまたは同様の何かを書いていることに気付くかもしれません。これは、次のエラーを吐き出します。

ssh:ホスト名サーバーを解決できませんでした:名前またはサービスが不明です

一部のユーザーは、ssh user @serverが常にこのコマンドを書き出す必要がある方法であることを思い出す習慣があります。

方法2:修正 ファイル

あらゆる種類の損傷 ファイルはホスト名の問題を引き起こす可能性もあり、sshは、これらのタイプのエラーに対して、他の場合と同じ警告を表示する場合があります。 hostsファイルを開くにはrootアクセスが必要です。上から端末の1つで作業している場合は、次のように入力できます 須藤ナノ または
編集のためにファイルを開きます。 sudoプロンプトがパスワードを要求します。

デスクトップ環境の内部から作業している場合は、アプリケーションラインを開くことをお勧めします。これを行うには、使用しているデスクトップ環境に応じて、WindowsまたはスーパーキーとRを押したまま、AltキーとF2キーを押すか、ダッシュをクリックします。行がある場合は、次のように入力します GTK +またはKDEQtベースのアプリケーションを使用しているかどうかによって異なります。 geditやkateの代わりにgvim、leafpad、mousepadを使用することをお勧めします。

いずれの場合も、hostsファイルをロードしているはずです。読み取りおよび書き込みアクセス権があることを確認してから、ファイルの先頭を確認してください。正しく機能させるには、次の2行が必要です。

127.0.0.1ローカルホスト

127.0.1.1 YourHostName

YourHostNameには、マシンの実際のホスト名が含まれている必要があります。 IPv6ネットワークを使用している場合は、次のものも必要になる場合があります。

:: 1 ip6-localhost ip6-loopback

fe00 :: 0 ip6-localnet

ff00 :: 0 ip6-mcastprefix

ff02 :: 1 ip6-allnodes

ff02 :: 2 ip6-allrouters

IPv4テクノロジーのみを使用するある種のネットワークを使用している場合は、ほとんどの状況で最初の2つを正しく設定するだけで済みます。しかし、現代のインターネット接続は急速にIPv6標準に移行しているため、これらを単独で設定する時代は急速に消えつつあります。 Linuxディストリビューションでこれらの設定を構成しておく必要がありますが、誤ったパッケージや単にユーザーエラーによって、hostsファイルが破損し、接続が間違った場所にある場合があります。

タイトルバーを読み取るグラフィカルテキストエディタを使用している場合、実際に保存することはできず、gksuまたはkdesuを正しく使用していません。あるいは、ff02 :: 2 ip6-allroutersの後に他の行がある場合があります。これらの行は、これらの他のコードのいずれかと関係がない限り、触れる必要はありません。これらは他の割り当ての一部であり、hostsファイルを使用してユーザーが特定のサイトにアクセスするのをブロックしているシステムを使用している場合は、かなりの数の割り当てがある可能性があります。ただし、重複する行をコメントアウトする必要があります。これは、行の先頭に#記号を追加することで実行できます。前の各行は1回だけ出現する必要があり、指定された名前のいずれにも複数の割り当てを設定する必要はありません。これにより、sshおよび他のすべてのネットワークプログラムが最後の割り当てを実行するように強制されますが、これは間違っている可能性があります。

編集が完了したらファイルを保存し、その直後に必ず閉じてください。回避できる場合は、hostsファイルに不要な変更を加えたくないので、ここで終了することが非常に重要です。完了したら、sshコマンドを試して、最初の方法で説明した手順で適切に形成されていることを確認してください。それでも問題が解決しない場合は、マシンを再起動することをお勧めします。それ以外の場合は、sshでこれ以上問題が発生することはありません。

読んだ4分