Linux典型应用小结

安装虚拟机

下载Centos镜像和VirtualBox,之后启动安装

安装后设置

网络设置

安装完执行ifconfig是无法执行的,因为安装的镜像是最小安装,因此需要手动进行设置

首先执行ip addr,查看本机的网卡信息,接着执行

vi /etc/sysconfig/network-scripts/ifcfg-xxx
# xxx 为上面找到的网卡

修改其中的ONBOOT修改为YES,之后重启

service network restart

接着安装net-tools

yum install net-tools

之后就可以使用ifconig命令了

替换默认源

安装必要软件

yum install wget vim

进行备份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本repo文件, 放入/etc/yum.repos.d/

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

运行以下命令生成缓存

yum clean all
yum makecache

Linux常用命令

软件操作命令

  • 软件包管理器:yum
  • 安装软件:yum install xxx
  • 卸载软件: yum remove xxx
  • 搜索软件: yum search xxx
  • 清理缓存: yum clean packages
  • 列出已安装: yum list
  • 软件包信息:yum info xxx

服务器硬件资源信息

  • 内存:free -m
  • 硬盘: df -h
  • 负载: w/top
  • CPU: cat /proc/cpuinfo

文件操作命令

Linux文件目录结构

  • 根目录: /
  • 家目录: /home
  • 临时目录:/tmp
  • 配置目录: /etc
  • 用户程序目录: /usr

文件操作基本命令

  • 查看目录下的文件: ls
  • 新建文件: touch
  • 新建文件夹: mkdir
  • 进入目录: cd
  • 删除文件: rm
  • 删除文件夹: rm -rf
  • 复制: cp
  • 移动: mv
  • 显示路径: pwd

VIM常用操作

  • 移到行首: G
  • 移到行尾: gg
  • 删除当前行: dd
  • 恢复删除:u
  • 复制当前行: yy
  • 粘贴: p
  • 进入插入模式: i
  • 退出模式: esc

文件搜索、查找、读取

  • 从文件尾部开始读取: tail
  • 从文件头部度:head
  • 读取整个文件:cat
  • 分页读取:more
  • 可控分页: less
  • 搜索关键字: grep
  • 查找文件: find
  • 统计个数:wc

文件解压缩

文件解压缩主要使用的是tar命令

创建一个压缩文件

tar -cd xxxxx.tar 包含的文件 包含的文件

查看压缩文件中的文件列表

tar tf xxx.tar

解压文件

tar -xf xxx.tar

系统用户操作命令

  • 添加用户: useradd xxx
  • 添加用户:adduser xxx
  • 删除用户: userdel -r xxx
  • 设置密码: passwd xxx

防火墙设置

  • 安装防火墙: yum install firewalld
  • 启动: service firewalld start
  • 检查状态: service firewalld status
  • 关闭或禁用: service firewalld stop/disable
  • 添加一个服务: firewall-cmd –add-service=xxx
  • 移除一个服务: firewall-cmd –remove-service=xxx

提权和文件下载和上传

提权

首先将账号加入到可提权账号列表中

visudo

# 然后在文件尾部加上
%用户名  ALL(ALL)  ALL

然后就能进行提权了

sudo yum install vim

文件下载

直接使用wget即可

文件上传

# 将文件上传到服务器地址
scp 文件 用户名@主机地址:文件保存路径

# 将服务器上的文件下载到本地
scp 用户名@主机地址:文件保存路径 本地路径

在windows中使用xshell进行文件上传和下载

在服务器中安装

yum install lrzsz

上传

rz

下载

sz 文件名

WebServer安装和配置讲解

Apache的基本操作

Apache的安装

  • 安装:yum install httpd
  • 启动: service httpd start
  • 停止: service httpd stop

当启动后,由于防火墙的关系无法访问,因此需要店家规则或者关闭防火墙

添加
firewall-cmd --zone=public --add-port=80/tcp --permanent    --permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload

Apache的虚拟主机配置

编辑配置文件

vim /etc/httpd/conf/httpd.conf

在其中写上虚拟主机的配置

<VirtualHost *:80>
        ServerName www.test.com
        DocumentRoot /data/www
        <Directory "/data/www">
                Options Indexes FollowSymLinks
                AllowOverride None
                Require all granted
        </Directory>
</VirtualHost>

然后在网站路径上创建网页,并在机器上配置host
如果上述配置完成后无法访问,则需要

setenforce 0

配置Apache伪静态

在配置文件中加入

LoadModule rewrite_module modules/mod_rewrite.so

在配置虚拟主机处加入

<VirtualHost *:80>
        ServerName www.test.com
        DocumentRoot /data/www
        <Directory "/data/www">
                Options Indexes FollowSymLinks
                AllowOverride None
                Require all granted
                <IfModule mod_rewrite.c>
                        RewriteEngine On
                        RewriteRule ^(.*).php$ index.html
                </IfModule>
        </Directory>
</VirtualHost>

重启服务器,这样访问类似于http://www.demo.com/2.php也为跳转到首页

Nginx基本操作

Nginx的安装

  • 安装:yum install nginx
  • 启动: service nginx start
  • 停止: service nginx stop
  • 重载: service nginx reload

在Nginx安装前需要添加yum的资源库

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

然后执行

yum install nginx

nginx站点配置

在/etc/nginx/conf.d下面拷贝一份default.conf为demo.conf作为自定义站点的配置文件, 在其中配置

server {
    listen       80;
    # 可以进行多端口配置,只需要在下面再加一个listen即可
    # listen 9000;
    # 也可以进行多域名,只要在后面再加入即可
    server_name  www.demo.com;
    location / {
        root   /data/www;
        index  index.html index.htm;
    }
}

nginx伪静态配置

nginx中配置伪静态比较简单只需要在配置文件中加入

server {
    listen       80;
    server_name  www.demo.com;
    location / {
        root   /data/www;
        index  index.html index.htm;
        rewrite ^(.*)\.php$ /index.html;
    }
}

### nginx反向代理

nginx反向代理只要加入proxy_pass即可

```shell

server {
    listen       80;
    server_name  www.demo.com;
    location / {
        root   /data/www;
        index  index.html index.htm;
        proxy_pass http://blog.jiangyixin.top;
    }





<div class="se-preview-section-delimiter"></div>

这样就能自动代理到http://blog.jiangyixin.top

nginx负载均衡

upstream myblog {
   server 151.101.77.147:80 weight=6;
   server 151.101.77.146:80 weight=2;
   # 可以在这里配置多个server来达到负载均衡的效果
   # weight值越高,该服务器被访问的概率越高
}
server {
    listen       80;
    server_name  www.demo.com;
    location / {
        root   /data/www;
        index  index.html index.htm;
        proxy_pass http://myblog;
}




<div class="se-preview-section-delimiter"></div>

数据库服务

Mysql安装与连接

Mysql的基本操作

  • 安装: yum install mysql-community-server
  • 启动:service mysqld start/restart
  • 停止: service mysqld stop

Mysql安装

Centos默认安装了mariadb,因此需要先进行卸载

yum removwe mariadb-libs.x86_64




<div class="se-preview-section-delimiter"></div>

下载Mysql源
https://dev.mysql.com/downloads/repo/yum/

安装Mysql源

yum localinstall mysql57-community-release-el7-11.noarch.rpm




<div class="se-preview-section-delimiter"></div>

安装Mysql

yum install mysql-community-server




<div class="se-preview-section-delimiter"></div>

查看Mysql密码

cat /var/log/mysqld.log | grep password




<div class="se-preview-section-delimiter"></div>

重新设置Mysql密码





<div class="se-preview-section-delimiter"></div>

# 如果要设置简单密码需要设置以下参数
set global validate_password_policy=0;
set global validate_password_length=1;




<div class="se-preview-section-delimiter"></div>

# 重设密码
SET PASSWORD = PASSWORD('root')




<div class="se-preview-section-delimiter"></div>

远程连接

如果需要远程连接Mysql需要进行一些设置

修改连接用户的HOST

update user set host='%' where user='root' and host='localhost';





<div class="se-preview-section-delimiter"></div>

# 修改完成后刷新权限
flush privileges;




<div class="se-preview-section-delimiter"></div>

开放3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent




<div class="se-preview-section-delimiter"></div>

# 刷新防火墙配置
firewall-cmd --reload




<div class="se-preview-section-delimiter"></div>

缓存服务

Memcached基本操作

  • 安装:yum install memcached
  • 启动:memcached -d -l -m -p
  • 停止: kill pid

Redis基本操作

  • 安装: 源码编译安装
  • 启动: redis-server start/restart
  • 停止: redis-server stop
  • 客户端: redis-client
wget http://download.redis.io/releases/redis-4.0.6.tar.gz
tar xzf redis-4.0.6.tar.gz
cd redis-4.0.6
yum insatll gcc
make MALLOC=libc
make install
src/redis-server




<div class="se-preview-section-delimiter"></div>

PHP环境配置

PHP基础环境配置

PHP安装

配置源

rpm -Uvh http://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh http://mirror.webtatic.com/yum/el7/webtatic-release.rpm




<div class="se-preview-section-delimiter"></div>

安装fpm

yum install php56w-fpm




<div class="se-preview-section-delimiter"></div>

安装PHP扩展

yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-intl.x86_64 php56w-xsl.x86_64




<div class="se-preview-section-delimiter"></div>

启动

service php-fpm start




<div class="se-preview-section-delimiter"></div>

Laravel5环境配置

安装Composer

curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer




<div class="se-preview-section-delimiter"></div>

安装Laravel安装器

composer global require "laravel/installer=~1.1"




<div class="se-preview-section-delimiter"></div>

编写nginx配置文件

server {
    listen       80;
    server_name  laravel.test.com;
    root /data/www/demo_laravel/public;
    index index.php index.html;
    access_log  /var/log/nginx/laravel.log  main;

    location / {
        try_files $uri/ $uri/index.php?$args;
   }

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

}





<div class="se-preview-section-delimiter"></div>

进入项目根目录运行

composer install
php artisan key:generate 




<div class="se-preview-section-delimiter"></div>

授予权限

chmod -R 777 storage/framework/
chomd -R 777 storage/logs/




<div class="se-preview-section-delimiter"></div>

Yii2环境配置

编写配置文件

server {
    listen       80;
    server_name  yii.jiangyx.com;
    root /data/www/demo_yii2/web;
    index index.php index.html;
    access_log  /var/log/nginx/yii2.log  main;

    location / {
    try_files $uri/ $uri/index.php?$args;
   } 

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

}





<div class="se-preview-section-delimiter"></div>

赋予权限

chmod -R 777 runtime
chmod -R 777 web/assets/




<div class="se-preview-section-delimiter"></div>

TP5环境配置

编写配置文件

server {
    listen       80;
    server_name  tp.jiangyx.com;
    root /data/www/demo_tp/public;
    index index.php index.html;
    access_log  /var/log/nginx/yii2.log  main;

    location / {
        try_files $uri/ $uri/index.php?$args;
   }

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

}





<div class="se-preview-section-delimiter"></div>

Java运行环境配置

JDK安装

sudo yum install java-1.8.0-openjdk*




<div class="se-preview-section-delimiter"></div>

tomact安装

官网下载解压即可

maven安装

官网解压即可





<div class="se-preview-section-delimiter"></div>

# 做一个软链
ln -s /maven/bin/mvn /usr/bin/mvn




<div class="se-preview-section-delimiter"></div>

Python运行环境

Python安装

下载的就是源码包

tar -xvzf Python-3.5.1.tgz
cd Python-3.5.1/
./configure --prefix=/usr/python
yum install zlib zlib-devel
make
make install

替换原有的Python2
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/python/bin/python3 /usr/bin/python




<div class="se-preview-section-delimiter"></div>

也可以通过一键安装脚本来进行安装

wget https://raw.githubusercontent.com/LunacyZeus/Python3.6-for-Centos7.0/master/install.sh && sh install.sh




<div class="se-preview-section-delimiter"></div>

virtualenv安装

pip install virtualenv

virtualenv blog




<div class="se-preview-section-delimiter"></div>

pip换成豆瓣源

mkdir ~/.pip
vim ~/.pip/pip.conf
[global]
timeout=60
index-url=https://pypi.douban.com/simple




<div class="se-preview-section-delimiter"></div>

创建虚拟环境和激活

virtualenv blog

source blog/bin/activate




<div class="se-preview-section-delimiter"></div>

服务管理

Crontab定时任务

*/30 * * * * ntpdate cn.pool.ntp.org




<div class="se-preview-section-delimiter"></div>

Ntpdate时间校准

ntpdate cn.pool.ntp.org

Logrotate 日志切分

Supervisor服务管理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值