目錄html
安裝好linux系統後,就配置好了python
mount /dev/cdrom /mnt # 掛載 cd /mnt # 進入mnt目錄 ls # 查看
rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm(包名-版本號.平臺) # 安裝 rpm -Uvh vsftpd-3.0.2-22.el7.x86_64.rpm # 有就更新,沒有就安裝
rpm -e vsftpd-3.0.2-22.el7.x86_64 # 卸載
rpm -q vsftpd(軟件包名) # 查詢 rpm -qa |grep vsf # 模糊查詢
which vim # 查看命令的具體路徑 /usr/bin/vim rpm -qf /usr/bin/vim # 查看命令來自哪一個軟件包
rpm -ivh a b c d e # 全部軟件包一塊兒安裝
# 1.安裝BASE源 cd /etc/yum.repos.d/ # 切換到源的配置文件 mv *.repo /tmp # 將系統自帶的源清除 wget http://mirrors.aliyun.com/repo/Centos-7.repo # 下載安裝centos # 2.安裝EPEL源 yum install -y epel-release
[root@python3 ~]# yum install openssl yum install openssl-devel
yum list yum list |grep vsftpd() # 查看vsftpd開頭的全部軟件包 yum grouplist # 查看全部的組 yum groupinstall "Developement Tools" # 安裝一個組的軟件包
yum remove aaaa(軟件包名)
# 1.將原來的包移除 mv *.repo ali # 2.建立源 vim local.repo # 3.編輯,內容以下: [local] name=localios baseurl=file:///mnt gpgchech=0 # 4.清空原來的源 yum clean all # 5.下載 yum install -y vsftpd
# 1.安裝ftp軟件 yum install -y vsftpd # 2.啓動ftp服務 [root@python3 ~]# systemctl start vsftpd [root@python3 ~]# systemctl enable vsftpd # 3.建立站點目錄,並將光盤軟件拷貝到其中 mkdir /var/ftp/pub/centos7 [root@python3 ~]# cp -a /mnt/* /var/ftp/pub/centos7 # 4.生成ftp站點的yum源配置文件 vim ftp.repo # 建立並進入編輯 # 編輯內容以下: [ftp] name=centos7 baseurl=ftp://10.0.0.100/pub/centos7 gpgcheck=0 # 5.安裝測試軟件 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ openssl-devel zlib zlib-devel -y
# .zip文件解壓縮 unzip xxx.zip # .tar / .tar.gz / .tgz / .tar.bz2 / .tar.xz解壓 tar xf xxx.tar # .iso使用 mount -o loop xxx.iso /test # .iso文件使用,必需要先掛載到某處再使用 # .cpio(早起文件的打包方式) cpio -idcmv < xxx.cpio
# 1.現將源碼文件壓縮包拖入在opt目錄中 cd /opt # 進入opt目錄 ls # 查看opt目錄下全部的文件,顯示爲紅色的壓縮包 # 2.python使用c編譯,現狀gcc環境 [root@py3 opt]# yum install gcc* # 安裝全部gcc包 # 3.安裝openssl,支持訪問http站點 [root@py3 opt]# yum install -y openssl # 4.解壓 [root@py3 opt]# tar xf Python-3.6.1.tar.xz # 5.進入目錄,配置 [root@py3 opt]# cd Python-3.6.1/ [root@py3 Python-3.6.1]# ./confugure # 定製功能,檢查是否知足軟件包的安裝 # 6.編譯c源碼生成二進制 make # 7.完善編譯,完成拷貝受權 make install
cmake # 定製功能 make # 編譯 make install # 受權拷貝
# 1.現將源碼文件壓縮包拖入在opt目錄中 cd /opt # 進入opt目錄 ls # 查看opt目錄下全部的文件,顯示爲紅色的壓縮包 # 2.解壓 [root@py3 opt]# tar xf redis-3.2.10.tar.gz # 3.進入目錄 [root@py3 opt]# cd redis-3.2.10/ # 4.編譯c源碼生成二進制 [root@py3 redis-3.2.10]# make # 5.設置環境變量 vim /etc/profile # 在文件最後一行加上 export PATH=/opt/redis-3.2.10/src:$PATH # 六、生效 source /etc/profile # 7.啓動 [root@py3 ~]# redis-server & # 8.python鏈接redis [root@py3 opt]# unzip redis-py-master.zip # 解壓驅動包 cd redis-py-master # 進入驅動目錄 [root@py3 redis-py-master]# python3 setup.py install # 手動安裝python包 # 9.測試python鏈接redis python3 >>>import redis >>>r = redis.StrictRedis(host='localhost', port=6379) >>>r.set('name', 'oldguo') True >>>r.get('name') 'oldguo'
例如:mysql5.7.20二進制包安裝mysql
useradd mysql mkdir /opt/mysql/data chown -R mysql.mysql /opt/mysql# 1.現將源碼文件壓縮包拖入在opt目錄中 cd /opt # 進入opt目錄,手動拖入 ls # 查看opt目錄下全部的文件,顯示爲紅色的壓縮包 # 能夠設置一個軟連接(快捷方式) [root@py3 opt]# ln -s mysql-5.7.20-linux-glibc2.12-x86_64 mysql # 2.設置環境變量 vim /etc/profile # 編輯環境變量,添加內容以下: export PATH=/opt/mysql/bin:$PATH # 3.生效配置 source /etc/profile # 4.卸載自帶的mariadb yum remove mariadb-libs # 5.生成配置文件 vim /etc/my.cnf # 進入配置文件 #內容以下: [mysqld] basedir=/opt/mysql datadir=/opt/mysql/data socket=/tmp/mysql.sock user=mysql log_error=/var/log/mysql.log log_bin=/opt/mysql/data/mysql-bin server_id=100 [mysql] socket=/tmp/mysql.sock # 6.建立用戶和數據目錄,並受權 [root@py3 ~]# useradd mysql # 建立用戶 [root@py3 ~]# mkdir /opt/mysql/data # 建立目錄 [root@py3 ~]# chown -R mysql.mysql /opt/mysql # 受權 # 7.初始化數據 [root@py3 ~]# touch /var/log/mysql.log # 建立空文件 [root@py3 ~]# chown -R mysql.mysql /var/log/mysql.log # 受權 [root@py3 ~]# mysqld --initialize-insecure --basedir=/opt/mysql --datadir=/opt/mysql/data --user=mysql # 初始化 # 8.啓動mysql數據庫 cd /opt/mysql/support-files [root@py3 support-files]# ./mysql.server start [root@py3 support-files]# cp mysql.server /etc/init.d/mysqld # 方便之後啓動 # 拷貝完之後,啓動mysql /etc/init.d/mysqld restart # 或者使用systemctl啓動 # 生成配置文件 vim /etc/systemd/system/mysqld.service # 編輯內容以下: [Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/opt/mysql/bin/mysqld --defaults-file=/etc/my.cnf LimitNOFILE = 5000 # 啓動關閉 [root@py3 support-files]# systemctl start mysqld [root@py3 support-files]# systemctl restart mysqld [root@py3 support-files]# systemctl stop mysqld # 注意不能兩種啓動凡是混合使用 # 9.測試mysql [root@py3 ~]# mysql # 10.python鏈接mysql測試 mysql>grand all on *.* root@'10.0.0.100' idenitfied by '123'; # 受權用戶 mysql>create database bbs charset utf8; # 建立數據庫 # 安裝python鏈接mysql的包 [root@py3 ~]# pip3 install --upgrade pip # 更新pip [root@py3 ~]# pip3 install pymysql # 安裝pymysql # 測試python程序 vim test.py # 測試內容 import pymysql db = pymysql.connect("10.0.0.100","root","123","bbs" ) cursor.execute("SELECT VERSION()") data = cursor.fetchone() print ("Database version : %s " % data) db.close() # 執行python文件 [root@py3 ~]# python3 test.py
[root@web01 ~]# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ openssl-devel zlib zlib-devel -y
# 方式一:從官網下 pip3 install uwsgi pip3 install django pip3 install other pip3 install bs4 # 方式二:從國內下 vim re.txt # 內容: asn1crypto==0.24.0 beautifulsoup4==4.6.3 bs4==0.0.1 certifi==2018.4.16 cffi==1.11.5 chardet==3.0.4 Click==7.0 cryptography==2.3.1 Django==1.11.9 Flask==1.0.2 Flask-Cors==3.0.6 gevent==1.3.6 greenlet==0.4.15 idna==2.7 ItsDangerous==1.1.0 Jinja2==2.10 lxml==4.2.6 MarkupSafe==1.0 numpy==1.15.3 Pillow==5.3.0 pycparser==2.18 PyMySQL==0.9.2 pytz==2018.7 requests==2.19.1 selenium==3.141.0 six==1.11.0 urllib3==1.23 virtualenv==16.1.0 Werkzeug==0.14.1 wordcloud==1.5.0 # 從豆瓣上下載Django和uwsgi等包 pip3 install -i https://pypi.doubanio.com/simple/ -r re.txt
# 測試uwsgi # 普通用戶測試 [root@py3 ~]# useradd test [root@py3 ~]# cd /opt [root@py3 opt]# vim test.py [root@py3 ~]# su - test # 切換用戶,用普通啓動uwsgi [test@py3 ~]# cd /opt # 內容: def application(env, start_response): start_response('200 OK', [('Content-Type','text/html')]) return [b"Hello Django"] [test@py3 opt]# uwsgi --http :8001 --wsgi-file test.py & # 運行test文件 # 啓動uwsgi之後,運行test.py,瀏覽器訪問10.0.0.100:8001,成功則訪問到Hello Django
# 測試Django [root@web01 ~]# django-admin.py startproject demosite # 生成一個空的Django項目 [root@web01 ~]# cd demosite # 進入demosite項目 [root@web01 demosite]# python3 manage.py runserver 0.0.0.0:8002 # 啓動Django項目 # 將項目中的setting.py文件中的 ALLOWED_HOSTS=[]修改成ALLOWED_HOSTS=['*'],使全部地址均可以訪問 # 在瀏覽器中,測試是否運行成功,10.0.0.100:8002 ,成功則訪問到空Django頁面
uwsgilinux
Django 所提供的是一個開發服務器,這個開發服務器,沒有通過安全測試,並且使用的是 Python 自帶的 simple HTTPServer 建立的,在安全性和效率上都是不行的 而uWSGI 是一個全功能的 HTTP 服務器,他要作的就是把 HTTP 協議轉化成語言支持的網絡協議。好比把 HTTP 協議轉化成 WSGI 協議,讓 Python 能夠直接使用
nginx
Nginx是一個輕量級、高性能、穩定性高、併發性好的HTTP和反向代理服務器ios
正向代理:某些狀況下,代理咱們用戶去訪問服務器,須要用戶手動的設置代理服務器的ip和端口號。 反向代理:是用來代理服務器的,代理咱們要訪問的目標服務器。 代理服務器接受請求,而後將請求轉發給內部網絡的服務器(集羣化), 並將從服務器上獲得的結果返回給客戶端,此時代理服務器對外就表現爲一個服務器
# 1.配置 [root@web01 demosite]# vim /root/demosite/uwsgi.ini # 編輯uwsgi的配置文件 # 內容以下: [uwsgi] socket = 127.0.0.1:9999 master = true workers = 2 max-requests = 1000 buffer-size = 30000 pidfile = /run/uwsgi.pid daemonize = /var/log/uwsgi.log # 2.啓動uwsgi [root@web01 demosite]# uwsgi --ini /root/demosite/uwsgi.ini &
# 1.配置nginx [root@web01 demosite]# vim /etc/nginx/conf.d/py.conf # 編輯內容: server { listen 80; server_name 10.0.0.100; client_max_body_size 100M; location / { index index.html; include uwsgi_params; uwsgi_pass 127.0.0.1:9999; uwsgi_param UWSGI_SCRIPT demosite.wsgi; # demosite.wsgi 是 uwsgi_param UWSGI_CHDIR /root/demosite; # /root/demosite 是項目目錄 } } # 2.重啓nginx [root@web01 demosite]# systemctl restart nginx
瀏覽器訪問10.0.0.100,不用輸端口號,就能夠訪問Django的項目的頁面