Үч түрдүү бузулуу бирдей cask ката билдирүүсүн алып жүрөт жана ар биринин өзүнүн калыбына келтирүү жолу бар. Орнотулган версияда жеткирүүчүнүн өчүргүчү жок болушу мүмкүн, жардамчы процесс дагы иштеп, өз файлдарын кармап турушу мүмкүн, же пакеттин дүмүрчөгү дискидегиге туура келбеши мүмкүн. Ошол учурлардын бирин куткарган эски форум ыкмасы сизде кайсы экенин айтпайт. Муну билүүнүн жолу — cask'тын өз жазуусун окуу.

Окшош көрүнгөн үч бузулуу

Жок өчүргүч cask аны иштетүүгө аракет кылганда жок жол катары көрүнөт. Иштеп турган жардамчы процесс башталып, анан токтоп калган өчүрүү катары, же колдонмону жапкандан кийин кайра пайда болгон колдонмо катары көрүнөт. Эскирген дүмүрчөк cask'тын өз жазуусу менен орнотуучунун маалымат базасы продукт жалпы орнотулганы боюнча макулдашпаганда көрүнөт.

Бир нерсени кайталоодон мурун биринчи ката текстин сактап коюңуз. Экинчи аракет билдирүүнү жараткан абалдын үстүнө жазат, ал эми түпнуска сап — бул учурларды ажыратуу үчүн тейлөөчүгө же жеткирүүчүгө керек болгон нерсе. Аны кайталоодон аман кала турган жерге көчүрүңүз.

Эгер бул VPN сиз иштеген байланышты алып жүрсө, адегенде башка башкаруу жолун даярдаңыз. Сизге кирүү мүмкүнчүлүгүн берген кардарды өчүрүү — Homebrew жөнүндө эмес, тейлөө терезеси жөнүндө чечим. Ушундай тартип гана ийгиликсиз өчүрүүнү акыркы эмес, калыбына келтирилүүчү кылат.

cask чындыгында эмнени орнотконун окуңуз

Homebrew'дун өз көрүнүшү — жеткиликтүү эң арзан далил, жана ал эч нерсени өзгөртпөйт:

brew info --cask openvpn-connect
brew list --cask openvpn-connect

Биринчи буйрук cask метаберилишин жана ал башкарган артефакттарды басып чыгарат; экинчиси орнотулган деп жазылгандарды тизмелейт. Экөө тең машинадагы ар бир жардамчы процесстин учурдагы рецептке туура келээрин далилдебейт, ошондуктан эски орнотуу учурдагы cask булагы сүрөттөбөгөн түрдө ийгиликсиз болушу мүмкүн. Эки чыгышты текшерилүүчү ырастоо катары кабыл алыңыз, эмне бар экени жөнүндөгү акыркы сөз катары эмес.

Жолду тандоодон мурун жазылган версияны колдонмонун өз версиясы менен салыштырыңыз. Шайкешсиздик тереңирээк бузулуусуз жок өчүргүчтү түшүндүрөт, ал эми жооп — кол менен тазалоо эмес, cask күткөн версияга жаңыртуу.

zap эмнени кошот жана эмнеге турат

cask'тын өчүрүү stanza'сы рецепт жарыялаган артефакттарды иштетет: колдонмону жабуу, иштетүү тапшырмаларын түшүрүү, кирүү элементин өчүрүү, пакет дүмүрчөктөрүн унутуу жана колдонмо топтомун өчүрүү. Бул кадимки жол жана дал ушул иштеши керек.

--zap — башка суроо. Ал Homebrew'дон колдонуучунун жөндөөлөрүн жана жалпы ресурстарды да өчүрүүнү сурайт, ал эми документтер бул башка программалык камсыздоого таасир этиши мүмкүн деп эскертет. OpenVPN Connect'тин cask'ында zap stanza'сы openvpn.keychain-db файлын өчүрүп, колдонуучунун колдонмолорду колдоо берилиштерин тазалайт, башкача айтканда сакталган кирүү берилиштери жана байланыш профилдери да аны менен кетет. Эгер профиль уюмдан келсе, бул жолду тандоодон мурун кайра каттала аларыңызды ырастаңыз.

ConditionPath that fitsPath to avoid
Uninstaller path missing after an OS upgradeUpgrade the cask to the version matching the appHand-writing a replacement script
Helper still running during removalQuit the app and its menu agent, then retryDeleting the bundle while the helper runs
Receipt exists but files are goneForget the receipt with the cask's own toolingRecursive deletion of the Caskroom entry
You need the machine clean and can re-enrollZap, after reading the stanzaZap on a machine whose profiles you cannot rebuild

Чечкичтей көрүнгөн, бирок андай эмес жолдор

Нөлдүк чыгуу коду менен бүткөн жасалма remove.sh жазуу — тизмедеги эң начар вариант. Ал өчүрүүгө ийгилик тууралуу билдирүүгө мажбурлайт, ал эми иштетүү тапшырмалары, дүмүрчөктөр жана колдонмо берилиштери ордунда калат, ошондуктан кийинки орнотуу жарым өчүрүлгөн продуктту жана тескерисин айткан жазууну мураска алат.

Caskroom каталогун же колдонмо топтомун кол менен өчүрүү экинчи тараптан ушундай эле абалды жаратат. Файлдар жоголот, дүмүрчөк калат. Андан кийин ар бир кийинки буйрукту өз маалымат базасына мындан ары туура келбеген машинага каршы ойлонуу керек.

Бүт репозиторий боюнча brew update-reset бир ийгиликсиз cask актай тургандан чоңураак кийлигишүү. Ал tap абалына эч качан тиешеси болбогон маселени чечүү үчүн tap абалыңызды өзгөртөт жана сизди баштаган Homebrew'дон башкасын оңдоого калтырышы мүмкүн.

Тартип менен чечүү

Тартип боюнча иштеңиз: cask'тын жазылган артефакттарын окуңуз, версияларды салыштырыңыз, иштеп турган ар бир компонентти жабыңыз, кадимки өчүрүүнү кайра аракет кылыңыз, жана ошондон кийин гана zap жөнүндө ойлонуңуз. Эгер кадимки жол дагы ийгиликсиз болсо, катаны сактап, версия сандары менен бирге cask тейлөөчүлөрүнө же жеткирүүчүгө алып барыңыз.

Cask Cookbook пакет орнотуучуларга продуктка таандык өчүрүү ыкмалары керек экенин жана zap милдеттүү эмес, жалпы ресурстарды өчүрүшү мүмкүн экенин ачык айтат. Ушул алкак — чечим эрежеси: адегенде кадимки өчүрүү, кирүү берилиштеринин баасын кабыл алсаңыз zap, кол менен өчүрүү эч качан.

Тектеш макалалар