Score:0

ข้อผิดพลาด Netplan เมื่อพยายามกำหนดค่า

ธง cn

ฉันใช้เซิร์ฟเวอร์ Ubuntu 20.04.3 LTS บน ระยะไกล ราสเบอร์รี่ Pi 4 มันเชื่อมต่อผ่าน WiFi กับเราเตอร์ระยะไกล (IP 192.168.1.1) และฉันได้กำหนดค่าเครือข่ายด้วย netplan อย่างไรก็ตาม หลังจากผ่านไปหลายเดือน ฉันตัดสินใจเปลี่ยนการกำหนดค่า DNS เช่น ลบ DNS ในเครื่องของเราเตอร์ออกแล้วแทนที่ด้วย DNS ของ Cloudflare เมื่อรู้ว่าไฟล์ yaml นั้นไวต่อการเว้นวรรคมาก การเปลี่ยนแปลงเดียวที่ฉันทำคือการลบ "92" และ "68" ดังนั้นไฟล์ตอนนี้จึงเป็นดังนี้:

$cat /etc/netplan/50-cloud-init.yaml
# ไฟล์นี้สร้างขึ้นจากข้อมูลที่จัดทำโดยแหล่งข้อมูล การเปลี่ยนแปลง
# ถึงมันจะไม่คงอยู่ตลอดการรีบูตอินสแตนซ์ หากต้องการปิดใช้งาน cloud-init
# ความสามารถในการกำหนดค่าเครือข่าย เขียนไฟล์
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg ดังต่อไปนี้:
# เครือข่าย: {config: ปิดการใช้งาน}
เครือข่าย:
    รุ่น: 2
    เรนเดอร์: เครือข่าย
    อีเธอร์เน็ต:
        eth0:
            dhcp4: จริง
    ไวไฟ:
        wlan0:
            dhcp4: ไม่
            ที่อยู่: [192.168.1.12/24]
            เกตเวย์ 4: 192.168.1.1
            เนมเซิร์ฟเวอร์:
                ที่อยู่: [1.1.1.1, 8.8.8.8]
            จุดเชื่อมต่อ:
                "ชื่อจุดเชื่อมต่อ":
                    รหัสผ่าน: "รหัสผ่านจุดเชื่อมต่อ"
    รุ่น: 2

อย่างไรก็ตาม เมื่อฉันรัน netplan ฉันได้รับสิ่งต่อไปนี้:

$ sudo netplan ลอง
งานสำหรับ netplan-wpa-wlan0.service ถูกยกเลิก

เกิดข้อผิดพลาด: คำสั่ง '['systemctl', 'stop', 'systemd-networkd.service', 'netplan-wpa-*.service']' ส่งกลับสถานะการออกที่ไม่ใช่ศูนย์ 1

กำลังย้อนกลับ
คำเตือน: กำลังหยุด systemd-networkd.service แต่ยังคงเปิดใช้งานได้โดย:
  systemd-networkd.socket

บางครั้งฉันได้รับข้อผิดพลาดต่อไปนี้แทน:

$ sudo netplan ลอง
งานสำหรับ netplan-wpa-wlan0.service ถูกยกเลิก

เกิดข้อผิดพลาด: คำสั่ง '['systemctl', 'stop', 'systemd-networkd.service', 'netplan-wpa-*.service']' ส่งกลับสถานะการออกที่ไม่ใช่ศูนย์ 1

กำลังย้อนกลับ
งานสำหรับ netplan-wpa-wlan0.service ถูกยกเลิก
Traceback (การโทรครั้งล่าสุดล่าสุด):
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/try_command.py" บรรทัดที่ 84 ใน command_try
    NetplanApply().command_apply(run_generate=True, sync=True, exit_on_error=False)
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/apply.py", บรรทัด 164 ใน command_apply
    utils.systemctl_networkd('หยุด', sync=sync, extra_services=wpa_services)
  ไฟล์ "/usr/share/netplan/netplan/cli/utils.py", บรรทัด 131 ใน systemctl_networkd
    subprocess.check_call (คำสั่ง)
  ไฟล์ "/usr/lib/python3.8/subprocess.py", บรรทัด 364 ใน check_call
    เพิ่ม CalledProcessError (retcode, cmd)
subprocess.CalledProcessError: คำสั่ง '['systemctl', 'stop', 'systemd-networkd.service', 'netplan-wpa-*.service']' ส่งคืนสถานะการออกที่ไม่ใช่ศูนย์ 1

ในระหว่างการจัดการข้อยกเว้นข้างต้น มีข้อยกเว้นอื่นเกิดขึ้น:

Traceback (การโทรครั้งล่าสุดล่าสุด):
  ไฟล์ "/usr/sbin/netplan" บรรทัดที่ 23 ใน <โมดูล>
    netplan.main()
  ไฟล์ "/usr/share/netplan/netplan/cli/core.py", บรรทัดที่ 50 ในหน้าหลัก
    self.run_command()
  ไฟล์ "/usr/share/netplan/netplan/cli/utils.py", บรรทัด 264 ใน run_command
    self.func()
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/try_command.py", บรรทัด 66, ทำงานอยู่
    self.run_command()
  ไฟล์ "/usr/share/netplan/netplan/cli/utils.py", บรรทัด 264 ใน run_command
    self.func()
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/try_command.py" บรรทัดที่ 95 ใน command_try
    self.revert()
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/try_command.py" บรรทัด 118 ย้อนกลับ
    NetplanApply().command_apply(run_generate=False, sync=True, exit_on_error=False)
  ไฟล์ "/usr/share/netplan/netplan/cli/commands/apply.py", บรรทัด 164 ใน command_apply
    utils.systemctl_networkd('หยุด', sync=sync, extra_services=wpa_services)
  ไฟล์ "/usr/share/netplan/netplan/cli/utils.py", บรรทัด 131 ใน systemctl_networkd
    subprocess.check_call (คำสั่ง)
  ไฟล์ "/usr/lib/python3.8/subprocess.py", บรรทัด 364 ใน check_call
    เพิ่ม CalledProcessError (retcode, cmd)
subprocess.CalledProcessError: คำสั่ง '['systemctl', 'stop', 'systemd-networkd.service', 'netplan-wpa-*.service']' ส่งคืนสถานะการออกที่ไม่ใช่ศูนย์ 1

ฉันต้องการให้ระวังเรื่องนี้ให้มาก เพราะฉันไม่ต้องการถูกล็อกอย่างถาวรในกรณีที่เกิดข้อผิดพลาดในการกำหนดค่าเครือข่าย เนื่องจากฉันไม่มีสิทธิ์เข้าถึงในเครื่องเพื่อแก้ไขสิ่งต่างๆ หากจำเป็น (นั่นคือเหตุผลที่ฉันเรียกใช้ netplan ลอง.. ไม่แน่ใจว่ารีบูตระบบแล้วจะถูกล็อกหรือไม่) ข้อเสนอแนะใด ๆ

Score:1
ธง ru

ดูว่าสิ่งนี้สร้างความแตกต่างหรือไม่ ...

บันทึก: ยืนยันว่าไม่มีแท็บ มีเพียงช่องว่าง

บันทึก: การเยื้องปกติคือช่องว่างสองช่อง

เครือข่าย:
    รุ่น: 2
    เรนเดอร์: เครือข่าย
    อีเธอร์เน็ต:
        eth0:
            dhcp4: จริง
            ตัวเลือก: จริง
    ไวไฟ:
        wlan0:
            ที่อยู่: [192.168.1.12/24]
            เกตเวย์ 4: 192.168.1.1
            เนมเซิร์ฟเวอร์:
                ที่อยู่: [1.1.1.1, 1.0.0.1]
            จุดเชื่อมต่อ:
                "ชื่อจุดเชื่อมต่อ":
                    รหัสผ่าน: "รหัสผ่านจุดเชื่อมต่อ"

และสร้าง /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg...

เครือข่าย: {config: ปิดใช้งาน}

แล้ว...

sudo netplan ลอง

และเมื่อคุณพร้อม...

sudo netplan สร้าง

ใช้ sudo netplan

รีบูต

cn flag
ฉันไม่คิดว่าสิ่งนี้จะช่วยได้ อย่างที่คุณเห็น ไฟล์ yaml ของฉันถูกเยื้องและจัดรูปแบบอย่างถูกต้อง ท้ายที่สุดมันใช้งานได้ก่อน
cn flag
อย่างไรก็ตาม ฉันลองเปลี่ยนจาก 4 ช่องว่างเป็น 2 ช่องว่างต่อการเยื้อง แต่ฉันยังคงได้รับข้อผิดพลาดเดิม ไม่ใช่ปัญหาการจัดรูปแบบ yaml แน่นอน
heynnema avatar
ru flag
@Panos คุณใช้ไฟล์ EXACT .yaml ของฉัน... หรือเพียงแค่แก้ไขของคุณเอง ของฉันมีการเปลี่ยนแปลงสองสามอย่าง คุณลบแท็บหรือไม่
cn flag
ดูเหมือนว่าฉันทำพลาดไปอย่างน่าเสียดาย ฉันคัดลอกสิ่งทั้งหมดลงในไฟล์ yaml แต่ไม่ได้แทนที่ SSID และรหัสผ่านด้วยของจริง แม้ว่าฉันได้ `netplan try` แล้ว แต่ดูเหมือนว่าสิ่งนี้จะยังคงอยู่ ฉันได้ให้คนในสถานที่ของฉันทำวงจรไฟฟ้า แต่ฉันยังคงถูกล็อกไม่ให้เข้า ฉันคิดว่า `netplan try` ไม่คงอยู่หลังจากรีบูต! จะให้คนในสถานที่ของฉันเชื่อมต่อกับสายเคเบิลอีเธอร์เน็ต หวังว่าฉันจะสามารถเข้าถึงได้จากระยะไกลด้วยวิธีใดวิธีหนึ่ง
heynnema avatar
ru flag
@Panos นั่นคือ "โอ๊ะโอ" ให้ฉันโพสต์
cn flag
สิ่งแปลกประหลาดจึงเกิดขึ้น `netplan try`` ยังคงให้ข้อผิดพลาดเดิมแม้กับไฟล์ yaml ของคุณ อย่างไรก็ตาม หากฉันรีบูต (โดยไม่เรียกใช้การสร้างหรือนำไปใช้) เซิร์ฟเวอร์ DNS ที่อัปเดตจะอยู่ที่นั่น แม้ว่าเป้าหมายของฉันจะพึงพอใจด้วยวิธีนี้ แต่ฉันพบว่า netplan ใช้งานไม่ได้อย่างมาก (โดยเฉพาะอย่างยิ่งสำหรับระบบไร้หัวระยะไกล) และรถบั๊กกี้ ฉันจะดูวิธีกำจัด netplan เมื่อฉันอยู่ที่ไซต์
heynnema avatar
ru flag
@Panos อย่ากำจัด netplan เพียงตรวจสอบให้แน่ใจว่าการอัปเดตซอฟต์แวร์ของคุณเป็นปัจจุบัน คุณจะมีเวอร์ชันล่าสุด netplan ที่เก่ากว่าอาจมีปัญหาในการลอง ใน RsP4 คุณอาจต้องอัปเดตเป็น 21.04 นอกจากนี้ ให้ทำ `sudo netplan create` และ `sudo netplan apply` และ `reboot`
heynnema avatar
ru flag
@Panos คุณกำลังทำ 'netplan try' หรือ 'sudo netplan try' หรือไม่
cn flag
ฉันทำทุกอย่างตามหนังสือ แก้ไขการเยื้องโดยไม่มีแท็บ ตรวจสอบความถูกต้องของไฟล์ yaml ด้วยโปรแกรมตรวจสอบความถูกต้อง เรียกใช้การอัปเดตทั้งหมด อย่างไรก็ตาม ฉันไม่อยากอัปเดตเป็น 21.04 ฉันอยากใช้เวอร์ชัน LTS ต่อไป แต่อย่างไรก็ตาม ฉันคิดว่านั่นไม่ใช่ปัญหา กำลังทำงานทุกอย่างด้วย sudo ฉันคิดว่าตัวเองเป็นผู้ใช้ระดับกลาง และจากประสบการณ์ทั้งหมดนี้ ฉันคิดว่า netplan นั้นยุ่งยากมาก บั๊ก และไม่เหมาะกับระบบเฮดเลสระยะไกล จะลองดูว่า ifupdown ทำอย่างไร
heynnema avatar
ru flag
@Panos ทำวิจัยบางอย่าง ฉันรู้ว่าการรองรับ RsP4 อย่างเต็มรูปแบบยังไม่มาจนกว่าจะถึงช่วงท้ายเกม... และนั่นอาจเป็นวันที่ 20.10/21.04 ดูบันทึกประจำรุ่น

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา