cent os 7

# centos7 安装

## 下载地址 
http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso




# centos 安装完之后的配置

## 网络配置

### 查看IP地址
```shell
ip addr
```

### vmware配置网络
#### 1. vmware:编辑 -> 虚拟网络编辑器

![QQ浏览器截图20201023101353.png](http://default.dengyuqing.com/explorer/index.php?user/public_link&fid=c806IVOEgGpTVGS0gb6cLqd9tEp5NPcIX1k3vQDVdReDOSrj8N9v4KEkWYDL1oKOo0x1l8JAxYRpZiWSgFy6M6GgeDJGoa1hgxV_bdayWv2gsC1IDvN6yrQbONfxba_ziQ0eq2BSIxWbiWlWSKZ1BJJaKUnuljwpw-40F2UXdqfOEpG7V47JjQ&file_name=/QQ%E6%B5%8F%E8%A7%88%E5%99%A8%E6%88%AA%E5%9B%BE20201023101353.png)


#### 2. 点击 NAT设置 记住 **子网掩码** 和 **网关IP**

![QQ浏览器截图20201023102118.png](http://default.dengyuqing.com/explorer/index.php?user/public_link&fid=a384AeYRSiGdeP5QC6dkR778NM-C-RaMEV9jcrWN1QiVXgOXIMYjtqdAt0Yi_jccGIRwzN8Zlq2XPNIDM58YrbdfAvofT5X474a1maZXLuWeHkf28dwgdhqzeqwso7qTjdW8K2h0yDN6Am-bSQne3WGkJ4gfGM3Fbo3716Q-kIcRrOxF3eIVTg&file_name=/QQ%E6%B5%8F%E8%A7%88%E5%99%A8%E6%88%AA%E5%9B%BE20201023102118.png)

#### 3. linux: 配置网络信息

```shell
1)进入网络配置文件目录

cd /etc/sysconfig/network-scripts

2) 打开配置文件

vim ifcfg-ens33:

3) 添加/编辑以下参数
    DEVICE=ens33  # 要配置的网卡
    ONBOOT=yes    # 开机自启动(必须)
    BOOTPROTO="static"  # 静态ip方式
    IPADDR=192.168.125.11 # ipv4地址
    NETMASK=255.255.255.0 # 子网掩码
    GATEWAY=192.168.125.2 # 网关
    DNS1=114.114.114.114  # 主DNS
    DNS2=8.8.8.8  # 备用DNS

4) 保存退出

```

#### 4. 重启网络服务
```shell
service network restart
```

#### 测试网络
```shell
ping 118.24.101.214
```

#### 网络不通排查
##### 保证vmvare的NAT服务已启动
    1. 运行 -> 搜索service.msc 打开服务
    2. 找到 
          VMware NAT Service 
          VMware DHCP Service 
          VMware Workstation Server 
       确保这三个服务已启动
    3. 如果还是无法联网请尝试重启虚拟机,
##### 保证vmnat8能联网
    如果还是不能连接网络的话进去windows的网络和共享中心(控制面板)。把vmnat8的iPV4地址设置为自动获取,dns也自动获取。
[ping不通排查](https://www.yisu.com/zixun/159785.html)


## 安装wget
```shell
yum install wget
然后一路 y 就安装完了
```

## 安装netstat

```shell
yum install net-tools
然后一路 y 就安装完了
```



## 安装oneinstack
```shell
wget -c http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --nginx_option 1 --php_option 9 --phpcache_option 1 --php_extensions redis,mongodb,swoole --phpmyadmin  --db_option 2 --dbinstallmethod 1 --dbrootpwd 123456 --pureftpd  --redis  --memcached  --reboot 
```

### 安装PHP报libsodium not found 

- 安装libsodium库解决libsodium not found问题

```shell
1. 安装依赖
    Debian 7/8、Ubuntu 14/15/16 及其衍生系列:
    
    1. sudo apt-get update
    2. sudo apt-get install build-essential wget -y
    
    Centos 6/7、RHEL 7 及其衍生系列:
    
    yum groupinstall "Development Tools" -y
    yum install wget -y

2. 下载 libsodium 最新版本
    — 可以从libsodium 官网下,也可以从github 下载。选择速度最快的下载方式。
    
    <1> 从官网下载:
    
    wget https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
    
    <2> 从 github 下载(其中 1.0.10 是 libusodium 的版本号,可以改成最新的):
    
    wget https://github.com/jedisct1/libsodium/releases/download/1.0.10/libsodium-1.0.10.tar.gz

3. 解压
    <1>官网下载的:
    
    tar xzvf LATEST.tar.gz
    
    <2>github 下载的:
    
    tar xzvf libsodium-1.0.10.tar.gz

4. 生成配置文件
    cd libsodium*
    
    ./configure

5. 编译并安装
    make -j8 && make install

6. 添加运行库位置并加载运行库:
    echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
    
    ldconfig


```


## 如果PC无法用Xshell连接虚拟机的liunx
#### 1. 查看PC的ip是否跟linux处于同一网段
```shell
PC端:
ipconfig 

以太网适配器 VMware Network Adapter VMnet8:

   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fe80::cdd6:30f1:7eae:81d3%22
   自动配置 IPv4 地址  . . . . . . . : 169.254.129.211
   子网掩码  . . . . . . . . . . . . : 255.255.0.0
   默认网关. . . . . . . . . . . . . :

以上 IPv4 地址 与linux服务器的ip(192.168.197.88)没有处于同一网段
因此需要修改PC的IP地址

```

#### 2. 需要修改PC的IP地址

```shell
    win10: 
    设置(控制面板) -> 网络和internet -> 网络和共享中心 -> 更改适配器设置
    -> 找到 VMware Network Adapter VMnet8 -> 右键 -> 属性
    -> 找到 internet 协议版本4 (TCP/IPv4) -> 属性
    -> 选择 使用下面的IP地址
    -> 设置ip信息
        IP地址: 192.168.197.99 (保持网段与linux一致 后面两位自己定)
        子网掩码: 255.255.255.0 (默认)
        网关 192.168.197.2 (与linux服务器的网关一致)
        
    -> 设置DNS服务器配置 与linux保持一致
        首选DNS: 114.114.114.144
        备用DNS: 8.8.8.8
    
    
        
```

#### 3. 重启Xshell 重新连接linux
    

## 安装 vmvare Tool 并设置共享文件夹

#### 1. 
```bash

一. 修改配置
1. 在vmvare选择虚拟机 右键 -> 设置 -> 选项 -> 共享文件夹 -> 总是启用
2. 添加文件夹 选择需要共享的文件夹
二. 挂载
1. 先创建光驱的挂载点目录
mkdir /mnt/cdrom
2. 把光驱挂载至该目录下
mount /dev/cdrom /mnt/cdrom/

3. 进入/mnt/cdrom即可看到vmware tools安装包
cd /mnt/cdrom

4. 由于 /mnt/chrom是只读目录 所以把该目录拷贝到上一目录
cp [vmware tools].tar.gz ../

4.1. 回到上一层目录
cd ../

4.2 解压
tar -zxvf [vmware tools].tar.gz

5. 进入解压的目录,执行 ./vmware-install.pl 命令
cd [vmware tools]
./vmware-install.pl 

6. 然后一路enter

如果出现bash:./vmware-install.pl :/usr/bin/perl:bad interpreter:No such file or directory.现象,输入 yum install perl 即可。

```

注意,安装过程中,需要选择yes or no的选项,一律输入yes即可

以下安装完成后,可以通过 cd /mnt 查看到该目录下面多了一个hgfs目录

#### 2.解决Error: can not mount filesystem错误

```shell
第一步操作完成后,你cd /mnt发现已经有了/hgfs,有了这个表示已经共享成功了,但是进入/hgfs下然后ls,发现什么都没有,但是当你输入

vmware-hgfsclient

你却能看到你的共享文件夹的名称。莫慌,来让我们先下载工具

yum install open-vm-tools-devel -y

现在执行命令 

sudo vmhgfs-fuse .host:/WWW /mnt/hgfs

WWW 为共享文件夹的文件夹名 
不要在该挂载点下执行该命令)
```

#### 3.设置自动挂载
```shell
1. 编辑 /etc/fstab
vi /etc/fstab

2. 在最后添加一行: 
.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other 0 0

3. 重启
reboot

(如果重启失败进入了emergency mode 则请删掉上面添加的最后一行 再重启 找其他方法吧)
```
## 安装Composer

详情请看: https://www.phpcomposer.com/

```shell
1. 下载安装命令
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

2. 运行安装命令
php composer-setup.php

3. 删除安装命令
php -r "unlink('composer-setup.php');"

4. 设置成全局命令
sudo mv composer.phar /usr/local/bin/composer
```


## 安装 Docker

https://www.cnblogs.com/caoweixiong/p/12186736.html


### 解决 docker 内无法访问外网

现象如下:
1、内/外网 IP 和 域名 可以 ping 通
2、容器内无法访问宿主机所在内网及外网的 Web 服务(404)
3、通过 curl 查看返回头信息感觉是所有 Web 请求被中转到一个固定的 Nginx 服务器
4、所有容器(包括新创建的)均出现以上问题
解决方法如下:
通过重建 docker0 网络即可解决问题。

命令如下:
```shell
sudo service docker stop
sudo pkill docker
sudo iptables -t nat -F
sudo ifconfig docker0 down
sudo brctl delbr docker0    #没有brctl命令则忽略次步骤
sudo service docker start
```

## 克隆linux
### 克隆
虚拟机 -> 管理 -> 克隆 
下一步 -> 下一步 直到创建成功

### 重新生成mac地址
选择虚拟机  设置 -> 网络适配器 -> 勾选NAT模式 -> 高级  -> mac地址 -> 生成 ->确定
### 设为NAT网络模式 (可以忽略)
编辑 -> 虚拟网络编辑器 -> NAT 模式 -> NAT设置 -> 记住网关IP
### 修改IP地址
启动系统并登录
```shell

# 1)进入网络配置文件目录

cd /etc/sysconfig/network-scripts

# 2) 打开配置文件

vim ifcfg-eno16777736

# 3) 修改IP地址 
  
 IPADDR=192.168.197.88 # ipv4地址

# 4) 保存退出
:wq

# 5)重启网络

service network restart

# 注意: 克隆之后启动系统会导致文件夹共享变成禁用,重新设置为启用即可

```

### cnpm
    npm install -g cnpm --registry=https://registry.npm.taobao.org

### 安装snap

```shell
1. 安装 EPEL

yum install epel-release

2. 安装 snapd

yum install snapd

3. 添加snap启动通信 socket

systemctl enable --now snapd.socket

4. 创建链接(snap软件包一般安装在/snap目录下)

ln -s /var/lib/snapd/snap /snap

```


## 同步时间
一、查看系统时间

查看系统时间的命令:

date
二、查看硬件时间
查看硬件时间的命令:

hwclock
三、时间服务器上的时间同步的方法

1.安装ntpdate工具

    yum -y install ntp ntpdate

2.设置系统时间与网络时间同步

    ntpdate cn.pool.ntp.org

3.将系统时间写入硬件时间

    hwclock --systohc

4.配置计划任务,使用ntpdate同步时间

### 启动并开机启动计划任务cron
$ systemctl start crond
$ systemctl enable crond
 
### 配置计划任务,每5分钟同步一次
$ crontab -e
*/5 * * * * /usr/sbin/ntpdate cn.pool.ntp.org
 
crontab -l 表示列出所有的定时任务
crontab -r 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab for admin”

### 升级内核

[升级内核](https://www.phpriji.cn/blog/detail/snap-install-error.html)