ข้อผิดพลาดในการแก้ไขปัญหา: Vim ไม่สามารถเปิดไฟล์เพื่อเขียนได้

Troubleshooting Error



Vim คือโปรแกรมแก้ไขข้อความที่ใช้ในระบบปฏิบัติการ Linux ที่ช่วยสร้างและอัปเดตไฟล์ข้อความต่างๆ ที่มีนามสกุลต่างกัน บางครั้ง เมื่อคุณพยายามสร้างไฟล์ด้วยยูทิลิตี้ Vim คุณจะได้รับข้อผิดพลาด: Vim can't open file for writing. สาเหตุของข้อผิดพลาดนี้อาจมากกว่าหนึ่ง

ข้อกำหนดเบื้องต้น:

คุณต้องติดตั้งและกำหนดค่าการกระจาย Linux บนเครื่องของคุณ ในกรณีของเรา เรามี Ubuntu 20.04 Linux distribution ในทางกลับกัน คุณต้องมีสิทธิ์ sudo เพื่อใช้ระบบ Linux และยูทิลิตี้ Vim







การติดตั้งเป็นกลุ่ม:

ในตอนเริ่มต้น คุณต้องแน่ใจว่าคุณมียูทิลิตี้ Vim ติดตั้งอยู่ในการแจกจ่าย Linux ของคุณ สำหรับสิ่งนี้เราจะตรวจสอบก่อนในระบบของเรา ดังนั้น คุณต้องเปิดเทอร์มินัลบรรทัดคำสั่งจากแถบกิจกรรมของเดสก์ท็อป Linux ของคุณ หลังจากนั้นให้รันคำสั่ง Vim ด้านล่างเพื่อรับข้อมูลเกี่ยวกับ Vim ดังที่แสดงในภาพ ไม่มียูทิลิตี้ Vim ติดตั้งอยู่บน Ubuntu 20.04 ของเรา นอกจากนี้ยังแนะนำคำสั่งคำสั่งเพื่อติดตั้ง Vim บนระบบ ใช้หนึ่งในนั้นเพื่อติดตั้ง Vim



$ มา







ถึงคราวที่เราจะติดตั้ง Vim บนระบบ Linux ของเรา ดังนั้น เราต้องใช้คำสั่ง sudo apt เพื่อทำเช่นนั้น ลองใช้คำสั่งด้านล่างเพื่อติดตั้งลงในระบบของคุณ มันจะต้องมีรหัสผ่านบัญชีรูทของคุณเพื่อเริ่มต้นกระบวนการติดตั้ง ป้อนรหัสผ่าน sudo ของคุณและกดปุ่ม Enter เพื่อดำเนินการต่อ คุณจะเห็นว่ามันจะเริ่มติดตั้งและดาวน์โหลดยูทิลิตี้ Vim พร้อมกับบันเดิลอื่นๆ

$sudoฉลาดติดตั้ง ฉันมา




ระหว่างขั้นตอนการติดตั้ง โปรแกรมจะหยุดชั่วคราว และคำถามจะปรากฏขึ้น ระบบจะถามคำถามเพื่อยืนยันการดำเนินการติดตั้งของคุณ ซึ่งระบุว่า: คุณต้องการดำเนินการต่อหรือไม่? [ใช่/ไม่ใช่] . หากคุณต้องการดำเนินการตามขั้นตอนการติดตั้ง Vim คุณต้องแตะ y แล้วกด Enter ไม่เช่นนั้นให้กด n แล้วแตะปุ่ม Enter ดังนั้นเราจึงแตะ Y และกดปุ่ม Enter เพื่อดำเนินการติดตั้ง Vim editor ใน Ubuntu 20.04


จะเริ่มการติดตั้งโปรแกรมแก้ไข Vim ที่เหมาะสม คุณต้องรอสักครู่จนกว่าจะเสร็จสิ้นกระบวนการ

หลังจากการติดตั้ง Vim คุณสามารถตรวจสอบข้อมูลได้โดยใช้คำสั่งเดียวกับด้านล่าง

$ มา

หากระบบ Linux ของคุณเปิดหน้าต่างด้านล่างได้สำเร็จตามที่แสดงในสแนปชอตที่แนบมา คุณก็สามารถใช้โปรแกรมแก้ไข Vim ได้

รับข้อผิดพลาด:

ตอนนี้ เราจะสร้างไฟล์โดยใช้คำสั่ง Vim ใน command shell เราจะสร้างไฟล์นี้ในไดเร็กทอรีใดก็ได้ ลองใช้คำสั่ง Vim ด้านล่างเพื่อสร้างไฟล์ smtpd.conf ในเส้นทางไดเรกทอรีที่ระบุด้านล่าง

$ vim /usr/lib64/sas12/smtpd.conf


หน้าต่างที่แสดงด้านล่างจะเปิดขึ้น โดยมีเส้นทางและชื่อไฟล์แสดงอยู่ที่ด้านล่างของส่วนหัวด้านล่าง ได้เวลาเขียนเนื้อหาของไฟล์นี้ในเส้นทางที่กำหนด

ในการเขียนเนื้อหาของไฟล์และออกจากโปรแกรมแก้ไข Vim ให้ลองใช้คำสั่ง wq ด้านล่างพร้อมกับเครื่องหมายโคลอน : จากนั้นกดปุ่ม Enter เพื่อเรียกใช้คำสั่งนี้

: wq

หลังจากที่คุณแตะปุ่ม Enter คุณจะได้รับข้อผิดพลาด: E212: ไม่สามารถเปิดไฟล์เพื่อเขียนตามที่แสดงในภาพที่ส่งออกด้านล่าง กดปุ่ม Enter เพื่อดำเนินการต่อ

ในการตรวจสอบสาเหตุของข้อผิดพลาดนี้ เราต้องเขียนคำสั่งอื่นในตัวแก้ไข Vim ลองใช้คำสั่ง sudo ด้านล่างในตัวแก้ไข Vim โดยเริ่มจากคีย์เวิร์ด :w ลงท้ายด้วยคีย์เวิร์ด tee และเครื่องหมายเปอร์เซ็นต์ กดปุ่ม Enter เพื่อดูสาเหตุของข้อผิดพลาด

:ใน! sudo ที %


ต้องใช้รหัสผ่านบัญชี sudo ของคุณเพื่อเขียนเนื้อหาไฟล์และบันทึกไฟล์ในเส้นทางที่กล่าวถึง ป้อนรหัสผ่านรูทของคุณแล้วกดปุ่ม Enter ผลลัพธ์แสดงว่าไม่มีไฟล์หรือไดเรกทอรีดังกล่าวในระบบ Linux ของคุณ ซึ่งหมายความว่าเราระบุสาเหตุของข้อผิดพลาดนี้ กดปุ่ม Enter อีกครั้งเพื่อดำเนินการต่อกับ Vim

เขียนคำสั่ง quit ด้านล่างและกดปุ่ม Enter เพื่อกลับมาที่เทอร์มินัลเชลล์

: อะไร

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

$ ls / usr / lib64 / sas12

แก้ไขข้อผิดพลาด:

ประการแรก เราต้องสร้างพาธหรือไดเร็กทอรีในเชลล์บรรทัดคำสั่ง ในการสร้างไดเร็กทอรีที่กล่าวถึงในพาธที่ให้ไว้ด้านบน เราต้องใช้คำสั่ง mkdir พร้อมกับแฟล็ก -p หากคุณใช้ mkdir โดยไม่มีคีย์เวิร์ด sudo อาจผ่านข้อยกเว้น การอนุญาต ถูกปฏิเสธ

$mkdir-NS/usr/lib64/sas12

ลองใช้คำสั่งนี้ด้วยคีย์เวิร์ด sudo แล้วคุณจะเห็นว่ามันใช้ได้ดี

$sudo mkdir-NS/usr/lib64/sas12

เขียนคำสั่ง Vim อีกครั้งตามด้วยเส้นทางของไฟล์เพื่อตรวจสอบการเปลี่ยนแปลง มันจะเปิดตัวแก้ไข Vim

$ฉันมา /usr/lib64/sas12/smtpd.conf

เมื่อคุณเขียนคำสั่ง sudo ด้านล่าง อาจต้องใช้รหัสผ่านบัญชี sudo ของคุณเพื่อดำเนินการต่อ หลังจากเขียนรหัสผ่านและกดปุ่ม Enter คุณจะเห็นว่ามันสร้างคำเตือน คุณต้องกดปุ่ม L ตามด้วยปุ่ม Enter เพื่อโหลดไฟล์นี้ในโฟลเดอร์ที่ให้มา

:ใน!sudo ที %

มันจะโหลดไฟล์และให้สิทธิ์แบบอ่านอย่างเดียว กดปุ่ม Enter

ตอนนี้เมื่อคุณป้อนคำสั่ง wq มันจะทำงานได้ดี

: wq

บทสรุป:

เราได้แก้ไขข้อผิดพลาด: Vim ไม่สามารถเปิดไฟล์เพื่อเขียนได้ในพริบตา ฉันหวังว่าคุณจะสามารถแก้ไขข้อผิดพลาดนี้ได้อย่างสะดวก