ฉันจะปิดการใช้งานการแก้ไขระบบใน Ubuntu 17.04 ได้อย่างไร
ปิดใช้งานด้วยsystemctl disable
ไม่ทำงานดูเหมือนว่าจะเริ่มบริการใหม่ (โดย Networkmanager หรือไม่)
ฉันจะปิดการใช้งานการแก้ไขระบบใน Ubuntu 17.04 ได้อย่างไร
ปิดใช้งานด้วยsystemctl disable
ไม่ทำงานดูเหมือนว่าจะเริ่มบริการใหม่ (โดย Networkmanager หรือไม่)
คำตอบ:
วิธีนี้ใช้ได้กับ Ubuntu รุ่น 17.04 (Zesty), 17.10 (Artful), 18.04 (Bionic), 18.10 (Cosmic) และ 19.04 (Disco):
ปิดใช้งานและหยุดบริการที่แก้ไขโดย systemd:
sudo systemctl disable systemd-resolved
sudo systemctl stop systemd-resolved
จากนั้นใส่บรรทัดต่อไปนี้ใน[main]
ส่วนของคุณ/etc/NetworkManager/NetworkManager.conf
:
dns=default
ลบ symlink /etc/resolv.conf
rm /etc/resolv.conf
รีสตาร์ท NetworkManager
sudo systemctl restart NetworkManager
นอกจากนี้โปรดทราบว่าการปิดใช้งาน systemd-resolvd อาจทำให้การจำแนกชื่อใน VPN สำหรับผู้ใช้บางคนไม่ดีขึ้น ดูข้อผิดพลาดนี้บน launchpad (ขอบคุณ Vincent)
ฉันเพิ่งอัพเกรดเป็น (k) Ubuntu 17.04 และฉันก็สะดุดเมื่อเปลี่ยนเป็น systemd
การตั้งค่าของฉันเป็นเรื่องปกติฉันคิดว่าฉันมีผู้ให้บริการ DNS ใน HUB บรอดแบนด์ของฉันและนี่คือแหล่งข้อมูลหลักของฉันสำหรับอุปกรณ์ทั้งหมดในเครือข่ายของฉัน (ซึ่งฉันมีไม่กี่)
มีความงามอยู่บ้างใน systemd มันไม่ได้เลวร้ายนัก แต่สิ่งที่แย่จริง ๆ ก็คือเอกสารประกอบการขาดการสื่อสารจากทีมอูบุนตูและ gung-ho "เราแค่เปลี่ยนมันทั้งๆ
ทางออกสำหรับฉันหลังจากผมร่วงบางส่วนคือการแก้ไข /etc/systemd/resolved.conf:
[Resolve]
DNS=192.168.1.254 # <-- change to your router address
#FallbackDNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844
Domains=lan # <-- change to your localdomain name (maybe .local)
#LLMNR=yes <-- I dabbled with this for a while but it doesn't matter
#DNSSEC=no
#Cache=yes
#DNSStubListener=udp
หลังจากไม่เข้าใจว่าทำไมสิ่งนี้ถึงใช้งานไม่ได้ฉันคิดว่าสิ่งที่ต้องการก็คือเปลี่ยน /etc/resolv.conf ไปเป็นอันที่จัดเตรียมโดย systemd นี่ไม่ใช่กรณีในการติดตั้งออกจากกล่อง (สำหรับเหตุผลที่ไม่รู้จักกับฉัน)
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
เซิร์ฟเวอร์ DNS ในเครื่องไม่ได้ใช้งานและคำขอ DNS ทั้งหมดจะถูกส่งไปที่ HUB ของฉัน
ฉันคิดว่านี่เป็นทางออกที่ดีกว่าการตัดและวางโซลูชันอื่น ๆ เนื่องจาก systemd-resolv เป็นค่าเริ่มต้นต่อไป
ปัญหาที่เกี่ยวข้องกับ btw คือ /etc/nsswitch.conf นั้นทำหมัน
คุณควรอ่าน:
โฮสต์: ไฟล์ mdns4_minimal dns [NOTFOUND = return] แก้ไข [! UNAVAIL = return] dns
นี่เป็นการกำหนดค่าที่สับสนเนื่องจาก [NOTFOUND = return] หมายถึงการประมวลผลสิ้นสุดลงที่นั่น รายการหลังจากนั้นจะไม่ถูกใช้
หากคุณมีปัญหาการรั่วไหลของ VPN และไม่สามารถหาวิธีการตั้งค่า systemd (เช่นฉัน) คุณสามารถลบออกได้ตามวิธีที่อธิบายไว้ในคำตอบแรก แต่ไม่เพิ่มdns=default
บรรทัดเพราะมันจะเปิดใช้งานเนมเซิร์ฟเวอร์ 127.0 .0.1 ในการตั้งค่าเราเตอร์เป็น DNS ให้สร้างไฟล์ "tail" ใน/etc/resolvconf/resolv.conf.d/
โฟลเดอร์ของคุณเพื่อเพิ่มบรรทัดnameserser 192.168.1.1
ทำอย่างไรln -sf /var/run/resolved/resolv.conf /etc/resolv.conf
ถ้าคุณมีไฟล์นี้ยุ่งอยู่