Việc gỡ cài đặt có thể dừng giữa chừng với lỗi nêu tên một script bảo trì, khiến VPN bị gỡ dở dang: các tệp cấu hình vẫn còn, dịch vụ có thể vẫn đang chạy, và trình quản lý gói từ chối tiếp tục. Cách sửa hấp dẫn trong một luồng diễn đàn cũ là xóa script và ép buộc gỡ bỏ. Cách đó chỉ trị triệu chứng và vứt bỏ bước dọn dẹp đã thất bại. Hãy đọc giai đoạn và trạng thái gói trước.

Bước nào trong vòng đời thực sự đã thất bại

Các gói Debian chạy preinst và postinst khi cài đặt, và prerm cùng postrm khi gỡ bỏ hoặc thanh lọc hoàn toàn, với trạng thái thoát của mỗi script quyết định hành động tiếp theo. Lỗi từ prerm nghĩa là việc gỡ bỏ đã dừng trước khi các tệp của gói bị xóa; lỗi từ postrm nghĩa là việc gỡ bỏ đã xảy ra và bước dọn dẹp đã thất bại. Đây là những tình huống khác nhau với cách khôi phục khác nhau. Chính sách phân phối cũng mong các script chịu được việc chạy lặp lại, vì giai đoạn thất bại nên được thử lại thay vì né tránh.

Ghi lại lỗi đầu tiên nguyên văn, cùng với tên gói, phiên bản và bản phát hành phân phối. Các lỗi sau thường là hệ quả.

Đọc trạng thái gói trước khi thay đổi

Hỏi trình quản lý gói xem nó nghĩ chuyện gì đã xảy ra trước khi đưa ra lệnh khác.

dpkg -l vpn-package
dpkg --audit
apt-get -s remove vpn-package

Danh sách cho thấy các cờ trạng thái của gói, bước kiểm tra tìm ra các gói bị bỏ lại hỏng hoặc cấu hình dở dang, và bước gỡ mô phỏng in ra những gì apt sẽ làm mà không động vào bất cứ thứ gì. Một mô phỏng thất bại ở cùng script xác nhận giai đoạn chứ không phải mạng. Ghi nhận script được nêu trong lỗi và liệt kê các tệp thông tin của gói nếu cần xem những script nào tồn tại. Không điều nào trong đó biện minh cho việc sửa các tệp ấy ngay lúc này.

Bảo vệ đường quản trị trước khi sửa chữa

Nếu VPN mang phiên SSH duy nhất của bạn tới máy chủ này, việc gỡ nó sẽ kết thúc quyền truy cập của bạn giữa lúc sửa chữa. Hãy chuẩn bị trước một console, giao diện quản trị ngoài băng hoặc tuyến thứ hai, và xác nhận nó hoạt động trước khi bắt đầu. Giữ lại hồ sơ và mọi hướng dẫn đăng ký lại mà bạn sẽ cần sau này, vì việc thanh lọc có thể xóa cấu hình được tạo ra. Để thông tin xác thực ra ngoài các ghi chú bạn dán vào phiếu, và để khóa riêng hoàn toàn ra ngoài phần chẩn đoán.

Coi việc ghi đè thủ công có tài liệu là phương án cuối cùng dưới sự hướng dẫn của chủ sở hữu gói, với các bước bị bỏ qua được tính đến. Đừng bao giờ xóa script bằng ký tự đại diện, vì danh sách dọn dẹp của chính gói là bản ghi những gì còn phải làm.

Tách kết quả của gói, mạng và thông tin xác thực

Cần kiểm tra ba kết quả một cách độc lập khi quy trình được hỗ trợ kết thúc. Giao dịch gói phải cho thấy trạng thái sạch, không còn mục cấu hình dở dang trong bước kiểm tra. Mạng phải khớp với điều bạn dự định: dịch vụ đúng đã dừng, không còn tuyến hoặc thiết lập DNS cũ, và có đường hoạt động để thay thế hoặc truy cập trực tiếp. Phía từ xa là kết quả thứ ba, và thông tin xác thực cũ nên được thu hồi qua chủ sở hữu tài khoản đó, vì gỡ cài đặt một ứng dụng khách không thu hồi được gì.

Sau đó kết nối lại và thử một đích được phép. Trạng thái gói sạch với một đường hầm vẫn đang chạy là kết quả khác với một mạng sạch, và chỉ kết quả thứ hai cho bạn biết việc gỡ bỏ thực sự có hiệu lực.

Bài viết liên quan