A Python eltávolítása és újratelepítése Mac számítógépre — Megbízhatom-e ezeket a régi hivatkozásokat?

Új vagyok a mac-on, és nyilvánvalóan valamilyen hibát vétettem. Tanultam python-t oktatóanyagok segítségével, és a Homebrew, Pip és XCode között valahogyan az én verzióim keveredtek. A Pip3 a python2-re mutat, így az összes python3-tesztem meghiúsul, stb …

I “m azt kutatja, hogyan lehet biztonságosan eltávolítani az összes verziót, majd lőni a tiszta telepítés érdekében (homebrew?), de kissé ideges vagyok.

Találtam néhány kiváló linket:

Nyilvánvaló, hogy az egyik nem érint semmit a gyökér /system könyvtárban, és alapvetően minden más törlődik . Idegesít az, hogy ezek a linkek eléggé elavultak. (Hat év! +) Nem vagyok biztos benne, hogy valóban bízom-e bennük vagy sem.

Van itt valaki mostanában? Bízhatok a fent linkelt bejegyzésekben? Hogyan tisztíthatom meg ezt a python verzió rendetlenséget? Megjegyzés: MacOS Sierra-t (10.12.5) használok

Válasz

Tehát végül eltávolítottam az összes python-telepítést, és a dolgok újratelepítése a Homebrew használatával.

  1. which python —> /Library/Frameworks/Python.framework/Versions/2.7/bin/python Törölje a teljes Python.framework alkalmazást. könyvtár a /Library/Frameworks címről.
  2. which python3 —> /usr/local/bin/python3 Törölje az egész python3 könyvtárat.
  3. Kicsit ideges voltam a szimbolikus linkek miatt. Kezdetben átneveztem azokat, amelyek nyilvánvalóan gondot okoznak nekem. Kiderült, hogy felesleges. Ehelyett csak használja :

    $ brew doctor Warning: Broken symlinks were found. Remove them with "brew prune": /usr/local/bin/python-32 /usr/local/bin/python2-32 /usr/local/bin/python2.7-32 /usr/local/bin/python2_DNU /usr/local/bin/python_DNU /usr/local/bin/pythonw-32 /usr/local/bin/pythonw2-32 /usr/local/bin/pythonw2.7-32 

    Tehát, brew prune (vagy brew cleanup --prune egy újabbban a Homebrew verziói) tökéletesen működtek. Eltávolította a fenti szimbólumokat.

  4. Telepítse újra a python és a python3 programokat a homebrew segítségével. Minden kész. >

    Soha nem érintettem a /System mappában található python telepítést.

    Ja és hogy világos legyek. Az eredeti kérdésre a válasz

    Igen, megbízhat a régi hivatkozásokban, ahogy írták! Ez az útmutató továbbra is érvényes.

    Megjegyzések

    • @nohillside thx, de .. könnyen nyugtázta a XXXX legutóbbi idei bejegyzését, amely itt szerkesztésre késztette. Páratlan hozzárendelési hiányosságnak tűnik az Ön számára .. Nem engedélyezett az újonc ‘ nek hozzászólást tenni? És most nem tudom ‘ látni a beküldési nevet, hogy én magam csinálhassam.
    • A hozzárendelés megszerzésének legjobb módja az, ha valóban szerkesztesz egy bejegyzést, ha szerkesztésre van szükség. , amit minden felhasználó (még névtelen is) megtehet. Ha a felhasználók úgy döntenek, hogy a javítással kapcsolatos megjegyzéseket válaszként teszik közzé, akkor általában csak a kapcsolódó bejegyzésbe szerkesztem őket.
    • A python homebrew verziói nem tartalmazzák az Xcode vagy az olyan eszközök támogatását, mint például a véső utoljára. Tehát ez általában nem ajánlott.
    • A /System/Library/Frameworks/Python.framework/ megemlítéséhez soha nem szabad eltávolítani, linkeld a dokumentumokat. python.org/3/using/mac.html
    • az új verzió elkészítette a tisztítást

Válasz

A Python verzióm 3.6 volt, frissíteni akartam 3.7-re (Ha hasonló követelményei vannak). MacOS 10.12.6-os verziót használok, és egyszerűen eltávolítottam és újratelepítettem:

brew uninstall --ignore-dependencies python3 

Ezután:

brew install python3 

és kész:

python3 Python 3.7.2 (default, Jan 13 2019, 12:51:54) [Clang 9.0.0 (clang-900.0.39.2)] on darwin Type "help", "copyright", "credits" or "license" for more information. 

Megjegyzések

  • Ez jól sikerült nekem. Be kellett állítanom a ipython elérési utat az indító szkript manuális szerkesztésével – hogy rámutassak a python főzési verziójára

Válasz

A rendszerfájlokat a rendszerintegritás-védelem védi. Nem fogja tudni követni ezeket az utasításokat rm -rf véletlenszerű mappákhoz a / System-ben anélkül, hogy először letiltaná a SIP-t.

Mivel azonban a fájlok védettek, tudja a fájlokat nem módosították. A verzióverzete a shell beállításának köszönhető, és a rendszerfájlok módosításával sem változtatnák meg. Nem szabad hozzányúlni ezekhez a fájlokhoz, amelyek garantáltan léteznek a macOS-ban.

A Homebrew külön telepít a / usr / local / Cellar könyvtárban. Használja a Homebrew-t a Python telepítésének kezeléséhez, és teljesen figyelmen kívül hagyja a rendszer telepítését.

Megjegyzések

  • Igen volt, jó, ha megbízik ebben a két hivatkozásban, vagy NEM , ne bízzon bennük ‘? Ezek a referenciák jó minőségűnek, jól megalapozottnak és elég jó részletességgel magyarázhatónak tűnnek.
  • @zipzit Ön megbízhat bennük, de nyertek ‘ t munka – ez ‘ két külön dolgot tartalmaz.A tartalom megbízható; próbálja ki a macOS legújabb verziójával, és ‘ nem árt, de ‘ nem is működik, az okok miatt ebben a válaszban adott. Nagyon ajánlom, hogy ne tiltsa le a SIP-t csak a rendszer Python-telepítésének eltávolításához (ezért ‘ nem linkeltem az utasításokhoz), mert az ‘ s ez nem a probléma tényleges oka, és nem fog segíteni ‘ semmit sem megoldani, ami további problémákat okozhat a folyamatban.
  • A válasz nem ‘ nincs értelme számomra. A fent linkelt minőségi válaszok egyike sem érinti a /system fájlt. Nincs = Nem egy, Zero, Zip, Nada. Az Applications mappában található 1) Python 3.3 mappában törölni kell néhány dolgot. 2) /Library/Frameworks/Python.framework 3) ~ 20 szimbólum a / usr / local / bin könyvtárban. 4) hivatkozások a shell útvonalon (ha vannak). Nem hinném, hogy ‘ ezek közül bármelyik el fogja érni a védelmet, amelyről beszél. Mit hiányolok?
  • @zipzit Elég régen a Python átkerült a / Library könyvtárból a / System / Library könyvtárba, így a rendszer telepítését eltávolítani próbálja a System / System elemet. A rendszer Python keretrendszere a /System/Library/Frameworks/Python.framework, nem / Library könyvtárban található.
  • $which python /Library/Frameworks/Python.framework/Versions/2.7/bin/python $ which python3 /usr/local/bin/python3 plusz a Python 2.3, 2.4, 2.5, 2.7 és az áram, amely a System/Library/Frameworks/Python.framework/Versions/...

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük