ถอน OpenVPN แล้วแต่ /etc/openvpn ยังอยู่: ลบหรือล้างให้หมด
/etc/openvpn ที่หลงเหลือไม่ได้แปลว่าติดตั้งแพ็กเกจอยู่ อ่านสถานะ dpkg เลือกระหว่างการลบกับการล้างให้หมด แล้วตรวจสอบว่าอะไรที่ dpkg จะไม่ลบเลย
ไดเรกทอรียังอยู่ บริการหายไป และไม่ชัดเจนว่าแพ็กเกจติดตั้งอยู่หรือไม่ ในระบบตระกูล Debian /etc/openvpn ที่หลงเหลือมักหมายถึงแพ็กเกจถูกลบโดยไม่ได้ล้างให้หมด ซึ่งเป็นสถานะที่มีเอกสารกำกับ ไม่ใช่สถานะที่เสีย ไฟล์ที่คุณเห็นน่าจะเป็นการตั้งค่า ไม่ใช่โปรแกรม
ทำงานตามลำดับในคู่มือ: อ่านสถานะแพ็กเกจ ตัดสินใจว่าจะเก็บอะไร ล้างให้หมดอย่างตั้งใจ แล้วตรวจสอบว่าอะไรเหลืออยู่ ทุกขั้นตอนย้อนกลับได้จนถึงการล้างให้หมด
อ่านสถานะแพ็กเกจก่อน
เริ่มจากฐานข้อมูลแพ็กเกจไม่ใช่ระบบไฟล์ dpkg -l openvpn พิมพ์สถานะสองตัวอักษร และ rc หมายถึงแพ็กเกจถูกลบแต่ยังเก็บไฟล์การตั้งค่าไว้ dpkg-query -W -f='${Status}\n' openvpn ให้คำตอบเดียวกันเป็นคำพูด การแสดงรายการไดเรกทอรีบอกคุณเรื่องพวกนี้ไม่ได้เลย
อย่าสับสน Community OpenVPN กับ Access Server หรือปลั๊กอิน NetworkManager สิ่งเหล่านี้เป็นแพ็กเกจต่างกันที่มีเส้นทางการลบต่างกัน
ถ้าสถานะเป็น ii แพ็กเกจติดตั้งอยู่และไดเรกทอรีเป็นสิ่งที่คาดไว้ ถ้าเป็น rc เหลือเพียงการตั้งค่า ถ้าคำสั่งไม่คืนอะไรเลย แพ็กเกจถูกล้างหมดแล้วและไดเรกทอรีเป็นของอย่างอื่น
เลือกระหว่างการลบกับการล้างให้หมด
remove ลบโปรแกรมและเก็บการตั้งค่าไว้ purge ลบการตั้งค่าด้วยและเรียกสคริปต์ทำความสะอาดของแพ็กเกจ ทั้งสองเป็นการตัดสินใจเชิงบริหารเกี่ยวกับสถานะ ไม่ใช่สองการสะกดของคำสั่งเดียวกัน
ก่อนเลือก ให้ระบุว่าแพ็กเกจเป็นเจ้าของอะไรด้วย dpkg -L openvpn เอาต์พุตนั้นคือแผนที่ของเส้นทางที่แพ็กเกจจัดการ และเป็นอินพุตที่ถูกต้องสำหรับการตัดสินใจว่าการล้างให้หมดจะลบอะไร อะไรก็ตามที่คุณเห็นในไดเรกทอรีและไม่อยู่ในรายการนั้นมาจากที่อื่น ปฏิบัติต่อไฟล์เหล่านั้นเป็นของคุณเพื่อตรวจสอบ ไม่ใช่เศษของแพ็กเกจ
การล้างแพ็กเกจที่ถูกลบไปแล้วให้หมดเป็นสิ่งที่อนุญาต การติดตั้งใหม่ก่อนไม่ใช่ข้อกำหนด
เก็บสิ่งที่ยังต้องใช้
ก่อนล้างให้หมด ให้เก็บสิ่งที่ยังต้องใช้: โปรไฟล์ ใบรับรองไคลเอนต์ คีย์ส่วนตัว ไฟล์ CCD และสคริปต์ภายในใด ๆ คัดลอกด้วยสิทธิ์ที่เหมาะสมกับความลับ และบันทึกว่าสำเนาอยู่ที่ไหน
ตรวจสอบว่าบริการหรือผู้จัดการอื่นใช้ไดเรกทอรีเดียวกันหรือไม่ อินสแตนซ์ VPN อีกตัวหรือสคริปต์อัตโนมัติอาจพึ่งพาเส้นทางที่ดูเหมือนการตั้งค่าที่หลงเหลือ
หากเครื่องถูกปลดระวาง ไฟล์ภายในเป็นครึ่งเล็กของปัญหา โปรไฟล์ที่ส่งออกและการอนุญาตระยะไกลมีอายุยืนกว่าทุกไดเรกทอรีที่คุณลบ
ล้างให้หมดและตรวจสอบ
ดำเนินการล้างให้หมดผ่านตัวจัดการแพ็กเกจ ไม่ใช่โดยการลบไดเรกทอรี sudo apt purge openvpn เก็บฐานข้อมูลแพ็กเกจและสคริปต์ทำความสะอาดไว้ในกระบวนการ
จากนั้นทำคำสั่งสถานะซ้ำและยืนยันว่าแพ็กเกจไม่ปรากฏอีก ตรวจสอบว่าบริการหายไปด้วย systemctl status openvpn@server หรือชื่อยูนิตที่คุณใช้ และทดสอบเครือข่ายปกติ
ไฟล์ที่การล้างให้หมดจะไม่ลบ
บางไฟล์รอดจากการล้างให้หมดโดยการออกแบบ การตั้งค่าที่สร้างขึ้นซึ่งจัดการโดยสคริปต์ผู้ดูแลไม่เป็นที่รู้จักของฐานข้อมูลไฟล์ของ dpkg เสมอไป การตั้งค่าในไดเรกทอรีบ้านของผู้ใช้อยู่นอกการทำความสะอาดไดเรกทอรีระบบ และอะไรก็ตามที่ผู้ดูแลสร้างด้วยมือไม่เคยเป็นของแพ็กเกจ แต่ละอย่างต้องตรวจสอบของตัวเอง
การลบทุกเส้นทางที่มี VPN ในชื่อซ้ำ ๆ คือวิธีที่ข้อมูลรับรองที่ใช้งานได้และการตั้งค่าที่ไม่เกี่ยวข้องหายไป
จบด้วยการเพิกถอนสิ่งที่เครื่องไม่ต้องการแล้ว: โปรไฟล์ที่ส่งออก ใบรับรองไคลเอนต์ที่ออกให้ และบัญชีใดก็ตามที่ยืนยันตัวตนผ่านมัน การลบไดเรกทอรีภายในไม่เพิกถอนข้อมูลรับรองที่ยังมีอยู่ที่อื่น เอกสารอ้างอิง dpkg อธิบายสถานะและขอบเขตของการล้างให้หมด