最近在學習一些服務器上的操作,學着熟悉Liunx系統,記錄下自己踩過的坑吧
1、開機后更新系統:
yum -y upgrade yum - y update
2、查看已安裝的應用
yum list
3、接下來因為要用到anaconda+Python環境,配置下:
1.首先,你要知道系統現在的python的位置在哪兒:
[root@root ~]# whereis python python: /usr/bin/python2.7 /usr/bin/python /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz 可以知道我們的python在 /usr/bin目錄中 [root@root ~]# cd /usr/bin/ [root@root bin]# ll python* lrwxrwxrwx. 1 root root 7 2月 7 09:30 python -> python2 lrwxrwxrwx. 1 root root 9 2月 7 09:30 python2 -> python2.7 -rwxr-xr-x. 1 root root 7136 8月 4 2017 python2.7
可以看到,python指向的是python2,python2指向的是python2.7,因此我們可以裝個python3,然后將python指向python3,然后python2指向python2.7,那么兩個版本的python就能共存了。
2.因為我們要安裝python3,所以要先安裝相關包,用於下載編譯python3:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make #運行了以上命令以后,就安裝了編譯python3所用到的相關依賴
3.默認的,centos7也沒有安裝pip。
#運行這個命令添加epel擴展源 yum -y install epel-release #安裝pip yum install python-pip
4.用pip裝wget
pip install wget
5.用wget下載python3的源碼包
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
6.編譯python3源碼包
#解壓 xz -d Python-3.6.4.tar.xz tar -xf Python-3.6.4.tar #進入解壓后的目錄,依次執行下面命令進行手動編譯 cd Python-3.6.4 ./configure prefix=/usr/local/python3 make && make install # 如果出現can't decompress data; zlib not available這個錯誤,則需要安裝相關庫 #安裝依賴zlib、zlib-devel yum install zlib zlib yum install zlib zlib-devel
如果最后沒提示出錯,就代表正確安裝了,在/usr/local/目錄下就會有python3目錄
7.添加軟鏈接
#將原來的鏈接備份 mv /usr/bin/python /usr/bin/python.bak #添加python3的軟鏈接 ln -s /usr/local/python3/bin/python3.6 /usr/bin/python #測試是否安裝成功了 python -V
8.更改yum配置,因為其要用到python2才能執行,否則會導致yum不能正常使用
vi /usr/bin/yum 把#! /usr/bin/python修改為#! /usr/bin/python2 vi /usr/libexec/urlgrabber-ext-down 把#! /usr/bin/python 修改為#! /usr/bin/python2
4、在Linux下刪除文件用rm命令,具體用法如下:
rm [選項] 文件 選項說明: -f -force 忽略不存在的文件,強制刪除,無任何提示 -i --interactive 進行交互式地刪除 -r | -R --recursive 遞歸式地刪除列出的目錄下的所有目錄和文件 -v --verbose 詳細顯示進行的步驟 命令實例: 1、常規刪除a.txt文件 [root]# rm a.txt 2、強行刪除file.log文件 [root]# rm -f file.log 3、刪除dirname目錄下的所有東西 [root]# rm -ivrf dirname
5、在Centos下安裝Anaconda
下載:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
安裝:bash Anaconda3-5.3.1-Linux-x86_64.sh
接下來會自動安裝至:/root/anaconda/
注:若沒有將地址添加到PATH中可用:
export PATH=/root/anaconda3/bin:$PATH
測試anaconda已經安裝好:conda -V
創建專門的運行環境
conda create -n tensorflow
啟動Tensorflow運行環境
source activate tensorflow #關閉運行環境 #source deactivate tensorflow #添加清華大學 TUNA提供的Anaconda倉庫鏡像 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_urls yes conda install numpy #測試是否添加成功 #搜索可用版本 anaconda search -t conda tensorflow #選擇一個較新的CPU或GPU版本,如jjh_cio_testing/tensorflow的1.0.1版本,輸入如下命令查詢安裝命令 anaconda show jjh_cio_testing/tensorflow #使用最后一行的提示命令進行安裝 conda install --channel https://conda.anaconda.org/jjh_cio_testing tensorflow #conda會自動檢測安裝此版本的Tensorflow所依賴的庫,如果你的Anaconda缺少這些依賴庫,會提示你安裝。
測試:
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))
6、服務器端安裝好Anaconda后就要進行遠程訪問了,此時我使用的是windows系統,之前一直使用Xshell的方式進行服務器配置環節。
服務器端啟動Jupyter Notebook:
檢查本地是否安裝成功並生成配置文件 jupyter notebook –generate-config –allow-root 生成遠程訪問密碼 #利用ipython生成密碼 [root@localhost ~]# ipython Python 3.6.2 |Anaconda, Inc.| (default, Sep 30 2017, 18:42:57) Type 'copyright', 'credits' or 'license' for more information IPython 6.1.0 -- An enhanced Interactive Python. Type '?' for help. In [1]: from notebook.auth import passwd In [2]: passwd() Enter password: Verify password: Out[2]: '*******' 修改配置文件 vi /root/.jupyter/jupyter_notebook_config.py c.NotebookApp.ip='*' c.NotebookApp.password = u'*******'將上述生成的密碼復制到這里 c.NotebookApp.open_browser = False c.NotebookApp.port =8888 測試遠程訪問 遠程連接服務器后,終端輸入Jupyter notebook 打開服務。在瀏覽器中輸入<serverip>:8888,測試是否訪問成功,訪問不成功需將服務器防火牆關閉: systemctl stop firewalld.service
7、當需要使用服務時:
(1) 在服務端輸入 shell 指令:
jupyter notebook --ip=0.0.0.0 --no-browser --port=1111
將會創建一個沒有瀏覽器的notebook,ip這里指定為0.0.0.0(比較隨意,不會和其他用戶產生沖突),端口號為xxxx,一般端口選擇1024-49151中任一即可,如1111,為避免與其他服務端口沖突,建議自己另設置一個端口號。本文以端口號 1111 為例。
(2)在Windows上打開git的 bash 終端(或者PowerShell也可),輸入:
ssh -N -f -L localhost:1112:localhost:1111 username@serverIP
第一個localhost填入xxxx+1,第一個localhost填入xxxx,username為服務器端的用戶名,serverIP填入服務器ip。
執行命令后需要輸入服務器用戶名密碼,輸出完成后沒有其他顯示,保持bash終端不要關閉。
(3)在個人電腦上打開瀏覽器,輸入http://localhost:xxxx+1 即可
8、配置tensorflow時遇到兩個小問題:
(1).遇到了ERROR: Cannot uninstall 'wrapt'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
辦法1:輸入 pip install -U --ignore-installed wrapt enum34 simplejson netaddr
參考:https://www.cnblogs.com/xiaowei2092/p/11025155.html
(2)遇到了ERROR: tensorboard 1.14.0 has requirement setuptools>=41.0.0, but you'll have setuptools 39.1.0 which is incompatible.
原因: setuptools 版本太低
辦法:更新setuptools版本 輸入 pip install --upgrade setuptools