分类 Linux 下的文章

#自动删除不需要的软件,太旧的内核也会被删除
apt autoremove --purge
#列出已删除但是状态为deinstall的软件包
dpkg --get-selections | grep deinstall | cut -f1
#删除状态为deinstall的软件包
dpkg --purge `sudo dpkg --get-selections | grep deinstall | cut -f1`

 

1.划分LVM空间

使用sudo fdisk -l 查看已有的硬盘和分区情况

这里一块500G的硬盘已经有三个分区了,我们现在要把这些分区都删掉,然后重新分区
使用sudo fdisk /dev/sda 给这块硬盘分区,输入p 查看一下现有分区

分别分3次输入d,删除现有分区

输入n 新建分区,我这里只打算分一个区,就一路回车默认就好

输入t更改分区类型,再输入8e把分区类型设置为Linux LVM

输入w保存分区表。

2.创建卷组vg

使用sudo vgcreate disk2_lvm /dev/sda1 创建一个新的vg。其中disk2_lvm是vg名字,可以自己定义,/dev/sda1是加入vg的分区,这个根据实际情况来定

使用 sudo vgdisplay 查看已创建好的vg

3.创建逻辑卷LV

使用sudo lvcreate 创建逻辑卷,有两种方法

#size是要分配的空间大小,例如10G,200M等
#name 是逻辑卷的名称
#vgroup 是卷组名称,指的是要在哪个卷组创建逻辑卷
#number可以是数字也可以是百分比,这个最大是vgdisply 里面 Free PE 后面那个数字
sudo lvcreate -L size -n name vgroup  
sudo lvcreate -l number -n name vgroup

我这里创建了一个名为lv-web的逻辑卷,大小是100G

使用 sudo lvdisplay 可以查看已创建的逻辑卷

4.格式化逻辑卷并挂载到系统中

使用 ls -l /usr/sbin/mkfs.* 查看系统支持哪些文件系统格式

这里就格式化成ext4吧,sudo mkfs.ext4 /dev/disk2_lvm/lv-web 后面的路径是lvdisplay中查看到的LV Path。

挂载到这个逻辑卷到/web目录

sudo mkdir /web
sudo mount /dev/disk2_lvm/lv-web /web

或者 sudo vim /etc/fstab 在文件中添加一行,以便每次重启自动挂载到系统中

/dev/disk2_lvm/lv-web /web ext4 defaults 0 1

使用 sudo mount -a 重新挂载一下,ls /web 查看一下是否有内容

成功!

附录.LVM常用命令

1、 物理卷命令

pvscan #在系统的所有磁盘中搜索已存在的物理卷
pvdisplay 物理卷全路径名称 #用于显示指定物理卷的属性。
pvdata物理卷全路径名称 #用于显示物理卷的卷组描述区域信息,用于调试目的。
pvchange Cx|–allocation {y|n}物理卷全路径名 #用于改变物理卷的分配许可设置物理卷的创建与删除命令
pvcreate 设备全路径名 #用于在磁盘或磁盘分区上创建物理卷初始化信息,以便对该物理卷进行逻辑卷管理。
pvmove 源物理卷全路径我[目的物理卷全路径名] #用于把某物理卷中的数据转移到同卷组中其他的特刊卷中。

2、 卷组命令

vgscan #检测系统中所有磁盘
vgck [卷组名] #用于检查卷组中卷组描述区域信息的一致性。
vgdisplay [卷组名] #显示卷组的属性信息
vgrename 原卷组名 新卷组名 #重命名卷组
vgchange -a y|n [卷组名] #改变卷组的相应属性。是否可分配
vgchange -l 最大逻辑卷数 #卷组可容纳最大逻辑卷数
vgchange -x y|n [卷组名] #卷是否有效
vgmknodes [卷组名|卷组路径] #用于建立(重新建立)已有卷组目录和其中的设备文件卷组配置的备份与恢复命令
vgcfgbackup [卷组名] #把卷组中的VGDA信息备份到“/etc/lvmconf”目录中的文件
vgcfgrestore -n 卷组名 物理卷全路命名 #从备份文件中必得指定物理卷的信息卷组的建立与删除命令
vgcreate 卷组名 物理卷全路径名[物理卷全路径名]
vgmove 卷组名

vgextend 卷组名 物理卷全路径名[物理卷全路径名]
vgreduce 卷组名 物理卷全路径名[物理卷全路径名]

vgsplit 现有卷组 新卷组 物理卷全路径名[物理卷全路径名]

vgexport 卷组名
vgimport 卷组名 卷组中的物理卷[卷组中的物理卷]

3、 逻辑卷命令 

lvscan lvdisplay 逻辑卷全路径名[逻辑卷全路径名]
lvrename 旧逻辑卷全路径名 新逻辑卷全路径名
lvrename 卷组名 旧逻辑卷名 新逻辑卷名
lvchange e2fsadm -L +|- 逻辑卷增减量 逻辑卷全路径名

lvcreate -L size[Unit] -n name vgroup
lvremove  VG|LV|Tag|Select

lvextend -L|--size +逻辑卷大小增量 逻辑卷全路径名
lvreduce q -L|--size +逻辑卷减小量 逻辑卷全路径名

lvmdiskscan #检测所有的SCSI、IDE等存储设备
lvmchange -R|--reset #复位逻辑卷管理器
lvmsadc [日志文件全路径名] #收信逻辑卷管理器读写统计信息,保存到日志文件中。
lvmsar 日志文件全路径名 #从lvmsadc命令生成的日志文件中读取并报告逻辑卷管理器的读写统计信息。

基本概念

LinuxLVM逻辑卷管理

由于传统的磁盘管理不能对磁盘进行磁盘管理,因此诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理。由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数据的情况。

LVM(Logic Volume Manager)是逻辑卷管理的简称。它是Linux环境下对磁盘分区管理的一种机制。对于其他的的UNIX(AIX/HP/SUM)操作系统,以及Windows系统也有类似的磁盘管理软件。

LVM管理的方式非常简单,就是通过将底层的物料磁盘抽象并封装起来,然后以逻辑的方式呈现给上层应用。

1、 物理卷—–PV(Physical Volume)
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘。

2、 卷组——–VG(Volumne Group)
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。

3、 逻辑卷—–LV(Logical Volume)
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷要以属于同一个卷组,也可以属于不同的多个卷组。

4、 物理区域–PE(Physical Extent)
物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小可根据实际情况在建立物理卷时指定。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要一致。

5、 逻辑区域―LE(Logical Extent)
逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小。

6、 卷组描述区域—–(Volume Group Descriptor Area)
卷组描述区域存在于每个物理卷中,用于描述物理卷本身、物理卷所属卷组、卷组中的逻辑卷及逻辑卷中物理区域的分配等所有信息,卷组描述区域是在使用pvcreate建立物理卷时建立的。

一、安装vsftpd

yum install -y vsftpd 

二、进入vsftpd配置文件目录

cd /etc/vsftpd

三、修改vsftpd.conf配置文件

vim /etc/vsftpd/vsftpd.conf

四、输入以下配置范本:

#启用被动传输模式,设置被动模式使用的端口范围 
#这些端口必须在防火墙和阿里云盾中放行 
pasv_enable=YES 
pasv_max_port=22000 
pasv_min_port=21000 
#禁止匿名用户登录 
anonymous_enable=NO 
#允许本地用户模式 
local_enable=YES 
write_enable=YES 
#本地用户创建文件umask 
local_umask=022 
#虚拟用户创建文件umask 
anon_umask=022 
#启动“禁止名单”,名单文件为ftpusers和user_list 
userlist_enable=YES 
#设定启用虚拟用户功能 
#开启虚拟用户功能 
guest_enable=YES 
#虚拟用户的宿主本地用户名 
guest_username=www 
#虚拟用户配置文件夹 
user_config_dir=/etc/vsftpd/vconf 
#指定pam文件 
pam_service_name=vsftpd 
# 是否激活目录欢迎信息功能 
# 当用户用CMD模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息 
# 默认情况下,欢迎信息是通过该目录下的.message文件获得的 
# 此文件保存自定义的欢迎信息,由用户自己建立 
dirmessage_enable=NO 
# 是否让系统自动维护上传和下载的日志文件 
# 默认情况该日志文件为/var/log/vsftpd.log,也可以通过下面的xferlog_file选项对其进行设定 xferlog_enable=YES 
#xferlog_file=/var/log/vsftpd.log 
#主动模式进行数据传输时使用20端口 
connect_from_port_20=YES 
#采用标准格式记录日志 
xferlog_std_format=YES 
#启用以ASCII方式传输数据 
ascii_upload_enable=YES 
ascii_download_enable=YES 
# 用户登录FTP服务器后是否具有访问自己目录以外的其他文件的权限 
# 设置为YES时,用户被锁定在自己的home目录中,vsftpd将在下面chroot_list_file选项值的位置寻找chroot_list文件 
# 必须与下面的设置项配合 
chroot_list_enable=YES 
# 与上面的设置配合 
chroot_list_file=/etc/vsftpd/chroot_list 
# 锁定在主目录后必须设置以下设置才可以有写入权限 
allow_writeable_chroot=YES 
# 是否允许监听。 
# 如果设置为YES,则vsftpd将以独立模式运行,由vsftpd自己监听和处理IPv4端口的连接请求 
listen=NO 
# 设定是否支持IPV6。如要同时监听IPv4和IPv6端口, 
# 则必须运行两套vsftpd,采用两套配置文件 
# 同时确保其中有一个监听选项是被注释掉的 
listen_ipv6=YES 
# 是否使用tcp_wrappers作为主机访问控制方式。 
# tcp_wrappers可以实现linux系统中网络服务的基于主机地址的访问控制 
tcp_wrappers=YES

五、保存并开启vsftpd

systemctl start vsftpd

六、创建用户

useradd -d /dirtoroot -s /sbin/nologin -p 123456 -g groupname ftpusername

七、使用ftp软件测试连接是否成功。

一、Nginx安装

yum install nginx -y

二、PHP-FPM安装

yum install epel-release -y 
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装php7.1 

yum install php71w-fpm php71w-gd php71w-common php71w-mysql 

安装php7.2

yum install php72w-fpm php72w-gd php72w-common php72w-mysqlnd 

三、安装MariaDB

vim /etc/yum.repos.d/maradb.repo

输入以下内容保存

# MariaDB 10.3 CentOS repository list - created 2019-05-11 08:24 UTC 
# http://downloads.mariadb.org/mariadb/repositories/ 
[mariadb] 
name = MariaDB 
baseurl = http://yum.mariadb.org/10.3/centos7-amd64 
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB 
gpgcheck=1
yum install -y MariaDB-server MariaDB-client