Homebrew ei poista OpenVPN Connectia: mikä polku sopii?
Epäonnistunut caskin poisto on yksi kolmesta viasta. Lue caskin artefaktit, vertaa versioita ja valitse sitten uudelleen yrityksen, päivityksen tai zapin välillä.
Kolme eri vikaa kantaa samaa caskin virheilmoitusta, ja jokaisella on oma palautumispolkunsa. Toimittajan poisto-ohjelma voi puuttua asennetusta versiosta, apuprosessi voi yhä olla käynnissä ja pitää tiedostonsa, tai paketin kuitti voi olla ristiriidassa sen kanssa, mitä levyllä on. Vanha foorumikikka, joka pelasti yhden näistä tapauksista, ei kerro sinulle mitään siitä, mikä niistä sinulla on. Caskin oman merkinnän lukeminen on tapa saada se selville.
Kolme vialta näyttävää vikaa
Puuttuva poisto-ohjelma näkyy polkuna, jota ei ole, kun cask yrittää suorittaa sen. Käynnissä oleva apuprosessi näkyy poistona, joka alkaa ja sitten pysähtyy, tai sovelluksena, joka ilmestyy uudelleen, kun olet sulkenut sen. Vanhentunut kuitti näkyy, kun caskin oma merkintä ja asentajan tietokanta ovat eri mieltä siitä, onko tuote ylipäätään asennettu.
Tallenna ensimmäinen virheteksti ennen kuin yrität mitään uudelleen. Toinen yritys kirjoittaa sen tilan yli, joka tuotti viestin, ja alkuperäinen rivi on se, mitä ylläpitäjä tai toimittaja tarvitsee näiden erottamiseen. Kopioi se paikkaan, joka kestää uudelleenyrityksen.
Jos tämä VPN kuljettaa yhteyttä, jota käytät työhön, järjestä ensin toinen hallintareitti. Sen asiakasohjelman poistaminen, joka antaa sinulle pääsyn, on päätös huoltoikkunasta, ei Homebrew'sta. Juuri tämä järjestys tekee epäonnistuneesta poistosta palautettavan eikä lopullisen.
Lue, mitä cask todella asensi
Homebrew'n oma näkymä on halvin saatavilla oleva todiste, eikä se muuta mitään:
brew info --cask openvpn-connect
brew list --cask openvpn-connectEnsimmäinen komento tulostaa caskin metatiedot ja artefaktit, joita se hallitsee; toinen luettelee sen, mikä on merkitty asennetuksi. Kumpikaan ei todista, että jokainen koneen apuprosessi vastaa nykyistä reseptiä, ja juuri siksi vanhempi asennus voi epäonnistua tavalla, jota nykyinen caskin lähde ei kuvaa. Käsittele kahta tulostetta tarkistettavana väitteenä, älä viimeisenä sanana siitä, mitä on olemassa.
Vertaa merkittyä versiota sovelluksen omaan versioon ennen polun valitsemista. Ero selittää puuttuvan poisto-ohjelman ilman syvempää vikaa, ja vastaus on päivitys versioon, jota cask odottaa, ei manuaalinen siivous.
Mitä zap lisää ja mitä se maksaa
Caskin poisto-osio hoitaa artefaktit, jotka resepti ilmoittaa: sovelluksen sulkeminen, käynnistystehtävien purkaminen, kirjautumiskohteen poistaminen, pakettikuittien unohtaminen ja sovelluspaketin poistaminen. Se on normaali polku, ja sen pitäisi toimia.
--zap on eri pyyntö. Se pyytää Homebrew'ta poistamaan myös käyttäjän asetukset ja jaetut resurssit, ja dokumentaatio varoittaa, että tämä voi vaikuttaa muihin ohjelmiin. OpenVPN Connectin caskissa zap-osio poistaa openvpn.keychain-db-tiedoston ja tyhjentää käyttäjän sovellustukitiedot, mikä tarkoittaa, että tallennetut tunnistetiedot ja yhteysprofiilit lähtevät sen mukana. Jos profiili tulee organisaatiolta, varmista ennen tämän polun valitsemista, että voit rekisteröityä uudelleen.
| Condition | Path that fits | Path to avoid |
|---|---|---|
| Uninstaller path missing after an OS upgrade | Upgrade the cask to the version matching the app | Hand-writing a replacement script |
| Helper still running during removal | Quit the app and its menu agent, then retry | Deleting the bundle while the helper runs |
| Receipt exists but files are gone | Forget the receipt with the cask's own tooling | Recursive deletion of the Caskroom entry |
| You need the machine clean and can re-enroll | Zap, after reading the stanza | Zap on a machine whose profiles you cannot rebuild |
Polut, jotka näyttävät ratkaisevilta mutta eivät ole
Nollaan päättyvän väärän remove.sh-tiedoston kirjoittaminen on listan huonoin vaihtoehto. Se saa poiston raportoimaan onnistumisesta, samalla kun käynnistystehtävät, kuitit ja sovellustiedot jäävät paikoilleen, joten seuraava asennus perii puoliksi poistetun tuotteen ja merkinnän, joka väittää päinvastaista.
Caskroom-kansion tai sovelluspaketin poistaminen käsin tuottaa samankaltaisen tilan toisesta suunnasta. Tiedostot katoavat, mutta kuitti jää. Silloin jokainen myöhempi komento on arvioitava konetta vasten, joka ei enää vastaa omaa tietokantaansa.
Koko tietovaraston brew update-reset on suurempi toimenpide kuin yksi epäonnistunut cask oikeuttaa. Se muuttaa tap-tilaasi korjatakseen ongelman, joka ei koskaan ollut tap-tilasta, ja se voi jättää sinut selvittämään eri Homebrew'ta kuin se, jolla aloitit.
Päätöksenteko järjestyksessä
Etene järjestyksessä: lue caskin merkityt artefaktit, vertaa versioita, sulje jokainen käynnissä oleva osa, yritä tavallinen poisto uudelleen ja vasta sitten harkitse zapia. Jos tavallinen polku epäonnistuu edelleen, tallenna virhe ja vie se caskin ylläpitäjille tai toimittajalle versioiden numeroiden kanssa.
Cask Cookbook sanoo selvästi, että pakettiasentajat tarvitsevat tuotekohtaisia poistotekniikoita ja että zap on vapaaehtoinen ja voi poistaa jaettuja resursseja. Tämä kehys on päätössääntö: ensin tavallinen poisto, zap kun hyväksyt tunnistetietojen hinnan, käsin poistaminen ei koskaan.