તમારું ડિસ્ટ્રો પેકેજ દૂર કરે છે, તમારું મેનૂ તેની એન્ટ્રી ગુમાવે છે, અને છતાં આગલા રીબૂટ પછી ટનલ ઉપર આવે છે. વ્યાપારી 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 તરફ નિર્દેશ કરે છે. ફક્ત ત્રીજું જ સોકેટ, ટાઇમર કે આશ્રિતતા દ્વારા સક્રિયકરણને પણ અવરોધે છે, જે તેને ત્રણમાંથી સૌથી મજબૂત બનાવે છે. મશીન સાથે શું કરવું તે હજી નક્કી કરતી વખતે ક્રમ મહત્વનો છે. એ નિર્ણય દરમિયાન માસ્કિંગ યોગ્ય સ્થિતિ છે, કારણ કે તે આગલા બૂટમાં શાંતિથી શરૂ થવાને બદલે મોટેથી નિષ્ફળ જાય છે.

ફરી ઇન્સ્ટોલ કરતાં પહેલાં અનમાસ્ક કરો, નહીંતર નવું પેકેજ એવા કારણથી તૂટેલું દેખાશે જે કોઈએ લખ્યું નથી. એ જ સાવચેતી પેકેજિંગ તફાવતોને લાગુ પડે છે: એક બિલ્ડ થોભાવી શકાય તેવું યુનિટ આપે છે, જ્યારે બીજું કોઈ સેવા જ છોડતું નથી. ક્રિયાપદ પસંદ કરતાં પહેલાં નક્કી કરો કે તમારી પાસે કયું પેકેજિંગ છે, કારણ કે સફાઈનો માર્ગ તેમની વચ્ચે અલગ છે.

વાઇલ્ડકાર્ડથી ખોટી પ્રોફાઇલ ડિલીટ થાય છે

તમે નોંધેલા UUID સાથે પ્રોફાઇલ ડિલીટ કરો, અને ક્યારેય વાઇલ્ડકાર્ડથી નહીં. keyfile ડિરેક્ટરીમાં મશીનની દરેક Wi-Fi અને Ethernet પ્રોફાઇલ પણ હોય છે, તેથી વ્યાપક મેળ તમને હજી જરૂરી વસ્તુઓ દૂર કરે છે. હાથે ડિલીટ કરેલી keyfile જે નીતિ તેની માલિક છે તે ફરી બનાવી શકે છે, જે ડિલીટને બિનઅસરકારક દેખાવે છે.

nmcli connection delete uuid <uuid>

જો એ પ્રોફાઇલ તમારી પાસે બચેલી એકમાત્ર નકલ હોય તો પહેલાં ગેટવે અને ઓળખ એક્સપોર્ટ કરો, કારણ કે સ્થાનિક ડિલીટ સર્વર પર કંઈ રદ કરતું નથી. રિપોઝિટરી પણ એ જ નિયમ અનુસરે છે: એકમાત્ર વેન્ડર ફાઇલ અને તેની કીરિંગ દૂર કરો, પછી પેકેજ યાદીઓ રિફ્રેશ કરો અને ખરેખર જોઈતું ઇન્સ્ટોલેશન ફરી પ્રયાસ કરો. જૂની તૃતીય-પક્ષ એન્ટ્રી છોડી દેવાથી જૂની આશ્રિતતા પિન થઈ શકે અથવા જવાબ જ ન આવે. બંને દૂરી નાની છે, અને તમે રાખેલી નકલમાંથી કોઈપણ પાછી ફેરવી શકાય છે.

રીબૂટ પછી પણ શું ચાલે છે

વિજય જાહેર કરતાં પહેલાં રીબૂટ કરો, પછી એપ્લિકેશનને બદલે આર્ટિફેક્ટ શોધો. જૂના ક્લાયન્ટે છોડેલું ટનલ ઇન્ટરફેસ, જૂનો સ્પ્લિટ રૂટ અને દરેક લિંક માટે DNS—દરેકને પોતાનો આદેશ જોઈએ. ત્રણેય એવી સફાઈ પછી ટકી શકે છે જેણે દરેક પેકેજ સફળતાપૂર્વક દૂર કર્યું હોય.

ip link
ip route
resolvectl status

નવું લોગિન શેલ પણ ખોલો, કારણ કે ઓટોસ્ટાર્ટ એન્ટ્રી ફક્ત ત્યાં જ સક્રિય થાય છે. પછી /etc/NetworkManager/dispatcher.d/ વાંચો એવી સ્ક્રિપ્ટ માટે જે ઇન્ટરફેસની સ્થિતિ બદલાય ત્યારે જોડાણ ઉપર લાવે, જે પાછળ કોઈ સેવા વિના ટનલ પાછી આવવાનું સમજાવે છે. જો કંઈ હજી બહાર ડાયલ કરે, તો લક્ષણ અટકે ત્યાં સુધી ફાઇલો ડિલીટ કરવાને બદલે પ્રક્રિયાને તેના પિતૃ સુધી ટ્રેસ કરો. મશીન સાફ કરવું અને ખાતું રદ કરવું અલગ કામો રહે છે, અને રીબૂટ શાંત લાગે ત્યારે તેમાંથી ફક્ત એક જ પૂરું થાય છે.

સંબંધિત લેખો