Linux : configurations liées au système

步履不停
Libérer: 2019-06-19 16:57:00
original
2132 Les gens l'ont consulté

Linux : configurations liées au système

一、用户的创建与python3.6环境的安装

  1. 新的虚拟机或服务器,首先添加用户:useradd -m ice

  2. 为用户添加密码:passwd ice

  3. 新建的用户不能使用sudo, 为创建的普通用户添加sudo权限:

    usermod -a -G adm wcy
    usermod -a -G sudo wcy
    vim /etc/sudoers 修改用户权限
    Copier après la connexion
  4. 修改~/.vimrc配置

    syntax on
    set nu
    set autoindent
    set smartindent
    set tabstop=4
    set shiftwidth=4
    set showmatch
    set ruler
    set cindent
    set background=dark
    set mouse=a
    set mouse=h
    Copier après la connexion
  5. 安装python3.6

    sudo apt-get update
    sudo apt-get install software-properties-common
    sudo add-apt-repository ppa:jonathonf/python-3.6
    sudo apt-get update
    sudo apt-get install python3.6
    cd /usr/bin
    ls | grep python
    sudo rm python
    sudo ln -s python3.6 python
    sudo apt-get install python3-pip
    pip --version
    sudo python pip install --upgrade pip
    pip --version
    Copier après la connexion
  6. 安装虚拟环境

    sudo pip install virtualenv
    sudo pip install virtualenvwrapper
    mkdir  ~/.virtualenvs
    sudo vim  ~/.bashrc 
        添加export WORKON_HOME=$HOME/.virtualenvs
        source /usr/local/bin/virtualenvwrapper.sh
    Copier après la connexion

二、安装MySQL

  1. 安装过程中输入用户名和密码:

    sudo apt-get install mysql-server
    Copier après la connexion
  2. 登录数据库:

    sudo mysql -u root -p
    Copier après la connexion
  3. 开启root用户的全称访问权限

    mysql –u root –p
    use mysql;
    update user set host = '%' where user = 'root';
    grant all privileges on *.* to 'root'@'%' identified by '你的密码';
    flush privileges;
    quit;
    Copier après la connexion
    Copier après la connexion
  4. 修改my.conf中的ip绑定

    mysql –u root –p
    use mysql;
    update user set host = '%' where user = 'root';
    grant all privileges on *.* to 'root'@'%' identified by '你的密码';
    flush privileges;
    quit;
    Copier après la connexion
    Copier après la connexion
  5. 重启服务:

    sudo service mysql restart
    Copier après la connexion

三、安装mongodb

  1. 远程上传至服务器

  • 若在linux直接使用scp协议:

    切换至所要上传的文件目录下

    scp  -r 文件名 用户名@IP(或域名):上传至服务器所在 的路径

    scp 用户名@IP(或域名):上传至服务器所在的路径 本地路径

  • 使用winscp可以直接拖动

  • 使用gitbash可以模拟linux系统,方法与(1)相同

  • mongodb的安装与配置

    tar -zxvf mongodb-linux-x86_64-ubuntu1604-3.4.0.tgz
    sudo mv mongodb-linux-x86_64-ubuntu1604-3.4.0/ /usr/local/mongodb
    Copier après la connexion
    sudo vim /etc/profile 
    最后一行添加export PATH=/usr/local/mongodb/bin:$PATH
    保存退出
    source /etc/profile
    Copier après la connexion
    sudo vim /etc/mongod.conf
    
    verbose=true
    port=27017
    logpath=/var/log/mongodb/logs/mongodb.log
    logappend=true
    dbpath=/var/lib/mongodb/db
    directoryperdb=true
    auth=false
    fork=true
    quiet=true
    Copier après la connexion
    sudo mkdir /var/log/mongodb/logs/ -p
    sudo touch /var/log/mongodb/logs/mongodb.log
    sudo mkdir /var/lib/mongodb/db -p
    Copier après la connexion
    注册开机启动:sudo vim /etc/init.d/mongodb
    !/bin/sh
    ### BEGIN INIT INFO
    # Provides: mongodb
    # Required-Start:
    # Required-Stop:
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: mongodb
    # Description: mongo db server
    ### END INIT INFO
    . /lib/lsb/init-functions
    PROGRAM=/usr/local/mongodb/bin/mongod
    MONGOPID=`ps -ef | grep 'mongod' | grep -v grep | awk '{print $2}'`
    test -x $PROGRAM || exit 0
    case "$1" in
    start)
    ulimit -n 3000
    log_begin_msg "Starting MongoDB server"
    $PROGRAM -f /etc/mongod.conf
    log_end_msg 0
    ;;
    stop)
    log_begin_msg "Stopping MongoDB server"
    if [ ! -z "$MONGOPID" ]; then
    kill -15 $MONGOPID
    fi
    log_end_msg 0
    ;;
    status)
    ;;
    *)
    log_success_msg "Usage: /etc/init.d/mongodb {start|stop|status}"
    exit 1
    esac
    exit 0
    Copier après la connexion
    sudo chmod +x /etc/init.d/mongodb
    Copier après la connexion
  • 注册开机脚本:

    sudo update-rc.d mongodb defaults
    (注意:移除使用sudo update-rc.d –f mongodb remove)
    Copier après la connexion
  • 启动服务:

    sudo service mongodb start
    Copier après la connexion
  • 客户端连接:

    mongo
    Copier après la connexion
  • 四、安装redis

    1. 安装tcl:

      sudo apt-get install tcl
      Copier après la connexion
    2. 解压安装包:

      tar -zxvf  redis-3.2.5.tar.gz
      Copier après la connexion
    3. 创建安装目录并进入该目录:

      sudo mv redis-3.2.5/ /usr/local/redis  
      cd /usr/local/redis
      Copier après la connexion
    4. 编译安装:

      sudo make   
      sudo make test   
      sudo make install
      Copier après la connexion
    5. 测试:

      /usr/local/redis/src/redis-server
      /usr/local/redis/src/redis-cli
      set name ice
      get name
      Copier après la connexion
    6. 创建相关目录:

      sudo mkdir /etc/redis(配置文件路径)
      sudo mkdir /var/lib/redis(redis数据存储路径)
      Copier après la connexion
    7. 安装服务:

      cd /usr/local/redis/utils         
      sudo ./install_server.sh
      Copier après la connexion
    8. 重启服务:

      redis-server       
      redis-cli
      Copier après la connexion
      Copier après la connexion
    9. 测试:

      redis-server       
      redis-cli
      Copier après la connexion
      Copier après la connexion
    10. 配置文件:

      cd /etc/redis
      sudo vim /etc/redis/6379.conf
      
      bind 127.0.0.1 绑定IP
      daemonize yes 是否以守护进程运行
      requirepass 密码
      重启服务:
      ps ajx | grep redis
      kill -9 对应进程号
      sudo redis-server /etc/redis/6379.conf
      Copier après la connexion
    11. 直接开启客户机:

      redis-cli
      Copier après la connexion

    五、安装git

    1. 安装:

      sudo apt-get install git
      Copier après la connexion
    2. 配置git:

      git config –global user.name “ice”
      git config –global user.email “152516xxxx@qq.com”
      Copier après la connexion
    3. 生成秘钥:

      ssh-keygen –t rsa –C 152516xxxx@qq.com
      Copier après la connexion
    4. 在~/.ssh/ id_rsa.pub文件中复制生成的秘钥,打开GitHub网管,创建一个公钥

    5. 验证秘钥:

      ssh –T git@github.com
      Copier après la connexion
    6. 测试:

      git clone git@github.com:用户名/用户名.git
      Copier après la connexion

    六、nginx安装

    1. 安装zlib依赖库:

      sudo apt-get install zlib1g-dev
      Copier après la connexion
    2. 进入解压相关文件:

      tar –xzvf openssl-1.0.1.tar.gz
      tar –xzvf nginx-1.11.3.tar.gz
      tar –xzvf pcre-8.41. tar.gz,
      Copier après la connexion
    3. 进入Nginx解压目录:

      cd /home/ice/ nginx-1.11.3/
      Copier après la connexion
    4. 配置环境:

      ./configure  --prefix=/usr/local/nginx  
      --with-http_ssl_module  
      --with-http_flv_module  
      --with-http_stub_status_module   
      --with-http_gzip_static_module 
      --with-pcre=../pcre-8.41  
      --with-openssl=../openssl-1.0.1
      Copier après la connexion
    5. 编译:

      make
      如果出现”pcre.h No such file or directory”,
      安装”sudo apt-get install libpcre3-dev”
      Copier après la connexion
    6. 安装

      sudo make install
      Copier après la connexion
    7. 说明:

      nginx会被安装在/usr/local/nginx目录下
      conf:存放配置文件     html:静态网页    
      logs:存放日志文件     sbin:存放可执行文件
      Copier après la connexion
    8. 相关命令

      启动Nginx服务: sudo /usr/local/nginx/sbin/nginx
      关闭Nginx服务: sudo /usr/local/nginx/sbin/nginx -s stop
      重新加载配置:  sudo /usr/local/nginx/sbin/nginx –s reload
      指定配置文件:  sudo /usr/local/nginx/sbin/nginx –c /usr/local/nginx/conf/nginx.conf
      查看版本信息:  sudo /usr/local/nginx/sbin/nginx –V
      查看80端口的程序:nesta –ano | grep 80
      关闭占用80端口的程序:sudo fuser –k 80/tcp
      Copier après la connexion
    9. 启动服务:

      sudo /usr/local/nginx/sbin/nginx 或cd切换到sbin目录下执行./nginx
      Copier après la connexion
    10. 打开浏览器,输入Nginx服务器IP地址

    11. 配置

    • /usr/local/nginx/conf/nginx.conf
      Copier après la connexion
    • 全局设置:
      定义全局错误日志文件,需要什么等级可以设置开启
      error_log  logs/error.log;
      #error_log  logs/error.log  notice;
      #error_log  logs/error.log  info;
      worker_rlimit_nofile:指定一个nginx可以打开的最多文件描述符,可以使用“ulimit –n 65535”进行设置(虚拟机默认设置1024),阿里云服务器默认就是65535
      Copier après la connexion
    • events(nginx工作模式)
      events {
      use epoll;   linux标准的工作模式,nginx高效的基石
      worker_connections  1024;    定义nginx每个进程的最大连接数
      }
      Copier après la connexion
    • http(http设置)
      sendfile   on;   开启高效文件传输模式
      tcp_nopush  on;   防止网络阻塞
      tcp_nodelay  on;
      keepalive_timeout  65;    设置客户端连接活动的超时时间
      gzip on;   使用压缩模块
      Copier après la connexion
    • server(主机设置)
      			server{
      			  listen          80;
      			  server_name    localhsot www.ice.xin 39.105.61.52;
      			  charser utf-8;
      			# 负载均衡模块,upstream是负载均衡器
      			upstream ice {
      				server 39.105.61.52:8000 weight=1 max_fails=1 fail_timeout=300s;
      				server 39.105.61.53:8000 weight=1 max_fails=1 fail_timeout=300s;
      			}
      
      			  # 负载均衡采用轮循方式
      			  server server 39.105.61.52:8000 weight=1 max_fails=1 fail_timeout=300s;
      			}
      			  # 反向代理配置, 
      			  location / {
      #适用于django自带的runserver方式启动
      				#proxy_pass http://www.ice.xin:8000;
      				#proxy_pass http://www.ice.xin:8000;
      				#proxy_set_header Host $http_host;
      				# 设置uwsgi启动
      				include uwsgi_params;
      				uwsgi_pass ice;
      			  }
      }
      Copier après la connexion
  • 重启nginx服务:

    sudo /usr/local/nginx/sbin/nginx
    Copier après la connexion
  • 七、部署Django项目

    1. 安装Django:

      sudo pip install Django==1.11.4
      Copier après la connexion
    2. 创建Django项目:部署前需要关闭调试,允许任何机器访问

    3. 安装uwsgi:

      sudo apt-get install libpython3.6-dev(2.7不用安装)
      pip install uwsgi
      Copier après la connexion
    4. 创建:在工程目录下创建名为uwsgi.ini的文件

    5. 配置uwsgi.ini:

      [uwsgi]
      #使用nginx连接时使用功能,上线时才使用socket
      socket=0.0.0.0:8000
      #直接做web项目服务器使用
      #http=0.0.0.0:8000
      #项目目录
      chdir=/home/'/project
      #项目中wsgi.py文件的目录,相对于项目目录
      wsgi-file=project/wsgi.py
      processess=2
      threads=2
      master=True
      pidfile=uwsgi.pid
      #是否以守护进程的方式启动
      daemonize=uwsgi.log
      Copier après la connexion
    6. 启动:

      uwsgi --ini uwsgi.ini
      Copier après la connexion
    7. 停止:

      uwsgi --stop uwsgi.pid
      Copier après la connexion
    8. 配置Nginx:

    • 在/usr/local/nginx/conf/nginx.conf中添加:
      		location /static {
      			alias /var/www/xxx/static/;
      }
      Copier après la connexion
    • 创建静态文件的存储文件
      		sudo mkdir –vp /var/www/xxx/static/
      		sudo chmod 777 /var/www/xxx/static/
      Copier après la connexion
  • 配置静态文件

    • 在settings.py中添加:
      STATIC_ROOT = ‘var/www/xxx/static/'
      STATIC_URL = ‘/static/'
      Copier après la connexion
    • 迁移静态文件
      python manage.py collectstatic
      Copier après la connexion

    更多Linux文章,请访问Linux教程栏目进行学习!

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Étiquettes associées:
    source:php.cn
    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!