이번 포스팅에서는 CentOS 8 Python 3.7 Develop Setting 을 해보겠습니다.
먼저 현재 파이썬 버전 확인!
환경은 CentOS 8 버전 입니다.
그냥 python으로 명령어를 치면 안나오고 python3 버전만 깔려있습니다.
python2를 해보니 Install할지 물어보는 걸 보면 CentOS 8버전에는 python2가 없는 듯 합니다.
Default Python3가 3.6.8인데 저는 프로젝트에서 3.7버전을 사용하기 때문에
python 3.7을 다운받고 Default로 잡는 것 까지 세팅해보겠습니다.
1. 패키지 관리자 yum update 진행.
CentOS8버전부터는 DNF 를 민다는데.. yum으로 해도 될듯합니다. (예제도 yum이 많을듯..)
2. 필수 패키지 설치
sudo yum install gcc openssl-devel libffi-devel bzip2-devel
3. python 버전 별 경로 확인 후 Install
https://www.python.org/ftp/python/ 에서 버전을 확인하고
tgz 파일로 다운받습니다.
sudo wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz
Python-3.7.6.tgz 파일이 설치됩니다.
해당 파일을 /usr/src 폴더로 옮겨서 정리해줍시다.
sudo mv Python-3.7.6.tgz /usr/src/Python-3.7.6.tgz
cd /usr/src 로 해당 경로로 이동 후 압축파일을 풀어줍시다.
sudo tar xzf Python-3.7.6.tgz
Python-3.7.6이라는 폴더가 생성된 것을 확인할 수 있습니다.
해당 폴더로 이동 후 configure 파일로 설정을 잡아줍니다.
sudo ./configure --enable-optimizations
바이너리에 해당버전 파이썬 등록.
sudo make altinstall
진행하려는데 make 패키지가 없군요.
make 패키지부터 설치해줍시다.
sudo yum install make
다시 sudo make altinstall
어마어마한게 지나갑니다.
make install 과 차이를 찾아보니
make install 은 덮어쓰기.
make altinstall 은 새로 만들기더군요.
여기까지 마치셨다면 python3.7 명령어로 python3.7을 실행할 수 있을겁니다.
이제 Default python 명령어에 python 3.7.6을 등록해보자.
which python3.7 명령어로 경로확인.
/usr/local/bin/python3.7
bashrc 파일 수정하기
sudo vi /root/.bashrc
alias python="/usr/local/bin/python3.7" 를 추가해주자.
root 권한으로 source /root/.bashrc 명령어 실행.
- 다른 계정으로 접근중이라면 su 명령어를 이용해 root 계정을 빌려오자.
python 명령어 확인.
su 권한을 반납하려면 exit 명령어로 나가면 된다.
root 권한은 최대한 사용하지 않는 것이 좋다고 하니 참고하기 바란다.
# 추가내용. (각 계정별 default python setting)
위 내용대로하면 root 계정에서만 python 명령어로 python 3.7.6 이 실행되는 것을 확인했다.
일반 사용자(현재 session 계정) 에 등록해보자.
sudo vi ~/.bashrc
.bashrc 파일에 alias python="/usr/local/bin/python3.7" 추가
source .bashrc 실행
python 명령어 체크.
pip3.7 도 pip에 등록해줍시다.
완료.
추가.
모든 유저에게 경로를 등록할 수 있다.
/etc/profile 에 경로등록 (root 권한 필요)
위 예제에서는 alias 를 사용했지만 export 를 활용해도 된다.
export PATH=[PATH]:$PATH
profile 수정 후 source 는 동일하게 진행.
1. edit /etc/profile
2. source /etc/profile
3. test
sudo 명령으로 python 이나 pip 을 실행하면 not found 에러가 발생한다.
이 때 symbolic link 를 걸어주면 sudo 권한으로도 실행할 수 있다.
sudo ln -s /usr/local/bin/pip3.7 /usr/bin/pip3.7
sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3.7
'Linux' 카테고리의 다른 글
Jupyter Notebook .ipynb file to .py (0) | 2020.03.24 |
---|---|
CentOS 8 Jupyter Notebook 에 Virtualenv 연결하기 (0) | 2020.03.23 |
CentOS 8 Jupyter Notebook 설치 및 세팅하기 Virtualbox (0) | 2020.03.20 |
Virtualbox Linux Putty 연동하기 (0) | 2020.03.13 |
Virtualbox CentOS 8 설치하기 (0) | 2020.03.13 |
최근댓글