python3yum
1. 如何安裝python 3中,並設置本地編程環境在CentOS 7
介紹
Python是一種多功能編程語言,可以用於許多不同的編程項目。開發團隊於1991年首先發表了一個名叫靈感來源於英國喜劇組織Monty Python的名字,他希望Python能夠成為一種有趣的語言。對於初學者和經驗豐富的開發人員來說,Python易於設置,並且以相對直接的方式編寫,並提供對錯誤的即時反饋。Python 3是該語言的最新版本,被認為是Python的未來。
本教程將指導您在本地CentOS 7機器上安裝Python 3,並通過命令行設置編程環境。
先決條件
您將需要一台連接到互聯網的非root超級用戶帳戶的CentOS 7計算機。
第1步 - 准備系統
我們將通過命令行來完成這個安裝。如果您的CentOS 7計算機啟動了圖形用戶界面(GUI)桌面,則可以通過菜單訪問命令行界面,方法是導航到應用程序,然後導航到實用程序,然後單擊終端。如果您需要更多關於終端的指導,請務必閱讀文章「linux終端簡介」。
在開始安裝之前,讓我們確保更新默認的系統應用程序以獲得最新版本。
我們將使用開源包管理工具yum,代表Yellowdog Updater Modified。這是一個常用的工具,用於在基於Red Hat的Linux系統(如CentOS)上處理軟體包。它可以讓你輕松地安裝和更新,以及刪除您的計算機上的軟體包。
我們首先通過運行這個命令來確保yum是最新的:(更新系統是可選執行)
sudo yum -y update
sudo yum -y install yum-utils
sudo yum -y groupinstall development
sudo yum -y install ius-release.rpm
sudo yum -y install python36u
python3.6 -V
- Python3.6.1
sudo yum -y install python36u-pip
sudo pip3.6 install package_name
sudo yum -y install python36u-devel
mkdir environments
cd environments
python3.6 -m venv my_env
- bin include lib lib64 pyvenv.cfg
source my_env/bin/activate
vi hello.py
- print("Hello, World!")
python hello.py
- Hello, World!
該-y標志用於警告系統,我們知道我們正在進行更改,防止終端提示我們確認。
接下來,我們將安裝yum-utils,這是一個擴展和補充yum的實用程序和插件的集合:(也可以不安裝)
最後,我們將安裝CentOS開發工具,這些工具用於允許您從源代碼構建和編譯軟體:(也可以不安裝)
一旦安裝好了,我們的安裝就緒了,我們可以繼續安裝Python 3。
第2步 - 安裝和設置Python 3
CentOS源自RHEL(紅帽企業Linux),其穩定性是其主要焦點。正因為如此,經過測試和穩定版本的應用程序是最常見的系統和可下載的軟體包,所以在CentOS上,你只能找到Python 2。
因為我們想要安裝Python 3的最新上游穩定版本,我們需要安裝IUS,代表Inline with Upstream Stable。作為一個社區項目,IUS為選擇軟體的一些更新版本提供了紅帽軟體包管理器(RPM)軟體包。
要安裝IUS,先要安裝epel-release7包 我們來安裝它yum:
sudo yum -y install epel-release-7-11.noarch.rpm
一旦IUS完成安裝,我們可以安裝最新版本的Python:
當Python的安裝過程完成後,我們可以通過以下python3.6命令檢查其安裝是否成功:
使用成功安裝的Python 3.6版本,我們將收到以下輸出:
Output
接下來我們將安裝pip,它將管理Python的軟體包:
一個用於Python的工具,我們將使用pip來安裝和管理我們可能想在我們的開發項目中使用的編程包。你可以通過鍵入以下命令來安裝Python包
在這里,package_name可以參考任何Python包或者庫,比如用於Web開發的Django或者用於科學計算的NumPy。所以如果你想安裝NumPy,你可以使用命令來完成pip3.6 install numpy。
最後,我們將需要安裝IUS軟體包python36u-devel,它為我們提供了Python 3開發所需的庫和頭文件:
該VENV模塊將用於建立一個虛擬的環境,為我們下一步的發展項目。
第3步 - 建立一個虛擬環境
現在,我們已經安裝了Python,並且已經安裝好了系統,我們可以繼續使用venv創建我們的編程環境。
虛擬環境使您能夠在計算機上為Python項目設置一個獨立的空間,確保您的每個項目都擁有自己的一組依賴項,不會中斷任何其他項目。
建立一個編程環境使我們能夠更好地控制我們的Python項目以及如何處理不同版本的包。使用第三方軟體包時,這一點尤為重要。
您可以根據需要設置盡可能多的Python編程環境。每個環境基本上都是您的計算機中的一個目錄或文件夾,其中包含一些腳本以使其充當環境。
選擇你想把你的Python編程環境放入哪個目錄,或者創建一個新目錄mkdir,如下所示:
一旦進入了你想要環境所在的目錄,就可以通過運行以下命令來創建一個環境:
本質上,這個命令會創建一個新的目錄(在本例中稱為my_env),其中包含一些我們可以通過ls命令看到的項目:
這些文件一起工作,以確保您的項目與本地計算機的更廣泛的上下文隔離,以便系統文件和項目文件不會混合。這是版本控制的好習慣,並確保您的每個項目都可以訪問它所需的特定軟體包。
要使用這個環境,你需要激活它,你可以通過輸入以下命令來調用目錄中的激活腳本bin:
您的提示現在將以您的環境的名稱作為前綴,在這種情況下,它被稱為my_env:
這個前綴讓我們知道my_env環境當前是活動的,這意味著當我們在這里創建程序時,他們將只使用這個特定環境的設置和包。
注意:在虛擬環境中,您可以使用命令python而不是python3.6,而pip不是pip3.6如果您願意的話。如果您在環境外使用Python 3,則需要專門使用python3.6和pip3.6命令。
遵循這些步驟之後,即可使用您的虛擬環境。
第4步 - 創建一個簡單的程序
現在我們已經建立了虛擬環境,我們來創建一個簡單的「Hello,World!」程序。這將確保我們的環境正在工作,並且使我們有機會更熟悉Python,如果我們還沒有。
為此,我們將打開一個名為vim的命令行文本編輯器,並創建一個新文件:
一旦文本文件在我們的終端窗口打開,我們將不得不鍵入i進入插入模式,然後我們可以寫我們的第一個程序:
現在按下ESC退出插入模式。接下來,輸入:x然後ENTER保存並退出文件。
我們現在准備好運行我們的程序:
剛剛創建的hello.py程序應該使終端產生以下輸出:
Output
要離開環境,只需鍵入命令,deactivate然後返回到原始目錄。
結論
恭喜!此時,您已經在本地CentOS 7機器上安裝了Python 3編程環境,並且可以開始一個編碼項目!
2. 群暉Nas下安裝Python3及 PIP
一、准備工作:
sudo -i #管理員切換為root用戶 su - 用戶名切換回其他用戶
#https://www.cnblogs.com/dplearning/p/6099426.html
二、安裝setuptools
1)wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=
2)tar -zxvf setuptools-19.6.tar.gz
3)cd setuptools-19.6
4)python3 setup.py build #此步驟可以省略
5)python3 setup.py install
如果報錯: RuntimeError: Compression requires the (missing) zlib mole
我們需要安裝zlib-devel包,進行支持。
yum install zlib-devel (群暉默認不自帶yum的,需要自行安裝,請自行度娘安裝方法)
需要對python3.5進行重新編譯安裝。
cd python3.5
make & make install 又是漫長的編譯安裝過程。
重新安裝setuptools
python3 setup.py build #此步驟可以省略
python3 setup.py install
三、安裝pip
wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=
tar -zxvf pip-8.0.2.tar.gz
cd pip-8.0.2
python3 setup.py build
python3 setup.py install
如果沒有意外的話,pip安裝完成。
現在我們就可以用pip安裝缺少的requests庫文件了
sudo -i #切換為管理員
cd ~ #切換到用戶家目錄
[root@bb ~]# wget https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
[root@bb ~]# wget https://bootstrap.pypa.io/ez_setup.py
[root@bb ~]# python ez_setup.py #不安裝這個的話沒法 python setup.py install
[root@bb ~]# wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz
[root@bb ~]# tar -xvzf 1.5.5.tar.gz
[root@bb ~]# cd pip-1.5.5/
[root@bb pip-1.5.5]# python3 setup.py install
ln -s /volume1/@appstore/py3k/usr/local/bin/pip3 /usr/bin/pip3 #建立軟鏈接 #https://www.cnblogs.com/lfxiao/p/9569339.html
[root@bb pip-1.5.5]# pip3 install requests
以上方法我在安裝 pip時還是提示缺少 setuptools
最後還是使用
1)wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=
2)tar -zxvf setuptools-19.6.tar.gz
3)cd setuptools-19.6
4)python3 setup.py install
安裝setuptools後再安裝 pip 就成功了
安裝python成功後,就可以上傳python腳本,並設置開機與定時啟動這些python腳本了
3. centos7下安裝python3.8
可以看到執行python,默認是2.7
cd Python-3.8.1
./configure prefix=/usr/local/python3
make && make install
如果最後沒提示出錯,就代表正確安裝了,在/usr/local/目錄下就會有python3目錄
[root@iZwz99sau950q2nhb3pn0aZ local]# cd /usr/local/
[root@iZwz99sau950q2nhb3pn0aZ local]# ls
aegis bin etc games include lib lib64 libexec python3 sbin share src
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3
這里我沒有鏈接到python上,是因為yum要用到python2才能執行,所以現在輸入python的話還是會進入python2.7,輸入python3才會進入python3.8
如果執意想要鏈接到python的話,就得修改一下yum的配置:
vi /usr/bin/yum
把 #! /usr/bin/python 修改為 #! /usr/bin/python2
vi /usr/libexec/urlgrabber-ext-down
把 #! /usr/bin/python 修改為 #! /usr/bin/python2
4. python 版本問題 yum 運行 報錯
原因:
這是因為yum採用python作為命令解釋器,這可以從/usr/bin/yum文件中第一行#!/usr/bin/python發現。而python版本之間兼容性不太好,使得2.X版本與3.0版本之間存在語法不一致問題。而CentOS 5自帶的yum採用的是python2.4,當系統將python升級到2.6或3.0後,出現語法解釋錯誤。
解決辦法:
很簡單,一是升級yum,一是修改yum的解釋器為舊版本python2.4(如果你沒有採用覆蓋升級的話)
升級yum的作法就不詳述了;
修改yum的解釋器為舊版本python2.4:
vi /usr/bin/yum
將第一行"#!/usr/bin/python" 改為 "#!/usr/bin/python2.4"即可
5. 如何在linux環境下運行python項目
1)打開mac終端,輸入指令(項目所在位置/Users/kaka/Desktop/code/ssrpg-locust-slt ,即將本地電腦上的ssrpg-locust-slt項目拷貝到遠程的code目錄下)
scp /Users/dingyuanlin/Desktop/code/ssrpg-locust-slt [email protected] :/code/
2)進入伺服器linux環境,可在/code/目錄下查看到復制的文件
3)在linux環境下查看python環境是否ok
a)先查看python3,安裝python3版本
b)查看是否安裝pip ——pip -V可查看,若無 執行如下指令
curl https://bootstrap.pypa.io/get-pip.py | python3
yum install gcc python-devel
pip install -r requirements.txt
c)安裝redis
yum install epel-release
yum repolist
yum install redis
d)啟動redis服務
service redis start
e)python3 run.py
注意 :
1. 拷貝的命令是需要在客戶端執行,即當前文件夾在哪個位置就需要從哪個系統控制台輸入命令
2. mac系統下使用brew,而centos系統下需要使用yum命令
3. nohup redis-server > web6.log 2>&1 < /dev/null& (nohup表示永久運行,&表示後台運行,該指令為redis服務後台運行)