Ubuntu 14.4 đi kèm với Python 2.7.6 tích hợp, nhưng tôi muốn nâng cấp nó lên 2.7.9 (nó có các tính năng bảo mật mà tôi muốn).
Điều đó thậm chí có thể? Nếu vậy, làm thế nào điều này có thể đạt được?
Ubuntu 14.4 đi kèm với Python 2.7.6 tích hợp, nhưng tôi muốn nâng cấp nó lên 2.7.9 (nó có các tính năng bảo mật mà tôi muốn).
Điều đó thậm chí có thể? Nếu vậy, làm thế nào điều này có thể đạt được?
Câu trả lời:
Bạn có thể sử dụng pyenv:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
Sau đó thêm
# for PyEnv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$HOME/.pyenv/bin:$PATH"
export PATH="$HOME/.pyenv/shims:$PATH"
eval "$(pyenv init -)"
đến .bash_profile sau đó bạn có thể thấy phiên bản python bạn muốn cài đặt hoặc cập nhật:
pyenv install --list
muốn trăn 2.7.10? bạn co thể thử:
pyenv virtualenv 2.7.10
Hy vọng nó có thể giúp bạn.
ppa: fkrull / dowsnakes là phiên bản mới nhất của python2.7
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get upgrade
Nó sẽ nâng cấp python lên 2.7.10
Tôi không phải là người hâm mộ các câu trả lời trước đó đề nghị cài đặt từ nhiều PPA khác nhau. Không có ý định thiếu tôn trọng, nhưng tôi không biết những người đã xây dựng chúng và tôi không biết những gì có thể có trong đó. Trong bất kỳ môi trường nào mà ai đó phải trả lời cho một chuyên gia bảo mật rằng thực tiễn sẽ được tán thành.
Tôi chỉ thấy rằng tải xuống 2.7.9 từ nguồn và cài đặt nó cạnh nhau là một khởi đầu tốt. Bài viết blog tuyệt vời này bao gồm các bước. (được tạo lại ở đây để tuân thủ các nguyên tắc tràn ngăn xếp)
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar xfz Python-2.7.9.tgz
cd Python-2.7.9/
./configure --prefix /usr/local/lib/python2.7.9
make
make install
Kiểm tra nếu phiên bản hoạt động
/usr/local/lib/python2.7.9/bin/python -V
Python 2.7.9
Bây giờ tôi đã cài đặt 2.7.9, tôi có thể gọi trực tiếp hoặc symlink tới nó từ bất cứ nơi nào tôi muốn. (hoặc sao chép nó vào virtualenv, v.v.)
Và lưu ý rằng tôi đã đến đây từ một tình huống mà tôi đang nhận được cảnh báo về nền tảng không an toàn và cảnh báo mất tích của SNI. Mà dẫn tôi đến đây . Tôi tưởng tượng nhiều người đang tìm thấy câu hỏi này thông qua cùng một con đường. Và nếu đó là lý do tại sao bạn ở đây đoạn trích này cũng có thể được sử dụng cho bạn
pip install urllib3[secure]
virtualenv
. Lý do tôi cảm thấy rằng điều này tốt hơn, là nó không dựa vào bất kỳ ứng dụng hoặc kho lưu trữ của bên thứ ba nào có thể phá vỡ thứ gì khác.
Đây là kho lưu trữ của bên thứ ba mới được nâng cấp:
sudo add-apt-repository ppa:jonathonf/python-2.7
sudo apt-get update
sudo apt-get install python2.7
python --version
Phiên bản bạn muốn đã có trong Ubuntu, trong bản phát hành Vivid (trước). Nếu bạn dũng cảm, bạn có thể kết hợp các bản phát hành và cài đặt phiên bản Python của Vivid trong Trusty. Dưới đây là một giải pháp chung hoạt động trên một số gói, tôi không thể bảo hành nó với Python. Cơ hội là ~ 50/50 rằng nó sẽ thành công. Tuy nhiên, nếu bạn tìm thấy một kho lưu trữ backport thích hợp cho 14.04 với phiên bản gói yêu cầu của bạn, thì đó sẽ là một lựa chọn tốt hơn.
Bạn có dòng '... chính đáng tin cậy' /etc/apt/sources.list
, sao chép hai lần, thay đổi 'đáng tin cậy' thành 'không tưởng' và 'sống động'.
Chạy đi apt-get update
rồi apt-get -t vivid install python2.7
. Xem lại các phụ thuộc được cài đặt trước khi tiến hành. Hủy bỏ nâng cấp khi bạn nghi ngờ bất kỳ thiệt hại cho hệ thống của bạn (đã xóa các gói quan trọng, v.v.).
Loại bỏ hoặc băm hai dòng từ /etc/apt/sources.list
.
Không bao giờ làm điều đó trên máy sản xuất. Tạo một bản sao lưu của hệ điều hành của bạn và chuẩn bị phương tiện khởi động để khôi phục nó nếu cần. Mong đợi các vấn đề về nâng cấp. Mày đã được cảnh báo.