Linux极简入门系统目录:
1、系统安装和配置(VMware/CentOS、WSL/ubuntu)
2、Linux的目录结构和常用操作
3、vim文本编辑器
4、用户和文件权限
5、软件和服务管理
6、其它补充
一、主机状态监控
1、主机状态监控类似于windows的任务管理器
2、命令top
,可以查看主机状态
- 第1行:命令名称 - 当前系统时间 启动了29分钟,2个用户登录,1、5、15分钟负载
- 第2行:7个进程,1个进程在运行,6个进程休眠,0个停止进程,0个僵尸进程
- 第3行:us-用户CPU使用率,sy-系统CPU使用率,ni-优先级进程CPU占用比,id-空闲CPU率,wa-IO等待CPU占用率,hi-CPU硬件中断率,si-CPU软件中断率,st-强制等待占用CPU率
- 第4/5行:物理内存/虚拟内存,总量、空闲、使用、buff/cache占用
- 进程信息说明:
- PID:进程id
- USER:进程所属用户
- PR:进程优先级,越小越高
- NI:也是进程优先级,负值表示高优先级
- VIRT:进程使用的虚拟内存,KB
- RES:进程使用的物理内容,KB
- SHR:进程使用的共享内存,KB
- S:进程状态,S休眠、R运行、Z僵尸、I空闲、N负数优先级
- %CPU:CPU占用率
- %MEM:内存占用率
- TIME+COMMAND:进程使用CPU的时间总计(单位10毫秒)+进程命令名称或路径
二、进程管理
1、命令ps [-e -f]
,可以查看系统中的进程信息。-e,显示全部进程;-f,展示全部信息。一般直接使用ps -ef
2、使用管道符过滤信息,ps -ef|grep tail
3、关闭进程,kill [-9] 进程ID
。-9,表示强制关闭。例:kill -9 203
4、进程信息说明
- UID:进程所属用户
- PID:进程ID号
- PPID:进程的父ID号(进程可以启动其它进程)
- C:进程的CPU占用率
- STIME:进程的启动时间
- TTY:启动此进程的终端序号,如显示?,表示非终端启动
- TIME:进程占用CPU的时间
- CMD:进程命令名称或路径
三、环境变量
1、环境变量是在操作系统运行时,记录一些关键性信息,用以辅助系统运行。环境变量的数据结构为键值对。通过命令env
查看。
2、如果要读取环境变量,可以直接通过${key}
读取,如echo $HOME
、echo $NAME
、echo $PWD
、echo $PATH
3、特别关注PATH,PATH记录了系统执行任何命令的搜索路径。
4、自定义环境变量
- 临时生效:命令
export key=value
,如设置export MYNAME=functionMC
,读取$MYNAME
- 针对当前用户永久生效:①编辑文件
vim ~/bashrc
,②输入export MYNAME=functionMC
,③生效文件source ~/bashrc
- 针对所有用户永久生效:①编辑文件
vim /etc/profile
,②输入export MYNAME=functionMC
,③生效文件source /etc/profile
5、自定义一个命令PATH
- 登陆root超级管理员
- 在当前目录(root)下,创建文件夹,
mkdir pathtest
- 切换到pathtest目录下,
cd pathtest
- 创建文件,
vim sayhello
,输入echo "hello world!"
- 修改文件sayhello的权限,
chmod 755 pathtest
- 通过路径可以访问
./sayhello
,但如果希望在任何路径,都可以通过sayhello
访问,则需要设置PATH - ①编辑文件
vim /etc/profile
,②输入export MYNAME=functionMC
,③生效文件source /etc/profile
- 尝试在任何路径直接访问
sayhello
,成功!
四、IP地址、端口、固定IP和主机名
1、查看本机IP地址
- 先安装
yum -y install net-tools
- 查看命令
ifconfig
2、特殊IP地址:
127.0.0.1
,指代本机0.0.0.0
,指代本机,或在一些IP地址限制中,表示所有IP,允许任意访问
3、主机名:
- 查看主机名:
hostname
- 修改主机名:
hostnamectl set-hostname abc
4、域名解析:
- 访问域名过程:检查
etc/hosts
文件,是否有域名的IP地址记录 > 如果无,访问公开的DNS服务器是否有记录 > 然后连接IP地址 - 通过修改hosts文件,可以控制域名解析。
- Windows系统也有这个文件,
C:\Windows\System32\drivers\etc\hosts
5、设置固定IP地址:详见Linux安装章节
五、软链接
1、通过软链接,可以将文件、文件夹链接到其它位置,类似于windows系统的快捷方式。
2、命令ln -s 源路径 目标路径
。
3、例子:ln -s /etc/xattr.conf ~xattr.conf
,结果在用户的home目录下,生成一个文件的软链接,如下图所示:
- 文件类型为l
- 显示链接的源路径
-> /etc/xattr.conf
六、日期时区
1、命令:date [-d] [+格式化字符串]
。格式化代码如下所示:
-
年,%Y
-
两位数年份:%y
-
月份:%m
-
日:%d
-
小时:%H
-
分钟:%M
-
秒:%S
-
从1970-01-01 00:00:00UTC至现在的秒数:%s
-
-d,用于日期计算。
+1 day
,表示加1天,还可以使用month、year、hour、minute、second等时间标记。 -
例①:
date +%Y-%m-%d
,结果2022-03-01 -
例②:
date -d "+1 day" +%Y-%m-%d
,结果2022-03-02
2、时间校准:
- 安装ntp:
yum -y install ntp
- 启动并设置开机自启:
systemctl start ntpd
,systemctl enable ntpd
。启动ntpd后,会自动进行联网校准。 - 手动校准:ntpdate -u ntp.aliyun.com
3、修改Linux时区:
- 如果显示时间不准确,极大可能显示为UTC时区,需要调整为东八区。
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
七、网络请求和下载
1、检测网络的链接情况:命令:ping [-c num] IP地址或网址或主机名
;例子:ping -c 3 baidu.com
,连接3次
2、文件下载器:命令:wget [-b] url
,-b选项表示后台下载;例子:wget -b http://www.xxx.com/abc.tar.gz
,后台下载
3、http网络请求:命令:curl [-O] url
,-O选项表示下载文件;例子:curl http://www.baidu.com
,返回网页内容
八、文件上传下载
1、方法①:通过终端SSH连接软件,如XShell等,通过拖拽方式直接上传下载文件
2、方法②:通过rz和sz:
- 安装lrzsz,
yum -y install lrzsz
- 上传命令:
rz
,弹出窗口选择需要上传的文件 - 下载命令:
sz 文件路径
,sz test.txt
,下载当前目录的test.txt
九、压缩和解压
1、压缩格式:
- zip:Linux、Windows和MacOS
- rar:Windows
- tar:文件以.tar结尾,Linux和MacOS常用,文件打包,几乎无压缩
- gzip:文件以.gzip结尾,Linux和MacOS常用,文件打包,压缩比大
2、tar和gzip压缩和解压:
- 命令:
tar [-c -v -x -f -z -C] 参数1 文件1...文件n
- -c,压缩
- -x,解压
- -v,显示进度
- -z,gzip模式,不使用就使用tar
- -f,要打包或解压的文件,必须在所有选项中位于最后一个
- -C,用于解压模式,选择解压目的地
- 纯打包:
tar -cvf test.tar 1.txt 2.txt 3.txt
,将三个文件1.txt、2.txt、3.txt,打包为test.tar文件 - 压缩打包:
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt
,使用gzip模式,将三个文件1.txt、2.txt、3.txt,压缩到test.tar.gz - 解压到当前目录:
tar -xvf test.tar
- 解压至指定目录:
tar -xvf test.tar -C /home/mc
- 以gzip模式解压:
tar -zxvf test.tar.gz -C /home/mc
2、zip/unzip压缩和解压:
- 压缩命令:
zip [-r] 参数1 文件1...文件n
。-r,被压缩内容包含文件夹时使用。例子:zip -r test.zip 1.txt test
- 解压命令:
unzip [-d] 参数
。-d,指定解压位置。例①:unzip test.zip
。例②:unzip test.zip -d /home/mc