ディスク上の何も変更せずにコマンドラインでDNSサーバーを変更する方法はありますか?
最近、レスキューセッションを起動し、IPアドレス(DHCPを使用)を取得しましたが、DNSサーバーは取得していません。私のネットワーク設定は通常nm-applet
ではなくデスクトップセッションで/etc/network/interfaces
を使用して行われるため、このレスキューセッションだけにDNSサーバーを提供し、ディスクには何も書き込まないようにします。
これは通常/run/resolvconf/resolv.conf
を編集することで可能です。しかし、resolvconf
は、ubuntu 14.04のレスキューセッションで実行されていないようです。
ファイルを編集せずにインターフェイスを設定できるネットワーク設定に似たものがあることを望んでいました:
# ifconfig eth0 192.168.2.5 netmask 255.255.255.0
# route add default gw 192.168.2.1
ubuntu 14.04のレスキューセッションでDNSに対してこれを行う方法はありますか?
私はこれを行う方法を見つけました:
dNSサービスを強制終了します(もっと微妙な方法があるかもしれません)。
# killall dnsmasq
目的のアップストリームサーバーを使用してサービスを再起動します。
# dnsmasq --server=192.168.2.1
新しいubuntu(systemd
のあるもの)では次のようになります:
# systemd-resolve -i enp0s31f6 --set-dns=192.168.2.1 # --set-dnssec=true
確認する:
# systemd-resolve --status
このディレクトリに移動します/etc/resolvconf/resolv.conf.d
su権限でviまたはvimを使用してヘッドファイルを編集します
Sudo vi /etc/resolvconf/resolv.conf.d/head
ファイルに次の行を追加します
nameserver *DNS server IP*
ファイルを保存し、resolvconfユーティリティを使用して、次のコマンドで入力した静的DNSサーバーアドレスを設定します
Sudo resolvconf -u
これを機能させるために、au.archive.ubuntu.com
を/etc/hosts
ファイルに追加し、PCでpingして取得したIPアドレスを使用しました。
その後、apt update
を実行し、解決しました。