linux基础

常用系统工作命令

iftop
检查网络带宽和流量
-n 禁止域名解析,直接显示ip地址
-i	指定要监视的网卡如ens33
-N	显示端口号
-F	显示过滤规则
cpu
lscpu: 这个命令会显示关于 CPU 的详细信息
cat /proc/cpuinfo: 这个命令也可以显示 CPU 的详细信息
dmidecode -t processor
内存
free: 这个命令可以显示系统中的内存使用情况,包括总内存、已使用内存、空闲内存等信息。
top 或 htop: 显示内存使用情况。在进程列表上方通常会有内存使用情况
vmstat: 这个命令可以显示虚拟内存的统计信息,包括内存使用情况、缓存、交换等。
cat /proc/meminfo: 这个命令可以显示内存相关的详细信息,包括内存总量、空闲内存、缓存、交换分区等
man
命令信息帮助界面
home	直接前往首页
end		直接前往尾页
/		从上到下搜索关键字,如  /linux
?	    从下往上搜索关键字
q		退出
快捷键
Tab		将命令,参数,文件自动补齐
Ctrl+C 	终止当前进程的运行
Ctrl+D	键盘输入结束
Ctrl+C	清空当前页面内容
echo
在终端设备上处处字符串或者变量提取后的值
"echo [字符串] [变量]"
date
显示或者设置系统时间和日期
"date [+指定的格式]"
- date "+%Y-%m-%d %H:%M:%S"		显示当前时间
	2023-12-10 20:10:22
- data -s "20180101 8:30:00"	将系统时间设置为新日期
timedatectl
设置系统时间
"timedatectl set-timezone Asia/Shanghai"	设置时区为上海
"timedatectl set-time 2018-09-12"		修改日期
reboot
重启系统
"reboot"	重启系统
poweroff
关闭系统
"poweroff"	关闭系统
wget
在终端命令行中下载网络文件
"wget [参数] 网址"
-P	下载到指定目录
-p	下载页面内所有资源
-r	递归下载
ps
查看系统中的进程状态
"ps [参数]"
-a	显示所有进程
-u	用户以及其他详细信息
-x	显示没有终端的进程
进程的状态
	R进程正在运行
	S休眠
	D不可中断
	Z僵尸进程
	T停止运行
	<高优先级	N低优先级	L被锁进程	s包含子进程	i多线程
ps -aux
USER      PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
进程所有者|进程ID|cpu占用率|内存使用率|虚拟内存使用|占用的固定内存|所在终端|进程状态|被启动时间|实际使用cpu时间|命令名称与参数
pstree
按照树状图显示进程之间的关系
top
动态监视进程活动以及系统负载信息
"top"
-d	指定时间间隔刷新,默认3s
-n	设置更新显示的次数
-u	只显示该用户的信息
-p	显示指定进程PID信息
Shift+M		按照内存使用率排序
Shift+P		按照CPU使用率排序
top - 08:55:08 up 41 min,  2 users,  load average: 0.00, 0.01, 0.02
Tasks:  98 total,   1 running,  97 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :   995636 total,   700472 free,   177028 used,   118136 buff/cache
KiB Swap:  3907580 total,  3907580 free,        0 used.   684228 avail Mem
   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
第一行:系统时间,运行时间,登录终端数,系统负载
第二行:进程总数,运行中的进程,睡眠进程数,停止进程数,僵尸进程数
第三行:用户占用资源百分比,系统内核占用资源百分比,改变过优先级的进程资源百分比,空闲资源百分比
第四行:物理内存总量,内存空闲量,内存使用量,作为内核缓存的内存量
第五行:虚拟内存总量,虚拟内存空闲量,虚拟内存使用量,已被提前加载的内存量
第六行:标识符|用户名|进程优先级|进程的nice值|虚拟内存大小|物理内存大小|共享内存大小|进程状态|cpu使用|内存使用|使用cpu时间参数和名称
nice
调整进程优先级
"nice 优先级数字 服务名称"
- nice -n -20 bash	将bash服务优先级调到最高(-20,19),数字越小,优先级越高
pidof
查询指定服务的PID号码值
"pidof sshd"	查询sshd的PID号码
kill
终止某个服务
"kill [参数] 进程的PID"
-9	最高级别强制杀死某个进程
killall
终止某个服务对应的所有进程
"killall [参数] 服务名称"

系统状态检测命令

ifconfig
获取网卡配置与网络状态等信息
"ifconfig"
uname
查看系统内核版本与系统架构信息
"uname -a"
Linux localhost.localdomain 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
内核名称|主机名|内核发行版本|节点名|压制时间|硬件名称|硬件平台|处理器类型|操作系统类型
-  cat /etc/redhat-release	查看当前版本的详细信息

uptime
查看系统的负载信息
"uptime"
 21:39:04 up 47 min,  2 users,  load average: 0.00, 0.01, 0.05
当前时间|启动时间|启用终端用户|平均负载信息(1,5,15分钟的压力情况)
free
显示当前系统中的内存使用量
"free -h"
              total        used        free      shared  buff/cache   available
Mem:           972M        169M        680M        7.6M        122M        668M
Swap:          3.7G          0B        3.7G
			内存总量|		已使用内存|    空闲内存|	进程功效的内存量|磁盘缓存内存量/缓存内存量|可用量
who
查看当前登入主机的用户终端信息
"who"
last
调取主机的被访问记录
ping
测试网络之间的连通性
-c	总共发送次数
-l	指定网卡名称
-I	每次间隔时间
-w	最长等待时间
"ping www.baidu.com"
tracepath
显示数据包经过的所有路由信息
"tracepath www.baidu.com"
netstat
显示网络连接,路由表,接口状态信息
-a 显示所有连接中的Socket
-p	显示正在使用中的Socekt
-t	显示Tcp协议的连接状态
-u	显示所有Udp连接状态
-n	使用IP地址,不使用域名
-l	仅列出正在监听的服务状态
-i	现在网卡列表信息
history
显示所有历史命令
"history "
-c	清除之前的历史命令
 cat ~/.bash_history	查看历史命令保存文件
sosreport
收集系统配置及架构信息并输出诊断文档

查找定位文件命令

pwd
查看当前所处的工作目录
cd
切换当前工作路径
cd -	返回到上一次所在目录
cd ~	切换到用户的家目录
cd ~ a1	切换到a1用户的家目录
ls
显示目录中的文件信息
-l	查看文件的属性,大小
-a	查看所有文件(包括隐藏文件)
ls -ld /etc		查看/etc目录的信息
find
按照指定条件查找文件所在位置
-name	匹配名称
-perm	匹配权限
-user	匹配所有者
-greop	匹配所属组
-mtime	匹配修改内容时间
-atime	匹配访问文件时间
-ctime	匹配修改文件权限使劲按
-nouser	匹配无所有者的文件
-nogreop 匹配无所有组的文件
-newer f1 !f2  匹配比文件f1新但是比f2旧的文件
-type b/d/c/p/l/f  匹配类型为块设备/目录/字符设备/管道/链接文件/文本文件
-size   匹配文件大小
-prune	忽略某个文件
-exec  {} \;  把find找到的文件传递给下一个命令

1 在根目录下查找名字为.txt结尾的文件 
find / -name "*.txt"
2 在根目录下查找权限为555的文件
find / -perm 555
3 在根目录下查找文件所有者为root用户的文件
find / -user root
4 在当前目录下查找文件所属组为test1的文件
find . -group test1
5 在当前目录下寻找修改文件内容事件小于一天的
find . -mtime -1
6 在当前目录下寻找比a.txt文件新的文件
find . -newer a.txt
7 在当前目录下查找文本文件
find . -type f
8 在当前目录中找到文件权限为777的并且删除
find . -perm 777 -exec rm -f {} \;
locate
快速搜索文件对应位置
运行which mlocate
显示 /usr/bin/which: no mlocate in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
则没有安装,运行yum install mlocate
然后更新
1 updatedb
此时ls -l /var/lib/mlocate/mlocate.db
会显示有文件存在 -rw-r-----. 1 root slocate 716131 Dec 26 13:55 /var/lib/mlocate/mlocate.db
2 locate pwd

/etc/.pwd.lock
/usr/bin/pwd
/usr/bin/pwdx
/usr/include/pwd.h
/usr/lib/modules/3.10.0-1160.el7.x86_64/kernel/drivers/watchdog/hpwdt.ko.xz
/usr/lib64/cracklib_dict.pwd
/usr/lib64/python2.7/lib-dynload/spwdmodule.so
/usr/sbin/unix_chkpwd
/usr/share/cracklib/cracklib-small.pwd
/usr/share/cracklib/pw_dict.pwd
/usr/share/man/man1/pwd.1.gz
/usr/share/man/man1/pwdx.1.gz
/usr/share/man/man8/unix_chkpwd.8.gz
which
搜索系统变量的位置,仅查找命令本身所在路径
1 which cd
/usr/bin/cd
which pwd
2 /usr/bin/pwd
whereis
快速找到命令所在目录,不关心同名文件
whereis pwd
pwd: /usr/bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz

文本文件编辑命令

cat
查看纯文本文件(内容较少的)
cat -n a.txt
查看a.txt文件并显示行号
more
查看纯文本文件(内容较多的)
head
查看文本的前几行
查看文本前十行
head -n 10 a.txt
tail
查看纯文本文件的后N行或者持续刷新文件的最新内容
tail -n 2 b.txt
tail -f /var/log/messages
tr
替换文本中的内容
tr [原始字符] [目标字符]
将文本中所有小写字母换成大写
cat b.txt | tr [a-z] [A-Z]
wc
统计指定文本的行数,字数,或者字节数
-l	统计行数
-w	统计单词数
-c	统计字节数
stat
查看文件详细信息
atime 最后一次访问事件	mtime最后一次修改时间	ctime最后一次权限修改事件
  File: ‘b.txt’
  Size: 32              Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 18176820    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:usr_t:s0
Access: 2023-12-27 17:03:45.826015406 +0800
Modify: 2023-12-27 17:03:39.671015114 +0800
Change: 2023-12-27 17:03:39.672015114 +0800
 Birth: -
grep
按行提取内容
-n	显示行号
-v	反选信息
-I	忽略大小写
-c	仅显示找到的行数
-b	将可执行文件当作文本文件搜索
再目录下找不允许登录的用户
grep /sbin/nologin /etc/passwd
cut
按列提取文本内容
提取第一列内容,以: 做分隔符
cut -d: -f 1 /etc/passwd
diff
比较两个文件之间的差异
diff -c b.txt c.txt
uniq
去除文本中连续重复的行
对文本内容去重(只能去除连续重复的行)

aaaa
aaaa
bbbb
bbbb
bbbb
cccc

uniq b.txt

aaaa
bbbb
cccc
aaaa

sort
对文本内容排序(可先排序,再去重)
-f	忽略大小写
-b	忽略缩进于空格
-n	以数值型排序
-r	反向排序
-u	去除重复行
-t	指定间隔符
-k	设置范围
123.12
123.11
131.11
123.33
1.221
123.12
按照.为分隔符,第2列数字为比较数字,排序,-n按照数值排序
sort -n -t "." -k 2 c.txt

123.11
131.11
123.12
123.12
123.33
1.221

文件目录管理命令

touch
创建空白文件或设置文件的时间
-a	仅修改访问时间
-m	仅修改修改时间
-d	同时修改atime和mtime
将文件atime和ctime时间修改
touch -d "2022-10-12 10:21" b.txt
mkdir
创建空白目录
-p	嵌套创建
cp
复制文件或目录
-r	d递归复制目录
-p	保留原始文件属性
-d	若对象为连接文件,则保留该文件的属性
-a	相当于-pdr
-i	若目标文件存在则询问是否覆盖
mv
剪切或重命名文件(默认删除源文件)
 mv c.txt /opt/
rm
删除文件或目录
-r  删除目录
-f	强制删除
dd
按照指定大小和个数的数据块来复制文件或者转换文件
-if	输入文件的名称
-of	输出文件的名称
-bs	块的大小
-cont	块的个数
dd if=/dev/zero of=560_file count=10 bs=56MB
file
查看文件类型
file a.txt
/dev/sda: block special
a.txt: ASCII text
file /dev/sd
/dev/sda: block special
tar
对文件进行打包或者压缩
-c 	创建压缩文件
-x	解开压缩文件
-z	用gzip格式压缩或解压缩
-j	用bzip2压缩或解压缩
-v	显示过程
-f	目标文件名
-C	指定解压到的目录
压缩/etc/目录
tar czvf etc.tar.gz /etc
解压etc.tar.gz到/root/etc
tar zxvf /opt/aaa/etc.tar.gz -C /root/etc

软件包

zip

压缩
-r 递归压缩
-m	压缩完成后删除源文件/目录
#压缩文件
zip test.zip data.txt
#压缩目录
zip -r /data/a.txt

unzip

解压
-d	把压缩的文件解压到指定目录下
-t	解压前进行测试,不解压
#解压压缩包到指定目录下
unzip -d /opt/ test.zip

gzip

只能压缩文件,不能压缩目录,不用指定压缩包名
-d 对压缩的文件解压
-c 	把压缩数据输出到标准输出(一般会乱码),保留源文件
#压缩a.txt文件,生成a.txt.gz,且源文件会被删除
gzip a.txt

bzip2

只能对文件压缩,压缩后生成.bz2文件,与.gz相比算法先进,压缩比好,时间较慢
-d	解压.bz2文件
-k	压缩完不会删除源文件
#压缩文件,默认删除源文件
bzip2 a.txt

tar

打包,解压,压缩
-c	把文件或者目录打包
-x	解打包
-f	指定包名
-v	显示过程
-C	指定接打包目录

-z	压缩和解压缩.tar.gz格式
-j	压缩和解压缩.tar.bz2格式

#打包,把a.txt打包成test.tar包
tar cvf test.tar a.txt
#把目录打包
tar cvf test1.tar beats/
#把mycat目录压缩成.tar.gz格式
tar -zcvf test.tar.gz mycat/
#把mycat目录压缩成.tar.bz2格式
tar -jcvf test.tar.bz2 mycat/
#解压.gz格式
tar -zxvf test.tar.gz
#解压.bz2格式
tar -jxvf test.tar.gz

dd

if=:指定输入文件,即源文件。
of=:指定输出文件,即目标文件。
bs=:指定每次读写的字节数。默认情况下,dd 使用 512 字节的块大小。
count=:指定要复制的块数或数据大小。

rpm软件包

rpm -aq nginx	查看nginx软件是否安装
rpm -ql nginx	列出nginx的所有目录
rpm -e nginx	卸载nginx软件包

用户与用户组

用户操作
  • useradd

    -u	指定用户UID
    -d	指定用户家目录(绝对路径)
    -g	指定用户的初始组
    -G	指定用户的附加组
    -c	手工指定注释信息
    -s	指定登录的shell,默认/bin/bash
    -r	创建系统用户,UID在1~499之间
    -创建a1用户
    useradd	a1
    -创建a2用户并且指定用户的初始组为test2
    useradd -g test2 a2
    -创建a3用户,并指定家目录
    useradd -d /home/aaa a3
    -创建a4,并指定为/sbin/nologin(不能登录该用户)
    useradd -s /sbin/nologin a4
    -查看创建用户使得默认值
    useradd -D 
    
    
  • usermod

    修改用户信息
    -d	修改登录用户的目录
    -g	修改用户的所属群组
    -G	修改用户所属的附加组,如果附加组不为空,则替换之前的附加组
    -a	将用户添加到附加组中,不加-a默认组中只有一个附加组,加上-a可以有很多
    -s	修改用户的shell
    -l	修改用户名
    usermod -g a10 a11
    把a11用户的所属组修改为a10的所属组(存在)
    
  • userdel

    删除用户,但不删除目录和其他文件
    -r	删除用户,文件和邮件池
    -f	强制删除用户
    
    用户配置文件

    /etc/passwd

    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    daidai:x:1000:1000:daidai:/home/daidai:/bin/bash
    用户名:密码:用户标识号:组标识号:注释:主目录:登录shell
    

    /etc/shadow

    存储用户信息
    polkitd:!!:19715::::::
    sshd:!!:19715::::::
    postfix:!!:19715::::::
    只有超级用户才能读
    登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
    

    /etc/group

    daidai:x:1000:daidai
    a1:x:1001:a3
    test2:x:1002:
    a3:x:1003:
    a4:x:1004:a3
    组名:密码:组id:组内用户
    
用户组操作

groupadd

创建用户组
-d	指定UID
-f	创建系统用户组

groupmod

-g	修改UID
-n	修改名称

groupdel

如果要删除的属组是用户的初始组,提示报错要么先删除该用户,要么把该用户的数组修改为其他组

newgrp

从用户的附加组中选择一个群组,作为用户的初始组
groupadd g1
groupadd g2
groupadd g3
useradd -g g1 -G g2,g3 user1
passwd user1
su - user1
mkdir aaa
newgrp g2
mkdir bbb
newgrp g3
mkdir ccc
ll
drwxr-xr-x. 2 user1 g1 6 Jan  4 15:35 aaa
drwxr-xr-x. 2 user1 g2 6 Jan  4 15:36 bbb
drwxr-xr-x. 2 user1 g3 6 Jan  4 15:36 ccc

su

实现用户身份的切换,root<->普通用户,

su -

用户在切换的同时,连同当前的环境变量一起切换,切换身份更彻底

whoami

打印当前执行操作的用户名

who am i

打印登录当前linux系统的用户名

passwd

-S	查看用户的密码情况,仅root可用
-L	暂时锁定用户
-u	解锁用户

gpasswd

管理群组密码
-A	user1	g1	将群组的控制权交给user1,仅root可用
-a	user2	g1	将用户加入到群组
-d	user3	g1	将用户移除

linux权限管理

文件权限查看
d	目录
-	文件
l	链接文档
b	接口设备
c	键盘
权限
对文件:
	r	可获取文件的数据
	w	可修改文件数据
	x	可将此文件运行为进程
对目录:
	r	获取文件列表
	w	修改文件,创建或者删除
	x	可cd,ls -l 
更改文件属主属组

chown:修改文件所属用户和组

chown	属主名  文件名
chown   属主名:属组名  文件名

chgrp:更改文件属组

chgrp 属组名  文件名

chmod:修改用户权限

r:4
w:2
x:1
user: u+r,u-x...
group:g+w,g-x...
others:o+x,o+r...
特殊权限
SUID:用户对有SUID的文件操作时,会拥有该文件属组的身份去执	  行,完成后身份取消。前提是用户对该文件有x权限
	 chmod u+s a.txt
SGID:赋予用户文件所属组的权限,可对文件或目录操作
	 chmod g+s a.txt
SBIT:仅对目录有效,一旦目录设定了SBIT权限,用户在此目录下	  创建的文件或者目录,只有自己和root可以以修改或删除
	 chmod o+t aaa
ACL访问控制权

RAID与LVM技术

RAID技术
RAID级别 最少硬盘 可用容量 读写性能 安全性 特点
0 2 n n 容量大,速度快,但是只要一块硬盘损坏,则数据全部损坏
1 2 n/2 n 安全性高,主要有一块硬盘可用,数据就不受影响
5 3 n-1 n-1 一般,允许有一块硬盘出现问题,且数据不受影响
10 4 n/2 n/2 综合RAID0和RAID1的优点,允许一般硬盘损坏,且数据不受影响
RAID0
将多块硬盘串联在一起,性能提升数倍,不具备数据修复能力
RAID1
把两块以上设备绑定,同时写入数据,可视为数据的镜像,某一块设备故障是,其他设备立即以热交换当属恢复数据,单数空间利用率为1/n
RAID5
在每一块硬盘上存放奇偶校验信息,最多允许一块硬盘损坏
RAID10
RAID10=RAID0+RAID1,先两两制作成RAID1磁盘阵列,保证数据安全性,然后再对两个RAID1磁盘阵列实施RAID0技术,提高性能,最多允许一般设备损坏
部署磁盘阵列
命令:mdadm
-a	检测设备名称
-n	指定设备数量
-l	指定设备级别
-v	显示部署过程
-C	创建
-r	移除设备
-f	模拟设备损坏
-Q	查看摘要信息
-D	查看详细信息
-S	停止RAID磁盘阵列
模拟创建RAID10
1.首先再虚拟机设置里面新添加4块硬盘
2.创建名称为/dev/md10,用4块硬盘,级别为RAID10,后面为4块硬盘
	mdadm -Cv /dev/md10 -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
3.挂载分区
	mkdir /RAID10
	mount /dev/md10 /RAID10
4.查看分区是否创建成功
	mdadm -Q /dev/md10
	df -h
5.查看信息
	mdadm -D /dev/md10
6.将信息添加到文件,重启会保存
	vim /etc/fstab
	/dev/md10	/RAID10    ext4    defaults    0    0
    名称		挂载目录	格式		默认		开机是否备份(0不备份)	开机是否检查(0bujiancha)
模拟设备损坏及修复
1.损坏设备,模拟损坏/dev/sdb硬盘
	mdadm /dev/md10 -f /dev/sdb
2.查看是否损坏
	mdadm -D /dev/md10
3.移除损坏的设备
	mdadm /dev/md10 -r /dev/sdb
4.修复损坏的磁盘(最好重启后再修复)
	mdadm /dev/md10 -a /dev/adb
5.查看修复进度情况
	mdadm -D /dev/md10
磁盘阵列的备份

模拟RAID5,需要3块硬盘+一块备份硬盘,平时闲置,一旦数据损坏,自动修复

#创建RAID5阵列,3块硬盘+1块备用
1.mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
#查看RAID创建情况
2.mdadm -D /dev/md0
#格式化为ext4
mkfs.ext4 /dev/md0
#创建挂载目录
mkdir /RAID
加入开机自启动选项
echo "/dev/md0 /RAID ext4 defaults 0 0" >> /etc/fstab
挂载/etc/fstab 所有内容
mount -a
#查看RAID5创建情况
df -h
#模拟损坏一块磁盘
mdadm /dev/md0 -f /dev/sdb
#此时查看设备完好
mdadm -D /dev/md0

删除磁盘阵列
#停用磁盘
umount /RAID
#将每块硬盘分别模拟损坏
mdadm /dev/md0 -f /dev/sdb(cde)
#将每块硬盘分别移除
mdadm /dev/md0 -r /dev/sdb(cde)
#此时查看设备情况
mdadm -D /dev/md0

LVM管理

部署逻辑卷

功能 物理卷PV 卷组VG 逻辑卷LV
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvdisplay
删除 pvremove vgremove lvremove
扩展 vgextend lvextend
缩小 vgreduce lvreduce
#1先将新添加的磁盘设置为pv
 vgcreate storage /dev/sdb /dev/sdc
#2从pv中切割-L=180M大小的lv
lvcreate -n lo -L 180M storage
#3将生成好的逻辑卷格式化
mkfs.ext4 /dev/storage/lo
mkdir /linuxprobe
mount /dev/storage/vo /linuxprobe
#4查看挂载状态,并永久写入文件,永久生效
echo "/dev/storage/lo /linuxprobe ext4 defaults 0 0" >>/etc/fstab
扩容逻辑卷
#1首先取消挂载
umount /linuxprobe
2扩大逻辑卷
lvextend -L 200M /dev/storage/lo
3检查磁盘完整性
e2fsck -f /dev/storage/lo
4同步信息
resize2fs /dev/storage/lo
5重新挂载并查看信息
mount -a
df -h
缩小逻辑卷
1先取消挂载
umount /linuxprobe/
2检查文件系统的完整性
e2fsck -f /dev/storage/lo
3通知系统内核缩小逻辑卷
resize2fs /dev/storage/lo 100M
4将逻辑卷缩小
lvreduce -L 100M /dev/storage/lo
5重新挂载
mount -a

删除逻辑卷
1取消挂载
umount /linuxprobe
2在/etc/fstab文件中删除逻辑卷信息
vim /etc/fstab
3删除逻辑卷设备
lvremove /dev/storage/lo
4删除卷组
 vgremove storage
5删除物理设备
pvremove  /dev/sdb /dev/sdc

ssh服务与管理主机

创建网络会话
nmcli
绑定两块网卡
1 首先在虚拟机中添加一块新网卡设备,两块网卡处于同意网络连接模式中
2 创建一个bond网卡
		nmcli connection add type bond con-name bond0 ifname bond0 bond.options "mode=balance-rr"
3 向bond0设备添加从属网卡 
		nmcli connection add type ethernet slave-type bond con-name bond0-port1 ifname ens33 master bond0
		nmcli connection add type ethernet slave-type bond con-name bond0-port2 ifname ens36 master bond0
4 配置bond0的设备信息
		vim /etc/sysconfig/network-scripts/ifcfg-bond0
5 启动服务
		查看设备详情
				nmcli connection up bond0
		启动
				nmcli device status
远程控制服务
sshd服务配置文件在/etc/ssh/sshd_config
客户端ip 192.168.199.132
服务器IP 192.168.199.145
1  ssh 192.168.199.145
	yes
	输入服务器登录密码
	成功
2 禁止以root管理员远程登录
	在服务器上vim /etc/ssh/sshd_config
			第38行 #PermitRootLogin yes  修改为no,并将#去掉
	完成后重启sshd服务systemctl restart sshd
    此时在客户端用root再次连接服务器,输入正确密码后,显示权限不够,此时切换其他非root用户可再次用密码登录
安全密钥登录
1 在客户端生成密钥
	ssh-keygen
	生成的密钥在/root/.ssh目录下
2 将客户端生成的密钥发送给服务端
	ssh-copy-id 192.168.199.145
3 对服务器设置,只允许密钥登录,拒绝其他方式登录
	vi /etc/ssh/sshd_configer
	第65行 PasswordAuthentication yes修改为no
	此时在客户端直接ssh 192.168.199.145可以登录到服务器
	此时只用有密钥的客户端才可以登录服务器,如果把客户端132的密钥文件删除,就不能登录服务器
远程文件传输
scp是基于SSH协议在网络之间进行安全传输的命令 -V显示传输进度,-P指定远程主机端口号,-r传送文件夹
1 将客户端/root/opt/a.txt 传送给服务器
	scp /opt/a.txt 192.168.199.145:/home
2 将服务器下的/root/opt/b.txt 传给客户端
	 scp 192.168.199.145:/opt/b.txt /opt
检索日志信息
/var/log/boot.log	系统开机自检事件及引导过程信息
/var/log/lastlog	用户登录成功事件,终端名称及IP地址
/var/log/btmp		登陆失败事件,终端名称及IP地址
/var/log/messages	系统及各个服务的运行和报错信息
/var/log/secure 	系统安全相关是信息
/var/log/wtmp		系统启动与关机信息

journlctl 用于检索和管理系统日志信息
-k 内核日志
-b 启动日志
-u 指定服务
-n 指定条数
-p 指定类型
-f 实时刷新
--since 指定时间
查看今天的系统日志信息
journalctl --since today
查询前一个小时的系统日志
journalctl --since "-1 hour"
查询3:00到11:00的信息
journalctl --since "3:00" --until "11:00"
查询2020-01-01到2023-10-10的信息
journalctl --since "2020-01-01" --until "2023-10-10"
查询指定服
journalctl -u sshd

Apache

1下载服务器yum install httpd

2 检查服务器状态并运行 systemctl start httpd

3检查防火墙是否关闭 systemctl stop firewalld

4在浏览器中输入IP地址,可以看到Apach网站

5

/ect/httpd	 服务目录
/etc/httpd/conf/httpd.conf	 主配置文件
/var/www/html	网站数据目录
/var/log/httpd/access_log	访问日志
/var/log/httpd/error_log	错误日志
echo "hello world" > /var/www/html/index.html
	此时再次访问Apache网站,主页上会显示hellow world
	命名为index.html是因为当前网站首页名称是index.html

6修改网站数据保存目录

相关推荐

  1. Linux基础

    2024-04-08 07:56:03       16 阅读
  2. linux基础

    2024-04-08 07:56:03       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 07:56:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 07:56:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 07:56:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 07:56:03       20 阅读

热门阅读

  1. Docker【1】:Docker制作Oracle19C镜像

    2024-04-08 07:56:03       11 阅读
  2. nginx-rtmp直播监控与管理

    2024-04-08 07:56:03       14 阅读
  3. Gumbel Softmax

    2024-04-08 07:56:03       14 阅读
  4. 【恩智浦FRDM-MCX947开箱实践指南1】

    2024-04-08 07:56:03       14 阅读
  5. 迁移学习和微调

    2024-04-08 07:56:03       13 阅读
  6. Python初级笔记4 排序

    2024-04-08 07:56:03       15 阅读
  7. go | chan 并发传输或者设置chan缓存|死锁

    2024-04-08 07:56:03       16 阅读
  8. Elasticsearch 如何实现 master 选举

    2024-04-08 07:56:03       17 阅读
  9. 柒拾贰- tushare 模拟策略交易 (三)

    2024-04-08 07:56:03       15 阅读
  10. STM32F103系列五个特殊引脚作为GPIO时的配置

    2024-04-08 07:56:03       15 阅读