การติดตั้ง Python และ Git เวอร์ชันใหม่ปลอดภัยกว่าจากแหล่งอื่นหรือไม่


3

ฉันต้องการติดตั้ง Python และ Git เวอร์ชันใหม่ลงในระบบของฉัน ในที่สุดฉันก็ใช้คำสั่งด้านล่างเพื่อรวบรวมและติดตั้งเวอร์ชันใหม่ อย่างไรก็ตามฉันได้รับแจ้งว่าการใช้make altinstallPython จะเป็นการดีกว่า มีอะไรผิดปกติกับการติดตั้งเวอร์ชั่นใหม่อย่างที่ฉันทำ?

ติดตั้ง Python จากแหล่งที่มา:

mkdir ~/getpython; cd ~/getpython
wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz
tar -xvf Python-3.4.2.tgz
cd Python-3.4.2.tgz
sudo apt-get install libssl-dev openssl
./configure
make
sudo make install

ติดตั้ง Git จากแหล่งที่มา:

mkdir ~/getgit; cd ~/getgit
sudo apt-get install libcurl4-openssl-dev libexpat1-dev asciidoc xsltproc xmlto docbook2x
git clone https://github.com/git/git
make prefix=/usr all doc info   #note this takes a few minutes
sudo make prefix=/usr install install-doc install-html install-info

คำตอบ:


4

ปัญหาหลักที่นี่คือคุณได้เขียนทับไลบรารีที่จัดการโดยผู้จัดการแพคเกจด้วยไฟล์ของคุณเอง แพคเกจอื่น ๆ และสคริปต์ระบบอาจ (ในกรณีของ Python เป็นอย่างมาก ) ขึ้นอยู่กับแพ็กเกจเหล่านี้ซึ่งอาจเป็นเวอร์ชั่น / แพตช์ หากคุณเขียนทับไลบรารีระบบคุณจะเสี่ยงต่อการทำลายระบบ

Python altinstallจะหลีกเลี่ยงปัญหาเหล่านี้บางอย่างโดยไม่เชื่อมโยงpythonคำสั่งเริ่มต้นแต่อาจไม่หลีกเลี่ยงการเหยียบลงบนระบบอย่างสมบูรณ์

หากคุณต้องการคอมไพล์เวอร์ชันที่ใหม่กว่าอาจเป็นการดีกว่าหากใช้คำนำหน้าอื่นเช่น/optหรือโฮมไดเร็กทอรีของผู้ใช้ที่จะรันโปรแกรมเหล่านั้น Python มีกลไกเพิ่มเติมในการแยกไลบรารี่ของระบบออกจากข้อกำหนดของแอปพลิเคชันในรูปแบบของvirtualenvs


สำหรับการติดตั้งเวอร์ชั่น Python ที่ใหม่กว่าสำหรับการใช้งานส่วนตัวของคุณ (ต่างจากการตั้งค่าเซิร์ฟเวอร์หรือระบบผู้ใช้หลายคนฉันแนะนำขั้นตอนต่อไปนี้ (โดยทั่วไป 3 รายการแรกจะใช้ได้กับแพ็คเกจใด ๆ ):

  1. ./configure --prefix=$HOME/.local กำหนดค่าสำหรับการติดตั้งในไดเรกทอรีบ้านของคุณ
  2. make -j5 && make install คอมไพล์ด้วย 5 กระบวนการติดตั้งโดยยึดตามคำนำหน้ากำหนดค่า
  3. เพิ่มexport PATH="$HOME/.local/bin:$PATH"ไปยังจุดสิ้นสุดของไฟล์. bashrc ของคุณเพื่อให้แพคเกจที่ติดตั้งใหม่จะอยู่ในเส้นทางของคุณ เริ่มเทอร์มินัลใหม่หลังจากนี้ จะแสดงtype python3python3 is /home/david/.local/bin/python3
  4. สร้าง virtualenv เมื่อเริ่มต้นโครงการโดยใช้pyvenv-3.4สคริปต์ที่จัดทำโดยแพคเกจ $HOME/.local/bin/pyvenv-3.4 /path/to/my_new_venv.
  5. เปิดใช้งาน virtualenv source /path/to/my_venv/bin/activateเมื่อทำงานในโครงการของคุณ: ติดตั้งแพ็คเกจด้วย pip:pip install flask

ดังนั้นโดยทั่วไปวิธีที่ง่ายที่สุดคือใส่ virtualenv ก่อนจากนั้นทำการติดตั้งง่ายโดยไม่ต้องเลือกคำนำหน้า?
Still.Tony

@ Okuma ไม่จำเป็นต้องใช้ virtualenv หลังจากติดตั้งแพ็กเกจ Python ใหม่แล้วเท่านั้น ฉันได้เพิ่มคำแนะนำเพื่อให้คุณเริ่มต้น
davidism
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.