VPN клиент устгагдсан ч ачаалах үед туннель ажилласаар байна
Устгасан VPN клиент systemd нэгж, хадгалсан профайл, туслах програм, apt репозиторий үлдээж болно. Өөр юу ч цэвэрлэхийн өмнө бүгдийг бүртгээрэй.
Таны дистрибутив багцыг устгаж, цэс бичлэгээ алдаж, дараагийн дахин ачаалсны дараа туннель гарч ирсээр байна. Арилжааны VPN клиент багц менежер хэзээ ч хянаж байгаагүй хэсгүүдийг үлдээдэг тул цэвэр устгалт цэвэр машинтай ижил биш юм. Тэдгээр хэсгийн дөрөв нь бараг бүх сүнсэн холболтыг тайлбарладаг: нэгж, холболтын профайл, онцгой эрхтэй туслах програм, нийлүүлэгчийн репозиторий. Юу ч устгахын өмнө дөрвийг нь уншаад, дараа нь тус бүрийг эзэмшиж буй компонентоор нь устгаарай.
Устгагч хэзээ ч бүртгэж амжаагүй зүйл
Багц менежер зөвхөн өөрийн бүртгэсэн файлуудыг устгадаг, өөр юу ч биш. Түүнд клиентийн ажиллах үед үүсгэсэн холболтын профайл, суулгасны дараа идэвхжүүлсэн нэгж, эсвэл өндөрлөсөн эрхээр ажиллахдаа өөрийгөө бүртгүүлсэн туслах програмын тухай бүртгэл байхгүй. Тэдгээр тус бүр өөр дэд системд хамаарах бөгөөд тус бүр багцыг нэг буюу хэд хэдэн дахин ачаалалтаар даван туулж чадна. Яг энэ цоорхой нь туннель эрүүл байхад түүнийг бүтээсэн програм алга болсныг тайлбарладаг.
Үлдэгдэлд үргэлж эзэн байдаг — энэ нь systemd, NetworkManager, репозиторийн тохиргоо эсвэл хэрэглэгч бүрийн автомат эхлүүлэлтийн бичлэг байж болно. Эзнийг эхлээд олсон нь цэвэрлэгээг хагас тохируулсан машин болохоос сэргийлдэг. Файлыг шууд устгах нь эзэн дахин үүсгэх хүртэл ажилладаг тул доорх командууд асуулгаар эхэлдэг.
Дөрвөн эзэн, эхлээд зөвхөн унших
Устгалаас биш, асуулгаас эхэлж, буцаж ирсэн нарийн нэрсийг тэмдэглээрэй. Нийлүүлэгчид ихэвчлэн метабагцын хажууд хувилбарласан ачааг илгээдэг тул нэг бүтээгдэхүүн хоёр нэрээр харагдаж болно. Хоёр жагсаалтад гарч буй нэр нь хоёр эзэнтэй нэг бүтээгдэхүүн бөгөөд хоёуланг нь устгах ёстой. Эхний багц нь багц болон нэгжүүдийг хамардаг бөгөөд ихэнх үлдэгдэл тэнд харагддаг.
dpkg -l | grep -i acmevpn
systemctl list-unit-files | grep -i acmevpn
systemctl list-units --type=service --state=running | grep -i acmevpn
Хоёр дахь багц нь цэвэрлэгээг хамгийн их даван туулдаг холболтын профайл, нийлүүлэгчийн репозиторий гэсэн хоёр компонентийг хамардаг. Нэр биш UUID баганыг уншаарай, учир нь давхардсан нэр түгээмэл бөгөөд устгах команд танигчийг хүлээдэг. Репозиторийн мөрийг өнөөдөр устгахгүй байсан ч унших нь зүйтэй, учир нь үхсэн нийлүүлэгчийн хост хэдэн сарын дараа хамааралгүй суулгалтыг эвдэж болно. Аль ч жагсаалт юу ч өөрчлөхгүй, тэдгээрийг эхэнд нь ажиллуулах учир нь ч энэ.
nmcli -f NAME,UUID,TYPE connection show
nmcli connection show --active
grep -ril acmevpn /etc/apt/sources.list.d/ /etc/apt/sources.list
Цэвэрлэгээний дараа амьд үлдсэн процесс нь идэвхтэй нэгж эсвэл өөр програмын хүүхэд байна. Аль хэдийн байхгүй үйлчилгээг буруутгахаасаа өмнө процессын хүснэгт болон түүний эцэг эхийн хэлхээг уншаарай. Хэрэглэгч бүрийн автомат эхлүүлэлтийн бичлэгт мөн адил шалгалт хэрэгтэй бөгөөд тэдгээр нь зөвхөн шинэ нэвтрэх бүрхүүлд харагддаг, root сессэд биш.
Харилцан сольж болохгүй гурван үйл үг
Зогсоох нь одоогийн ажиллагааг дуусгаж, идэвхгүй болгох нь ачаалах үеийн холбоосыг устгаж, маск хийх нь нэгжийг /dev/null руу чиглүүлдэг. Зөвхөн гурав дахь нь socket, таймер эсвэл хамаарлаар идэвхжүүлэхийг мөн блоклодог бөгөөд энэ нь түүнийг гурвын хамгийн хүчирхэг болгодог. Машиныг юу хийхээ шийдэж байх үед дараалал чухал. Тэр шийдвэрийн үеэр маск хийх нь зөв төлөв, учир нь дараагийн ачаалалтад чимээгүй эхлэхийн оронд чанга бүтэлгүйтдэг.
Дахин суулгахын өмнө маскийг аваарай, эс бөгөөс шинэ багц хэн ч бичээгүй шалтгаанаар эвдэрсэн мэт харагдана. Мөн адил болгоомжлол баглаа боодлын ялгаанд хамаарна: нэг бүтээц зогсоож болох нэгж өгдөг бол нөгөө нь үйлчилгээ огт үлдээдэггүй. Үйл үг сонгохын өмнө ямар баглаа боодол байгаагаа тогтоогоорой, учир нь цэвэрлэх зам нь хоорондоо ялгаатай.
Орлуулагч тэмдэгтээр буруу профайлыг устгадаг
Профайлыг тэмдэглэсэн UUID-ээр устгаарай, хэзээ ч орлуулагч тэмдэгтээр биш. keyfile хавтас нь машины бүх Wi-Fi болон Ethernet профайлыг агуулдаг тул өргөн тохирол танд хэрэгтэй зүйлсийг ч устгана. Гараар устгасан keyfile-ыг эзэмшиж буй бодлого дахин үүсгэж болох тул устгал үр дүнгүй мэт харагддаг.
nmcli connection delete uuid <uuid>
Хэрэв тэр профайл таны гарт үлдсэн цорын ганц хуулбар бол эхлээд гарц болон таних мэдээллийг экспортлоорой, учир нь локал устгал сервер дээр юу ч цуцалдаггүй. Репозитори мөн ижил дүрмийг дагадаг: ганц нийлүүлэгчийн файл болон түүний түлхүүрийн бөгцгийг устгаад, багцын жагсаалтыг шинэчилж, үнэхээр хүссэн суулгалтаа дахин оролдоорой. Хуучирсан гуравдагч талын бичлэг үлдээвэл хуучин хамаарлыг тогтоож эсвэл огт хариу өгөхгүй байж болно. Хоёр устгал жижиг бөгөөд аль нэгийг нь хадгалсан хуулбараас буцаах боломжтой.
Дахин ачаалсны дараа юу ажилласаар байна
Ялалт зарлахаасаа өмнө дахин ачаалаад, дараа нь програмыг биш, артефактуудыг хайгаарай. Хуучин клиентийн үлдээсэн туннелийн интерфэйс, хуучирсан хуваасан маршрут, холбоос бүрийн DNS тус бүр өөрийн командыг шаарддаг. Гурвуулаа бүх багцыг амжилттай устгасан цэвэрлэгээний дараа ч амьд үлдэж чадна.
ip link
ip route
resolvectl status
Мөн шинэ нэвтрэх бүрхүүл нээгээрэй, учир нь автомат эхлүүлэлтийн бичлэг зөвхөн тэнд ажилладаг. Дараа нь /etc/NetworkManager/dispatcher.d/-с интерфэйс төлөв солих бүрт холболтыг өргөдөг скриптийг хайж уншаарай, энэ нь ард үйлчилгээгүй туннель буцаж ирэхийг тайлбарладаг. Хэрэв ямар нэг зүйл гадагш залгасаар байвал шинж тэмдэг зогсох хүртэл файл устгахын оронд процессыг эцэг хүртэл нь мөрдөөрэй. Машиныг цэвэрлэх, бүртгэлийг цуцлах нь тусдаа ажил хэвээр бөгөөд дахин ачаалалт тайван харагдах үед тэдгээрийн зөвхөн нэг нь дууссан байна.