0
点赞
收藏
分享

微信扫一扫

Linux 1: Cloud computing operating system management | Linux

Linux 系列

Linux 1: 云计算操作系统管理

  • Cloud computing operating system management | Linux

Linux 2: 云计算网络应用管理

  • Cloud computing network application management | Linux

Linux 3: 数据库开发技术

  • Database development technology | Linux

Linux 1: Cloud computing operating system management | Linux

Linux 操作系统 1: 云计算操作系统管理


目录说明

根目录 **/** :Linux系统起点
**/dev** :存放设备(键盘、鼠标、显示器、硬盘)
**/dev/hda** :第一块IDE设备
**/dev/sda** : 第一块SCSI设备
![Alt](https://img-blog.csdnimg.cn/img_convert/9443f1de6401cbeb91d4f060ebf055a5.png)

绝对路径:以根(**/**)开始的路径
相对路径:不以根(**/**)开始的路径

用户

用户标志

root 标志:#
普通用户标志:$

用户类型

普通用户
系统管理员用户
超级用户(root)

账号控制(ID)

用户

UID:用户ID

GID:组ID

用户操作

添加用户

useradd [选项]... 用户名

修改用户属性(usermod)

usermod [选项]... 用户名

查看已存在的用户

grep 要查找的用户 /etc/passwd

删除用户

userdel 用户名	#删除用户(不删除用户的家目录)
userdel -r 用户名	#删除用户及用户的家目录
userdel -r admin	#删除用户root及用户root的家目录

组操作

创建组

groupadd [-g GID组ID] 组名

组查看

记录组的基本信息文件:/etc/group

grep 要查找的组 /etc/group

记录组的管理信息文件:/etc/gshadow

组成员管理

gpasswd [选项]... 要操作的用户 组名

命令常用选项:

gpasswd -A nsd01 stugrp	#定义stugrp管理员列表是nsd01
gpasswd -M nsd04,nsd05,nsd01 stugrp	#定义组成员列表为nsd04,nsd05,nsd01
gpasswd -a nsd02 stugrp	#将nsd02用户加入到stugrp组里
gpasswd -d nsd03 stugrp	#将nsd03用户从stugrp组里移除

删除组

groupdel 要删除的组名

基本目录操作命令

目录的查看、切换

pwd:查看当前工作目录
cd:切换工作目录

ls:显示当前目录的内容

目录及文件的创建、移动、复制、删除

目录的创建

mkdir /要创建的目录	#创建目录
mkdir -p /要创建的目录	#连同父目录一起创建
mkdir -m 要创建的目录    #创建文件夹时直接设置权限,默认权限umask值为022,创建文件夹时的权限为777-022=755

目录及文件的移动

mv /源目录 /要移动到的目录	#移动,路径不变的情况下通目录内移动的同时可修改文件名称

目录及文件的复制

cp /源目录 ...n个 /要复制到的目录	#复制
cp -r /源目录 ...n个 /要复制到的目录	#递归复制(复制的同时可修改名称)

目录及文件的删除

rm -rf /要删除的目录	#强制删除
rm -r /要删除的目录	#递归删除(删除目录是必须加 -r,删除文件时可不加)

目录的查找

find /要查找的目录 -type f	#查找目录中的文本文件
find /要查找的目录 -type d	#查找目录中的目录
find /要查找的目录 -type l	#查找目录中的快捷方式
find /要查找的目录 -name ”v*”	#查找目录及子目录中的以v开头的文件或目录

find /要查找的目录 -size -10M	#查找小于10M的文件或目录
find /要查找的目录 -size +10M	#查找大于10M的文件或目录

find /要查找的目录 -user 指定用户名	#查找指定用户所有权下的文件或文件夹

find /要查找的目录 -mtime -10	#查看10天内修改的文件
find /要查找的目录 -mtime +10	#查看10天前修改的文件

find /要查找的目录 -exec 	#执行后续操作

使用find命令的 -exec(额外)操作

find /要查找的目录 条件 -exec 处理命令 {} \;	#根据条件查找并处理结果

find 的高级使用

wc /要查看的目录	#显示文件夹属性
wc -l /要查看的文件	#查看文件行数

find /etc/ -name "*.conf" | wc -l	#统计以.conf结尾的行

find /opt/ -name "nsd*" -a -type f	#查找以nsd开头的文件
find /opt/ -name "nsd*" -o -type f	#查找以nsd开头的文件或/opt中的文本文件

文本文件操作

cat /要查看的文件	#查看文本文件内容

查找文本内容

grep -v '要查找的文本'	#取反匹配
grep -i '要查找的文本'	#忽略大小写
grep '^root'	#查找以root为首的行
grep 'root$'	#查找以root为尾的行
grep 'root'	#查找含有root的行
grep '^$'	#查找空行

grep root /etc/passwd	#过滤 /etc/passwd 文件含root的行

格式化手册阅读工具 man (可查看所有命令的手册)

man hier	#查看目录结构描述

历史命令

history	#查看历史命令(默认1000条)
history -c	#清空历史命令

统计文件占用空间

du	#统计文件的占用空间
du -s	#只统计一个目录的占用空间
du -sh	#统计文件占用空间(带单位显示)

系统信息查看

hostname	#查看主机名

echo "svr7.nm.cn" > /etc/hostname	#永久修改主机名
hostname svr7.nm.cn

uname -r	#查看内核版本
lscpu	#查看cpu信息
cat /proc/meminfo	#查看内存
cat /etc/redhat-release	#查看系统信息

系统配置修改

hostname 要设置的主机名	#修改主机名 
ifconfig	#查看ip
ifconfig ens33 192.168.1.41/34	#修改网卡ens33的IP地址
date	#查看系统日期时间
date +%F	#查看年月日
date +%Y	#只显示年
date +%m	#只显示月份
date +%d	#只显示日期
date -s ”yyyy-mm-dd HH:MM:SS”	#设置系统时间(自定义)
hwclock -s	#重置系统时间(当前时间)

解释器

cat /etc/shells	#查看系统中所有解释器

快捷键

Tab:自动补全 — 1下 自动补齐;2下 自动查找
Ctrl+c :中止/废弃当前命令行
Ctrl+l :清屏
Ctrl+u :清空至行首
Ctrl+w :往回删除一个单词,以空格为界
Esc+. / Alt+. :粘贴上一个命令的参数
. :当前目录
:父目录(上一层目录)

通配符

:单个字符
* :任意多个字符
{a,b} :匹配a,b两个中的其中一个
[a,c] :匹配a~c范围中的任意一个

别名

alias	#查看已设置的别名
alias hn='ls'	#为命令ls设置别名hn (临时)
unalias hn	#取消已设置的别名hn
vim /etc/bashrc	#为所有用户添加别名(永久)
vim ~/.bashrc	#为当前用户添加别名(永久)

vim编辑器

Alt

:o为另起一行插入

命令模式操作

命令模式下光标操作

0^Home键 :到当前行行首
End键$ :到当前行行尾

Page Up键 :向上翻页
Page Down键 :向下翻页

1Ggg :到文件首行
G :到文件末行

命令模式下复制删除操作

yy / #yy :复制光标处的一行/整行
P :粘贴到光标之前
p :粘贴到光标之后
xDelete :删除光标处的单个字符
dd / #dd :删除光标处的一行/整行
d^ :从光标处之前删除至行首
d$ :从光标处删除至行尾

命令模式下撤销编辑操作

u :撤销最近的一次操作
U :撤销对当前行的所有修改
Ctrl + r :取消前一次的撤销操作

命令模式下保存退出操作

zz :保存修改并退出

命令模式下查找功能

/word :向后查找字符串”word”
N :跳至前一个结果
n :跳至后一个结果

末行模式操作

文件操作

:w /root/newfile :另存为其他文件( /root/newfile )
:r /etc/filesystems :读取其他文件内容( /etc/filesystems )

批量添加注释(命令模式下)

字符串替换

行内替换

: s /old/new :使用new替换当前行的第一个old
: s /old/new/g :使用new替换当前行所有的old

区域内替换

:n,m s/old/new/g :使用new替换n~m行中所有的old
:% s/old/new/g :使用new替换文件内所有的old

存盘及退出

:w :保存当前文件
:q! :放弃已有更改后强制退出
:wq:x :保存已有修改后退出

开关参数的控制

编辑器设置

:set nu :显示行号
:set nonu :不显示行号
:set ai :启用自动缩进
:set noai :关闭自动缩进

重定向

定义:将屏幕显示的信息保存到文件中
> :多次重定向到一个文件将被覆盖原来的内容
>> :多次重定向可实现追加信息

示例:

ls --help > /opt/help.txt	#将帮助信息保存到文件中
echo 123 > /opt/a.txt	#将数字123写入到文件中
echo 123 >> /opt/a.txt	#将数字123追加写入到文件中

管道

定义:将前一条命令的标准输出后交给下一条命令处理
| :管道符

示例:

ifconfig ens33 | head -2	#显示上一个命令结果的前两行
cat -n /etc/passwd | head -12 | tail -5	#显示5~12行内容

软连接(快捷方式)

ln -s /原始文件或目录 /软连接文件(快捷方式路径)	#创建软连接(快捷方式),快捷方式与原始文件可不在同一分区(删除原始文件后快捷方式不可用)

硬连接

ln /原始文件或目录 /硬连接文件(快捷方式路径)	#创建硬连接(快捷方式),快捷方式与原始文件必须在同一分区(删除原始文件后快捷方式仍然可用)

压缩包的创建及解压

创建压缩包

tar -tf /压缩包文件	#查看压缩文件
tar -zcf /压缩后的文件.tar.gz /要压缩的文件路径	#通过.gz格式进行打包归档(压缩)
tar -jcf /压缩后的文件.tar.bz2 /要压缩的文件路径	#通过.bz2格式进行打包归档(压缩)
tar -Jcf /压缩后的文件.tar.xz /要压缩的文件路径	#通过.xz格式进行归档(压缩)

zip -r /压缩后的文件.zip /要压缩的文件路径	#通过.zip格式进行压缩(跨平台)

解压缩

tar -xf /压缩文件	#解压缩到当前目录
tar -xf /压缩文件 -C /要解压到的位置	#解压缩到指定目录

unzip -r /压缩文件.zip	#解压缩到当前目录
unzip /压缩文件.zip -d /要解压到的位置	#解压缩到指定目录

设备挂载及卸载

设备的挂载

mount /设备路径(/dev/cdrom) /挂载点目录(/dvd)	#挂载光驱设备(一个设备可有多个挂载点目录,但不允许一个挂载点有多个设备)

设备的卸载

unmount /挂载点目录	#卸载设备

软件包管理 RPM

rpm -q 软件名称	#查询已安装的RPM软件包的版本信息
rpm -qa	#列出已安装的所有软件包
rpm -qpi 软件包.rpm	#查看指定软件的详细信息
rpm -qpl 软件包.rpm	#查看指定软件的文件安装清单(目录)
rpm -ivh 需要安装的软件包	#安装软件包
rpm --import 签名文件	3导入签名认证
rpm -e 软件名称	#卸载软件

yum命令工具

yum list firefox  #查看软件列表

yum search ftp	#查找包含ftp和ftp相关的包
yum info firefox #查看firefox软件的描述信息
yum probides /etc/passwd	#查看/etc/passwd文件是由哪个软件产生的

安装/卸载软件包

yum [-y] 指令 [软件名]

yum [-y] install	#安装指定软件包 类似于rpm -i
yum [-y] remove	#卸载指定软件包

yum install https	#安装https软件包
yum install -y gcc	#自动安装

清空本地 yum 缓存

yum clean all

计划任务(周期性任务)

cron 任务

tail /var/log/cron    # 了解cron执行消息
crontab -e -u root #为root用户添加日志文件
crontab -r #清空当前用户计划任务

编写crontab任务记录

任务命令行(绝对路径): 分时日月周
*:匹配范围内任意时间 例如 * * * * *
,:分隔多个不连续的时间点
-:指定连续时间范围
/n:指定时间频率,每n…

权限

访问权限

访问权限由读取、写入、可执行共同决定

权限归属关系

权限查看

查看文件/目录权限:

ls -l 要查看的目录	#查看指定目录中的目录及文件权限
ls -ld 要查看的目录	#查看指定目录的权限

权限查看结果字段

文件类型位(首位):
权限位:

rw- r-- r–

用户在不同权限下的访问情况:

r--:用户无法进行任何操作
rw-
rwx:用户可执行任何操作
-w-:只能创建文件,无法进行移动操作
-wx
--x:用户只可进入目录,无法查看到目录下的文件及其他操作
r-x

权限信息字段:
lrwxrwxrwx. 1 root root 3 4月   7 10:04 /dev/cdrom -> sr0

设置基本权限

chmod [ugoa][+-=], ... 要设置权限的文件夹

选项说明:

参数说明:

用户文件权限设置示例:

chmod u-w /nsd01	#取消所有者w(写)权限
chmod u+w /nsd01	#所有者添加w权限
chmod g=r /nsd01	#设置所属组权限为只读
chmod o=--- /nsd01	#设置其他用户的权限为无任何权限

chmod u=rwx,g=w,o=rx /nsd01	#同时为用户设置权限
chmod 725 /nsd01

chmod -R o=--- /opt/aa/	#递归修改权限,目录本身及此目录中的权限都会发生变化

修改默认权限

umask    #查看默认权限值
umask 022    #修改默认权限值为022(创建文件夹时的权限为777-022=755,创建文件时的权限为644)

设置归属关系

chown 属主[:属组] 文件

选项说明:

文件归属关系设置示例:

chown a:root /opt	#为opt文件夹设置所属用户a,所属组root

权限优先级

  1. 判断用户的身份 所有者>所属组>其他人
  2. 查看对应身份的权限

附加权限

Set GID

Set UID(适用于攻击方)

Sticky Bit 粘滞位(t权限,如公共目录 /tmp)

ACL策略管理

ACL访问策略

设置ACL权限

setfacl -m u:要设置的用户:要给此用户的权限rwx 要设置的目录或文件
setfacl -m g:要设置的用组:要给此组的权限rwx 要设置的目录或文件

常用命令选项:

设置ACL权限示例
setfacl -m u:root:4 /a    #在a目录下为root用户设置读权限

setfacl -m u:root:--- /a    #设置拒绝权限

查看ACL权限

getfacl 要查看的目录或文件

分区管理

磁道:
扇区:1扇区=512字节

识别硬盘 -> 分区规划 -> 格式化 -> 挂载使用

lsblk	#查看分区详细信息,查看识别硬盘

分区规划

MBR分区模式

实际操作为:3个主分区+1个扩展分区+n个逻辑分区

理论最多支持4个主分区(题目正确答案)
最多支持1个扩展分区(扩展分区不可直接用来存储数据)
逻辑分区可以有无限个,建立在扩展分区之上
最大支持2.2TB容量

GPT分区模式(常用)

最多支持128个主分区
最大支持18EB的容量
1EB=1024*1024TB

分区工具

fdisk /dev/sdb	#进入分区工具

选项
n:添加一个分区
p:打印分区表
q:不保存退出

格式化分区

文件系统类型:

mkfs.ext4 /deb/sdb1    #将sdb1格式化为ext4文件系统类型
blkid /dev/sdb2    #查看分区文件系统类型,UUID是设备的唯一标识
mkfs.xfs /dev/sdb2    #格式化分区为xfs文件系统类型

挂载使用

mkdir /dvd/mdb
mount /dev/sdb1 /dvd
ls /dvd
mkdir /dvd/abc    #验证写入数据
mount /dev/sdb2 /mdb
mkdir /mdb/abc01    #验证写入数据
ls /mdb/
df -h /mypart1    #查看挂载设备的使用情况

开机自动挂载

开机自动挂载配置文件:/etc/fstab

vim /etc/fstab
mount -a    #作用1:检测etc/fstab下的问题,作用2:查看文件中的设备有没有挂载的会自动进行挂载
mount /mypt1
mount /mypt2
vim /etc/fstab
	/dev/sdb3 /mytp1 ext3 defaults 0 0
	/dev/sdb7 /mytp1 xfs defaults 0 0
	/dev/cdrom /mnt iso9660 defaults 0 0    #光盘的文件类型为 iso9660
tail -2 /etc/fstab
mount -a
df -h

交换空间

parted常用分区指令

parted /dev/sdc

#
mktab gpt    #指定分区模式为 gpt
print    #查看分区表
mkpart    #交互式创建分区
unit GB    #以 GB 单位显示分区表

使用交换分区做交换空间(格式化交换文件)

mkswap -f 要交换文件

选项

mkswap /dev/sdb1    #将分区 /dev/sdb1 格式化为交换分区
free -m	#查看剩余内存的使用量及交换空间的大小(单位:MB)

swapon /dev/sdb1    #启用交换分区 /dev/sdb1
swapon -s    #查看交换分区
swapoff /dev/sdb1    #停用交换分区 /dev/sdb1

vim /etc/fstab    #将交换分区设置为开机自动挂载
/dev/sdb1 swap swap defaults 0 0
/dev/sdb2 swap swap defaults 0 0
tail -2 /etc/fstab
swapon -a
swapon -s

创建Swap文件

利用文件创建Swap空间
(生成大的文件用dd命令)

dd if=源设备 of=目标设备 bs=块大小 count=块数
dd if=dev/xero of=/opt/swap.db bs=1M count=2048	#示例
ls -lh /opt/swap.db
mkswap /opt/swap.txt
swapon /opt/swap.txt
swapon -s
free -m
chmod 600 /opt/swap.txt
swapoff /opt/swap.txt
vim /etc/fstab
    /opt/swap.txt swap swap defaults 0 0
swapon -a
swapon -s

逻辑卷

LVM快速部署及使用

创建卷组

格式:vgcreate 卷组名 设备路径

工作方式:

功能物理卷管理卷组管理逻辑卷管理
Scan扫描pvscanvgscanlvscan
Create创建pvcreatevgcreatelvcreate
Display显示pvdisplayvgdisplaylvdisplay
Remove删除pvremovevgremovelvremove
Ectend扩展/vgextendlvextend
pvcreate /dev/sdb1 /dev/sdb2	#创建物理卷,可以不用写,直接使用vgcreate创建也是可以的
pvs	#查看物理卷信息
vgcreate myvg /dev/sdb1 /dev/sdb2	#创建卷组
vgs	#查看卷组信息

创建逻辑卷

格式:

lvcreate -L 逻辑卷大小 -n 逻辑卷名 卷组名

示例:

lvcreate -L 16G -n myvo myvg
lvs

扩展逻辑卷

情况一:卷组有足够的剩余空间

  1. 扩展逻辑卷大小

    vgs
    lvextend -L 18GG /dev/systemvg/vo    #扩展到18G
    df -h /vo    #查看使用情况
    lvs
    df -h
    
  2. 扩展文件系统大小

    resize2fs    #扩展 ext3/ext4 文件系统类型
    xfs_growfs /dev/systemvg/vo    #扩展 xfs 文件系统类型
    df -h
    

情况二:卷组没有足够的剩余空间

  1. 扩展卷组

    vgs
    vgextend systemvg /dev/sdb3	#为逻辑卷systemvg扩展空间
    
  2. 扩展逻辑卷大小

    vgs
    lvextend -L 25G /dev/systemvg/vo
    lvs
    
  3. 扩展文件系统大小

    xfs_growfs /dev/systemvg/vo
    df -h
    

逻辑卷的删除

逻辑卷的缩减

RAID磁盘阵列

RAID0,条带模式

同一个文档分散存放在不同磁盘
并行写入以提高效率

RAID1,镜像模式

一个文档复制成多分,分别写入不同磁盘
多份拷贝提高可靠性,效率无提升

RAID5(至少需要三块磁盘组成)

相当于RAID0和RAID1的折中方案
需要至少一块磁盘的容量来存放校验数据(奇偶校验)

RAID0+1(至少需要四块磁盘组成)

?整合于RAID0和RAID1的折中方案
?需要至少一块磁盘的容量来存放校验数据(奇偶校验)

RAID1+0(至少需要四块磁盘组成)

?整合于RAID0和RAID1的折中方案
?需要至少一块磁盘的容量来存放校验数据(奇偶校验)

RAID各级别特点对比

对比项RAID0RAID1RAID10RAID5RAID
磁盘数>=2>=2>=4>=3>=4
存储利用率100%<=50%<=50%n-1/nn-2/n
校验盘12
容错性
IO性能较高较高

RAID阵列实现方式

硬RAID

软RAID

系统文件损坏故障

故障现象:

/etc/fstab文件内容有误,系统无法正常开机

解决思路:

引导进入修复模式,然后进行修复

模拟故障:

vim /etc/fstab
	/dev/sdb1 /mypar1 xfs defaults 0 0
reboot

解决故障:
在Control-D界面处直接输入root密码,会直接进入命令行,之后修改fstab文件

vim /etc/fstab
# /dev/sdb1 /mypar1 xfs defaults 0 0
reboot

重设root密码

开机界面按e

UTF-8
rd.break console=tty0

Ctrl+X

mount -o remount,rw /sysroot
chroot /sysroot
echo redhat | passwd --stdin root

touch /.autorelabel
exit
reboot

练习题目

grep 命令的使用

  1. 利用grep显示/etc/fstab文件中以UUID开头的信息

    grep '^UUID' /etc/fstab
    
  2. 利用grep显示/etc/passwd以bash结尾的行

    grep 'bash$' /etc/passwd
    
  3. 利用grep显示/etc/login.defs 以#开头的行

    grep '^#' /etc/login.defs
    
  4. 利用grep显示/etc/login.defs 有效配置的行

    grep -v '^$' /etc/login.defs | grep -v '^#'
    

vim 命令的使用

  1. 在根目录下创建一个子目录 c

    mkdir /c
    
  2. 利用vim建立文件/tedu/stu.txt并写入内容“I Love Goddess”

    vim /tedu/stu.txt
    	I Love Goddess
    :wq
    

复制、删除、移动命令的使用

  1. 在目录/opt下创建一个子目录 nsd

    mkdir -p /opt/nsd
    
  2. 在目录/opt/nsd/创建文件readme.txt,利用vim写入内容 I Love Linux

    vim /opt/nsd/readme.txt
    
  3. 将/etc/passwd 和 /etc/resolv.conf同时拷贝到/opt/nsd目录下

    cp /etc/passwd  /etc/resolv.conf /opt/nsd
    
  4. 将文件 /etc/redhat-release复制到 /root/ 下,同时改名为 version.txt

    cp /etc/redhat-release /root/version.txt
    
  5. 将文件 /root/version.txt 移动到/opt/nsd/目录下

    mv /root/version.txt /opt/nsd/
    
  6. 将/home目录复制到/opt/nsd/目录下

    cp -r /home /opt/nsd/
    
  7. 新建目录结构/student/test/nsd

    mkdir -p /student/test/nsd
    cd /student/test/nsd
    
  8. 将文件夹/boot/grub2/复制到目录/student/test/nsd下

    cp /boot/grub2 /student/test/nsd
    
  9. 在目录/student/test/nsd创建文件testa.txt并写入内容 NSD Student(利用echo方式)

    echo "NSD Student" > testa.txt
    
  10. 将/student/test/nsd/testa.txt文件复制到/root目录下,同时 改名为 tedu.txt

    cp /student/test/nsd/testa.txt /root/tedu.txt
    
  11. 将/etc/passwd 、/etc/resolv.conf、/etc/hosts 同时拷贝到/student/test/nsd目录下

    cp /etc/passwd /etc/resolv.conf /etc/hosts /student/test/nsd
    
  12. 将文件/root/tedu.txt移动到/student/test/nsd目录下

    mv /root/tedu.txt /student/test/nsd
    
  13. 将文件 student/test/nsd 重改名为 hs.txt

    mv /student/test/nsd /student/test/hs.txt
    
  14. 删除/student/test/nsd目录下的grub2子目录

    rm -rf /student/test/nsd/grup2
    

别名的使用

  1. 为虚拟机定义一个别名,执行byebye可以实现关闭系统

    alias byebye='poweroff'
    

创建命令的使用

  1. 一条命令创建文件夹/protected/project/tts10

    mkdir -p /protected/project/tts10
    
  2. 请在/opt创建三个文本文件分别为1.txt、a.txt、nsd.txt(至少写出2种方法)

    touch /opt/1.txt /opt/a.txt /opt/nsd.txt
    touch {1,a,nsd}.txt
    
  3. 利用vim文本编辑器修改/opt/nsd.txt内容写入"I LOVE Linux"

    vim /opt/nsd.txt
    	I LOVE Linux
    :wq
    

重定向和管道命令的使用

  1. 显示ifconfig命令的前2行内容

    ifconfig | head -2
    
  2. 显示/etc/passwd第九行内容

    cat -n /etc/passwd | head -9 | tail -1
    
  3. 将hostname命令的输出内容,覆盖写入到/opt/hn.txt

    hostname > /opt/hn.txt
    
  4. 利用echo命令,将”abc“ 内容追加写入到/opt/hn.txt

    echo abc >> /opt/hn.txt
    

系统网络参数的配置

  1. 设置主机名为t.a.cn

    hostname t.a.cn
    
  2. 配置静态IP地址为192.168.4.0/24

    ifconfig ens33 192.168.4.0/24
    

查找并提取文件内容

  1. 在文件 /usr/share/dict/words 中查找到所有包含字符串 seismic 的行,将输出信息,写入到/opt/nsd1.txt

    grep 'seismic' /use/share/dict/words > /opt/nsd1.txt
    
  2. 查看内核版本,将显示结果重定向到/root/version.txt

    uname -r > /root/version.txt
    
  3. 查看红帽系统版本,将显示结果追加到/root/version.txt

    cat /red hat-release > /root/version.txt
    
  4. 查看主机名将显示结果追加到/root/version.txt

    hostname > /root/version.txt
    
  5. 将/etc/fstab文件中以UUID开头的信息,写入到/root/fstab.txt

    grep ‘^UUID’ /etc/fstab > /root/fastab.txt
    
  6. 提取/etc/passwd以bash结尾的行,将其信息写入/opt/pass.txt

    grep ‘bash$’/etc/passwd  > /opt/pass.txt
    
  7. 复制/etc/login.defs文件到当前目录下,改名为init.txt

    cp /etc/login.defs ./init.txt
    
  8. 提取init.txt文件里的有效配置(去除以#号开头,去除空行),保存为init2.txt

    grep -v '^#' init.txt | grep -v '^$' > init2.txt
    

rpm 命令的使用

  1. 列出当前主机已安装的所有RPM软件

    rpm -qa | wc -l
    
  2. 查看firefox软件包的安装清单

    rpm -ql firefox
    
  3. 查看firefox软件包的用途

    rpm -qi firefox`
    
  4. 查询光盘中的lynx软件包的用途,安装清单

    rpm -pi firefox
    
  5. 利用rpm安装vsftpd这个软件包

    rpm -ihv /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
    rpm -q vsftpd
    
  6. 删除vim、vi、hostname命令程序

    which vim vi hostname
    rm- rf /usr/bin/vim /usr/bin/hostname /
    
  7. 修复vim、vi、hostname

    rpm -ivh --force /mnt/Packages/vim-enhanced-7.4.160-4.el7.x86_64.rpm
    rpm -qf /usr/bin/vim
    
  8. 安装bind-chroot包,体验依赖关系

    rpm -ivh --force /mnt/Packages/bind-9.9.4-61.el7.x86_64.rpm
    
  9. 卸载vsftpd软件

    rpm -e vsftpd
    rpm -q vsftpd
    

yum练习

  1. 将光盘文件挂载到/mnt目录下,查看/mnt下内容

    mount /dev/cdrom /mnt
    ls /mnt
    
  2. 搭建本地yum仓库

    vim /etc/yum.repos.d/mnt.repo
    
    	[mnt] 			# 源名称
    	name=Centos7.5		# 操作系统版本
    	baseurl=file:///mnt		# 包路径,光盘挂载路径,要与挂在路径相同
    	enabled=1
    	gpgcheck=0		
    
    ls /etc/yum.repos.d/
    mkdir /etc/yum.repos.d/bind
    mv /etc/yum.repos.d/bind
    mv /etc/yum.repos.d/CentOS-* /etc/yum.repos.d/bind
    ls /etc/yum.repos.d/
    yum repolist	#验证包
    

综合练习 3.31

案例1:添加用户帐号

  1. 创建一个名为tedu01的用户帐号

    useradd tedu01
    grep tedu01 /etc/passwd
    id tedu01
    
  2. 检查/etc/passwd文件的最后一行

    tail -1 /etc/passwd
    
  3. 检查/home新增的宿主目录

    ls /home/
    
  4. 新建用户tedu02,宿主目录位于/opt/tedu02

    useradd -d /opt/tedu02 tedu02
    grep tedu02 /etc/passwd
    
  5. 新建系统账号system01,将UID设为1234,登录shell设为/sbin/nologin

    useradd -u 1234 -s /sbin/nologin system0
    grep system01 /etc/passwd
    
  6. 新建用户admin,附加组设为adm,root

    useradd -G adm,root admin
    id admin
    
  7. 更改用户tedu 01密码(root用户)

    passwd tedu01
    
  8. 修改当前用户密码

    passwd
    
  9. 直接为用户tedu02设置密码123(非交互式)

    echo 123 | passwd --stdin tedu02
    

案例2:设置用户密码

  1. 为用户tedu01设置一个密码:123456

    echo 123456 | passwd --stdin tedu01
    
  2. 过滤/etc/shadow文件中包含tedu01的内容

    grep tedu01 /etc/shadow
    
  3. 为用户system01设置密码,并测试是否能够登录

    echo a | passwd --stdin system01
    

    无法登陆

  4. 非交互式给用户tedu02设置密码123456

    echo 123456 | passwd --stdin tedu02
    
  5. 交互式给用户admin设置密码redhat

    passwd admin
    redhat
    

综合练习 4.2

案例1:指定yum软件源

  1. 将此配置为虚拟机默认软件仓库

    mkdir /dvd
    mount /dev/cdrom /dvd
    
  2. 确认可用的仓库列表

    ls /mnt
    
  3. 利用yum仓库安装httpd与vsftpd

    vim /etc/yum.repos.d/mnt.repo
        [mnt]
        name=Centos
        baseurl=file:///mnt
        enabled=1
        gpgcheck=0
    :wq
    rm -rf /etc/yum.repos.d/Centos-*
    ls /etc/yum.repos.d/
    yum repolist
    rm -rf /var/run/yum.pid
    
    cat /etc/yum.repos.d/mnt.repo
    yum install -y httpd vsftpd
    
  4. 利用rpm命令检测是否安装成功

    rpm -q httpd vsftpd
    

案例2:查找并处理文件

  1. 创建目录/root/findfiles/

    mkdir /root/findfiles
    ls /root/
    
  2. 利用find查找所有用户 lisi 拥有的必须是文件,把它们拷贝到 /root/findfiles/ 文件夹中

    find / -user lisi -a -type f -exec cp {} /root/findfiles/ \;
    

    -user:按照文件的所有者来查找

  3. 利用find查找/boot目录下大于10M并且必须是文件,拷贝到/opt

    find /boot -size +10M -type f -exec cp {} /opt/ \;
    
  4. 将目录 /boot内容中以 vm 开头的数据, 复制到/boot/kernel目录下

    mkdir /boot/kernel
    find /boot/ -name "vm*" -exec cp {} /boot/kernel/ \;
    ls /boot/kernel/
    
  5. 利用find查找/boot/ 目录下为快捷方式

    find /boot/ -type l
    
  6. 利用find查找/etc 目录下,以 tab 作为结尾的 必须是文件,将其拷贝到/opt/tab/文件夹下

    ls /opt/
    rm -rf /opt/tab
    mkdir /opt/tab
    find /etc/ -name "*tab" -type f -exec cp {} /opt/tab/ \;
    

案例3:查找并提取文件内容

  1. 在文件 /usr/share/dict/words 中查找到所有包含字符串 seismic 的行,将输出信息,写入到/opt/nsd18.txt

    grep "seismic" /usr/share/dict/words >> /opt/nsd18.txt
    cat /opt/nsd18.txt
    
  2. 查看内核版本,将显示结果重定向到/root/version.txt

    uname -r > /root/version.txt
    cat /root/version.txt
    
  3. 查看红帽系统版本,将显示结果追加到/root/version.txt

    cat /etc/red hat-release > /root/version.txt
    cat /root/version.txt
    
  4. 查看主机名将显示结果追加到/root/version.txt

    hostname >> /root/version.txt
    
  5. 将/etc/fstab文件中以UUID开头的信息,写入到/root/fstab.txt

    grep '^UUID' /etc/fstab > /root/fastab.txt
    cat /root/fastab.txt
    
  6. 提取/etc/passwd以bash结尾的行,将其信息写入/opt/pass.txt

    grep 'bash$' /etc/passwd  > /opt/pass.txt
    cat /opt/pass.txt
    
  7. 复制/etc/login.defs文件到当前目录下,改名为init.txt

    cp -r /etc/login.defs ./init.txt
    
  8. 提取init.txt文件里的有效配置(去除以#号开头,去除空行),保存为init2.txt

    grep -v '^#' init.txt | grep -v '^$' > init2.txt
    

案例4:tar制作/释放归档压缩包(zcf、ztf、zxf、jcf、jtf、jxf、cf、tf)

  1. 首先创建/root/boothome/与/root/usrsbin/目录

    mkdir /root/boothome/ /root/usrsbin/
    
  2. 备份/boot、/home这两个文件夹,保存为boothome.tar.gz文件

    tar -zcf /boothome.tar.gz /boot /home
    
  3. 查看boothome.tar.gz文件内包含哪些内容

    tar -tf /boothome.tar.gz
    
  4. 将boothome.tar.gz释放到文件夹/root/boothome/下

    tar -xf /boothome.tar.gz -C /root/boothome/
    
  5. 备份/usr/sbin目录,保存为usrsbin.tar.bz2文件

    tar -jcf /usrsbin.tar.bz2 /usr/sbin
    
  6. 查看usrsbin.tar.bz2文件内包含哪些内容

    tar -xf /usrsbin.tar.bz2
    
  7. 将usrsbin.tar.bz2释放到/root/usrsbin/文件夹下

    tar -xf /usrsbin.tar.gz2 /root/usrsbin
    
  8. 创建一个名为 /root/backup.tar.bz2 的归档文件,其中包含 /usr/local 目录中的内容,tar 归档必须使用 bzip2 进行压缩

    tar -jcf /root/backup.tar.bz2 /usr/local/
    tar -xf /root/backup.tar.bz2
    

案例5:usermod修改用户

  1. 新建一个用户nsd03,将宿主目录设为/opt/home03,并设置密码为redhat

    useradd -d /opt/nsd03 nsd03
    id nsd03
    ls /opt
    grep nsd03 /etc/passwd
    echo redhat | passwd --stdin nsd03
    
  2. 将用户nsd03的宿主目录改为/home/nsd03

    usermod -d /home/nsd03 nsd03
    grep nsd03 /etc/passwd
    ls /home
    
  3. 将用户sys01的登录Shell改为/bin/bash

    useradd  -s /sbin/nologin sys01
    usermod -s /bin/bash sys01
    grep sys01 /etc/passwd
    

案例6:创建用户

  1. 创建一个名为alex的用户,用户ID是 3456。密码是flectrag

    useradd -u 3456 alex
    grep alex /etc/passwd
    echo flectrag | passwd --stdin alex
    id alex
    

案例7:创建用户和组

  1. 一个名为adminuser的组

    groupadd adminuser
    grep adminuser /etc/group
    
  2. 一个名为natasha的用户,其属于adminuser,这个组是该用户的从属组

    useradd -G adminuser natasha
    grep natasha /etc/group
    
  3. 一个名为harry的用户,属于adminuser,这个组是该用户的从属组

    useradd -G adminuser harry
    grep harryr /etc/group
    
  4. 一个名为sarah的用户,其在系统中没有可交互的shell,并且不是adminuser组的成员用户

    useradd -s /sbin/nologin sarah
    grep sarah /etc/group
    
  5. natasha、harry、和sarah的密码都要设置为flectrag

    echo flectrag | passwd --stdin natasha
    echo flectrag | passwd --stdin harry
    echo flectrag | passwd --stdin sarah
    

案例8:配置一个cron任务

  1. 为用户 natasha 配置一个定时任务

    su natasha
    crontab -e
    
    crontab -e -u natasha
    
  2. 每天在本地时间 23:30 执行

  3. 需要完成的任务操作为 /bin/echo hiya

    30 23 * * * /bin/echo hiya
    

案例9:设置别名

  1. 为root用户永久设置别名为hn=‘hostname’

    su root
    vim ~/.bashrc
    	alias hn='hostname'
    
    vim /root/.bashrc
    	alias hn='hostname'
    
  2. 为所有用户设置别名为 qstat=’/bin/ps -Ao pid,tt,user,fname,rsz’

    vim /etc/bashrc
    	qstat='/bin/ps -Ao pid,tt,user,fname,rsz'
    

案例10:设置基本权限

  1. 新建/nsddir1/目录,在此目录下新建readme.txt文件,并进一步完成下列操作:

    mkdir /nsddir1/
    touch /nsddir1/readme.txt
    
  2. 使用户zhangsan能够在此目录下创建/删除子目录

    useradd zhangsan
    setfacl -m u:zhangsan:rwx /nsddir1/
    
  3. 使用户zhangsan能够修改readme.txt文件

    setfacl -m u:zhangsan:rw /nsddir1/readme.txt
    vim /nsddir1/readme.txt
    
  4. 调整此目录的权限,使任何用户都不能进入,然后测试用户zhangsan是否还能修改readme.txt

    chmod -r /nsddir1/
    ls -ld /nsddr1/readme.txt
    vim /nsddr1/readme.txt
    
  5. 为此目录及其下所有文档设置权限 rwxr-x—

    chmod -R 760 /nsddir1/
    ls -ld /nsddr1/readme.txt
    

练习 4.7

案例3:配置用户和组账号

  1. 新建用户alex,其用户ID 为3456,密码是flectrag

    useradd -u 3456 alex
    grep alex /etc/passwd
    echo flectrag | passwd --stdin alex
    
  2. 创建下列用户、组及组成员的关系:
    2.1 一个名为adminuser的组

    groupadd adminuser
    grep adminuser /etc/group
    

    2.2 一个名为natasha的用户,其属于adminuser组,这个组是该用户的从属组

    
    ​```shell
    useradd -G adminuser natasha
    id natasha
    

    2.3 一个名为harry的用户,其属于adminuser组,这个组是该用户的从属组

    useradd -G adminuser harry
    id harry
    

    2.4 一个名为sarah的用户,其在系统中没有可交互的Shell,并且不是adminuser组的成员

    useradd -s /sbin/nologin sarah
    grep sarah /etc/passwd
    

    2.5 natasha、harry、sarah的密码都要设置为flectrag

    echo flectrag | passwd --stdin natasha
    echo flectrag | passwd --stdin harry
    echo flectrag | passwd --stdin sarah
    

练习4.8

案例2:文件/目录的默认权限

  1. 以root用户登录,测试umask掩码值
    1.1. 查看当前umask值

    umask
    

    1.2. 新建目录udir1,文件ufile1,查看默认权限

    mkdir /udir1 /ufile1
    ls -ld /udir1
    ls -ld /ufile1
    

    1.3. 将umask设为077,再新建目录udir2、文件ufile2,查看默认权限

    umask 077
    umask
    mkdir /udir2 /ufile2
    ls -l /udir2
    ls -l /ufile2
    

    1.4. umask值重新设置为022

    umask 022
    umask
    
  2. 以用户zhangsan登入,查看当前的umask值

    useradd zhangsan
    su zhangsan
    umask
    

练习4.8

案例3:设置归属关系

  1. 新建/tarena1目录,并进一步完成下列操作

    mkdir /tarena1
    ls -ld /tarena1
    
  2. 将属主设为gelin01,属主设为tarena组

    id gelin01
    grep tarena
    
    useradd gelin01
    groupadd tarena
    chown gelin01:tarena /tarena1/
    
  3. 使用户gelin01对此目录具有rwx权限,其他人对此目录无任何权限

    ls -ld /tarena1/
    chmod o=/tarena1/
    
  4. 使用户gelin02能进入,查看此目录

    id gelin02
    useradd gelin02
    
    gpasswd -a gelin02 tarena
    su gelin02
    ls -ld /tarena1/
    
  5. 将gelin01加入tarena组,将tarena1目录的权限设为450,再测试gelin01童虎能否进入此目录

    gpasswd -a gelin01 tarena
    chmod 450 /tarena1/
    ls -ld /tarena1/
    
    su - gelin01
    cd /tarena1/
    

练习4.9

案例:SGID练习

  1. 创建/nsdpublic目录,将属组改为tarena,进一步完成下列操作:

    mkdir /nsdpublic
    ls -ld /nsdpublic
    groupadd tarena
    chown :tarena /nsdpublic
    
  2. 新建子目录nsd01,子文件test01.txt,查看两者的权限及归属

    mkdir /nsdpublic/nsd01
    touch /nsdpublic/nsd01/test01.txt
    
  3. 为此目录添加SGID权限,再新建子目录nsd02,子文件test02.txt

    chmod g+s /nsdpublic
    ls -ld /nsdpublic/
    
    mkdir /nsdpublic/nsd02
    touch /nsdpublic/nsd02/test02.txt
    
  4. 查看上述子目录及文件的权限及归属

    ls -ld /nsdpublic/nsd02
    ls -ld /nsdpublic/nsd02/test02.txt
    

练习 4.12

权限简答

  1. 权限的分类是什么?
  1. 基本权限的分类是什么?
  1. 归属关系都有哪些?
  1. 用户的分类?组账号的分类?
  1. 唯一标识用户身份的是什么?
  1. 保存用户信息的配置文件是?里面的字段值都是什么意思?
  1. 保存组账号基本信息的配置文件是?里面的字段值是什么意思?
  1. 保存组账号管理信息的配置文件是?里面的字段值是什么意思?
  1. 如何创建用户?如何修改用户的属性?分别说出下列选项意思-d -G -s -u
  1. 如何修改权限?如何修改归属关系?
  1. 文件/目录默认的权限是?
  1. 用户的初始配置文件来自于哪个模板目录
  1. 如何创建组?如何删除组?如何往组里添加成员?如何删除组成员?

案例1:创建用户和组

  1. 一个名为tarena的组

    groupadd tarena
    grep tarena /etc/group
    
  2. 一个名为natasha的用户,其属于tarena组,这个组是该用户的从属组

    useradd -G tarena natasha
    id natasha
    
  3. 一个名为harry的用户,其属于tarena组,这个组是该用户的从属组

    useradd -G tarena harry
    id harry
    
  4. 一个名为sarah的用户,其在系统中没有可交互的shell,并且不是tarena这个组的成员用户

    useradd -s /sbin/nologin sarah
    grep sarah /etc/passwd
    
  5. 为natasga、harry、sarah设置密码为redhat

    echo redhat | passwd --stdin nataha
    echo redhat | passwd --stdin harry
    echo redhat | passwd --stdin sarah
    

案例2:配置文件/var/tmp/fstab的权限

  1. 拷贝文件/etc/fstab到/var/tmp/fstab,配置文/var/tmp/fstab的权限

    cp /etc/fstab /var/tmp/fstab
    
  2. 文件/var/tmp/fstab的拥有着是root用户

  3. 文件/var/tmp/fstab属于root组

    chown root:root /var/tmp/fstab 
    ls -ld /var/tmp/fstab 
    
  4. 文件/var/tmp/fstab对任何人都不可执行

    chmod -x /var/tmp/fstab
    ls -l /var/tmp/fstab
    
  5. 用户natasha能够对文件/var/tmp/fstab执行读和写操作

    setfacl -m u:natasha:rw /var/tmp/fstab
    setfacl /var/tmp/fstab
    
  6. 用户harry对文件/var/tmp/fstab既不能读,也不能写

    setfacl -m u:harry:- /var/tmp/fstab
    getfacl /var/tmp/fstab
    
  7. 所有其他用户(当前的和将来的)能够对文件/var/tmp/fstab进行读操作

    ls -l /var/tmp/fstab
    

4.14练习

划分3个2G的主分区,一个扩展分区,3个2G的逻辑分区

  1. 利用sdb硬盘划分2个1G的逻辑分区

    lsblk
    fdisk /dev/sdb
    n
    p
    
    +2G
    n
    p
    
    +2G
    n
    p
    
    +2G
    n
    e
    
    
    n
    
    +2G
    n
    
    +2G
    n
    
    +2G
    
  2. 将/dev/sdb3格式化成ext3的文件系统类型,第一个逻辑分区格式化为xfs的文件系统类型,第3个逻辑分区格式化为ext4的文件系统类型

    mkfs.xfs /dev/sdb5
    blkid /dev/sdb5
    
  3. 分别查看几个分区的文件类型

    blkid /dev/sdb1
    blkid /dev/sdb2
    blkid /dev/sdb3
    blkid /dev/sdb4
    blkid /dev/sdb5
    blkid /dev/sdb6
    blkid /dev/sdb7
    
  4. 将/dev/sdb3挂在到/mypt1文件夹下,第3个逻辑分区挂载到/mypt2

    mount /dev/sdb3 /mytp1
    df -h /mypt1
    
    mkfs.xfs /dev/sdb7
    mkdir /mypt2
    mount /dev/sdb7 /mypt2
    df -h /mypt2
    
```shell
partprobe /dev/sdb	#刷新分区表 或者reboot
```

练习4.15

案例:硬盘分区练习

添加一块10G硬盘,采用msdos(MBR)分区模式,完成如下操作

  1. 划分2个2G的主分区,一个1G的主分区,2个1G的逻辑分区

    lsblk
    fdisk /dev/sdb
        n
        p
        1
        
        +2G
        n
        p
        2
        
        +2G
        n
        p
        3
        
        +1G
        n
        e
        
        
        n
        
        +2G
        n
        
        +2G
        p
        w
    
  2. 将/dev/sdb3格式化为ext4的文件系统类型。将第2个逻辑分区格式化为xfs的文件系统类型

    mkfs.ext4 /dev/sdb3
    blkid /dev/sdb3
    
    mkfs.xfs /dev/sdb6
    blkid /dev/sdb6
    
  3. 实现开机自动挂/dev/sdb3,挂载到/mydb1目录

    vim /etc/fstab
        /dev/sdb3 /mydb1 ext4 defaults 0 0
    mount -a	#检测文件语法、自动挂载
    mkdir /mydb1
    df -h
    

练习:新建一个逻辑卷

使用/dev/sdb3构建LVM存储

  1. 新建一个名为systemvg的卷组

    vgcreate systemvg /dev/sdc{3,5}
    
  2. 在此卷组中创建名为vo的逻辑卷,大小为180M

    lvcreate -L 180M -n vo systemvg 
    
  3. 将逻辑卷vo格式化为xfs的文件系统类型

    mkfs.xfs /dev/systemvg/vo
    
  4. 将逻辑卷vo挂载到/myvo目录,并在此目录下建立一个测试文件votest.txt,内容为“I AM KING”

    mkdir /myvo
    mount /dev/systemvg/vo /myvo
    vim /myvo/votest.txt
        "I AM KING"
    cat /myvo/votest.txt
    
  5. 将逻辑卷实现自动开机自动挂载到/myvo目录

    vim /etc/fstab 
        /dev/systemvg/vo /myvo xfs defaults 0 0
    umount /myvo
    mount -a
    

4.16 案例:LVM逻辑卷练习

  1. 添加一块80G硬盘,划分三个10G的主分区,2个10G的逻辑分区

    lsblk
    fdisk /dev/sdb
    vgcreate system /dev/sdc{3,5}    
    lsblk
    
  2. 利用/dev/sdb1和/dev/sdb2创建一个名为systemvg的卷组

    vgcreate systemvg /dev/sdb[1-2]
    
  3. 在此卷组中创建一个名为vo的逻辑卷,大小是16G

    lvcreate -L 16G -n vo systemvg1
    
  4. 将此逻辑卷格式化为xfs文件系统类型

    mkfs.xfs /dev/systemvg/vo
    blkid /dev/systemvg/vo
    
  5. 将该逻辑卷挂载到根下的vo文件夹下,并写入测试文件为test.txt,内容为"I AM KING."

    mkdir /vo
    mount /dev/systemvg/vo /vo
    
    vim /vo/test.txt
        I AM KING.
    echo "I AM KING." > /vo/test.txt
    
    cat /vo/test.txt 
    
  6. 将此逻辑卷实现开机自动化挂载

    vim /etc/fstab 
        /dev/systemvg/vo /vo xfs defaults 0 0
    
    umount /vo
    mount -a
    lsblk
    

练习4.19

案例1:MBR分区模式规划分区

  1. 添加一块80G的硬盘并规划分区

  2. 划分2个10G的主分区;1个12G的主分区;2个10G的逻辑分区。

    fdisk /dev/sdb
        n
        p
        1
        
        +10G
        
        n
        p
        2
        
        +10G
        n
        p
        3
        
        +10G
        n
        e
        
        
        n
        e
        
        +10G
        n
        e
        
        +10G
    

案例2:构建LVM存储

  1. 利用/dev/sdb1和/dev/sdb2新建一个名为systemvg的卷组

    vgcreate systemvg /dev/sdb1 /dev/sdb2
    vgs
    
  2. 在此卷组中创建一个名为vo的逻辑卷,大小为10G

    lvcreate -L 10G -n vo systemvg
    
  3. 将逻辑卷vo格式化为xfs文件系统

    mkfs.xfs /dev/systemvg/vo 
    blkid /dev/systemvg/vo
    
  4. 将逻辑卷vo挂载到/vo目录,并在此目录下建立一个测试文件votest.txt,内容为“I AM KING”

    mkdir /vo
    mount /dev/systemvg/vo /vo
    echo "I AM KING" > /vo/votest.txt
    cat /vo/votest.txt
    
  5. 实现逻辑卷vo开机自动挂载到/vo

    vim /etc/fstab
        /dev/systemvg/vo /vo xfs defaults 0 0
    umount /vo
    df -h
    mount -a
    df -h /vo
    

案例3:构建lvm存储(修改PE大小)

  1. 新的逻辑卷命名为dateabase,其大小为50个PE的大小,属于datastore卷组

    vgcreate database /dev/sdb3
    vgs
    lvcreate -l 50 -n database datastore
    
  2. 使用EXT4文件系统对逻辑卷database格式化,此逻辑卷应该在开机时自动挂载到/nsd/vo

    mkfs.ext4 /dev/database/datastore
    vim /etc/fstab
        /dev/database/datastore /nsd/vo ext4 defaults 0 0
    
    mkdir -p /nsd/vo
    mount -a
    df -h
    

案例4:扩展逻辑卷

  1. 将/dev/systemvg/vo逻辑卷的大小扩展到30G

    vgs
    lvs
    
    vgextend systemvg /dev/sdb5 /dev/sdb6
    vgs
    lvextend -L 30G /dev/systemvg/vo
    
    df -h
    xfs_growfs /dev/systemvg/vo
    df -h /vo
    
举报

相关推荐

0 条评论