1. Linux三种网络配置
1.1 桥接模式
桥接模式配置简单,但如果你的网络环境是ip资源很缺少或对ip管理比较严格的话。
注意:
A本机,A1 和 A2 是虚拟机,B 同事电脑
A可以与A1,A2互通,A1、A2 --> B 可以, B-> A1,A2可以
1.2 NAT模式
注意:
实际上VMware NetWork Adapter VMnet8的作用是为了实现虚拟机和主机之间相互通信!
NAT 网络地址转换: A可以和A1 A2互通,A1,A2 -> B可以,B -> A1,A2不行
1.3 Host-only
注意:
NAT和host-only不会占用一个ip地址,只能和你的本机进行通讯。NAT和host-only还有一个区别就是,host-only只能和你的本机进行通讯,不可以访问。
host-only(主机模式):A可以和A1,A2互通,A1,A2 -> B不可以,B-> A1,A2不行
实时效果反馈:
1. Linux系统重_______网络模式最安全。B
A. NAT B.主机 C.桥接 D.ssh
2. Linux系统中想要访问同事电脑虚拟机中的mysql服务使用______网络模式。C
A.NAT B.主机 C.桥接 D.ssh
2.文档归档篇
- 关于tar -zxf file.zip --strip-components=N -C targetFold
在使用tar命令解压文件时,--strip-components选项用于指定解压时要去掉的文件路径前缀的数量。
具体来说,--strip-components=N参数表示去掉压缩文件中的前N级目录。
举个例子,如果压缩文件中包含以下路径结构:
folder1/folder2/file.txt
如果我们使用tar -xf file.zip --strip-components=1 -C targetFold命令来解压文件,那么解压后
的文件路径将变为:
folder2/file.txt
这样就去掉了folder1这一级目录。通过使用--strip-components参数,可以方便地控制解压后文件的
目录结构,使得解压后的文件更符合我们的需求。
3.运维篇
1、top命令
top
# 作用:显示、管理执行中的程序
#语法:top -hv | -bcHiOSs -d secs -n max -u | U user -p pid(s) -o field -w [cols]
# 进程状态:
# * D:不可中断的睡眠状态
# R:运行时状态
# S: 睡眠态
# T: 被跟踪或已停止
# Z:僵尸态
# 常见用法:
top -c # 展示完整命令COMMAND
top -n 2 #设置更新次数(更新两次就退出)
top -d 3 指定更新周期(每隔3秒刷新一次)
top -p 139 查看指定进程的信息
top -Hp 139 #显示指定进程中线程的运行信息
# PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
# 进程号 用户 优先级 NICE优先级 虚拟内存 常驻内存 共享内存
# 进程状态 cpu时间百分比 物理内存百分比 cpu使用总时间 进程使用的命令
2、 ps命令
# 参数:
# -A或e:列出所有的行程
# -w:显示加宽可以显示更多的资讯
#-f “全格式”显示,返回的字段较多
# -a展示当前运行的所有程序,包括其他用户的程序
#用例:
ps -ef #全格式展示所有进程
ps -au #显示较详细的信息,比如进程占用cpu、内存。。
ps -aux # 显示所有包含其他使用者的行程
3、pgrep
# 根据条件查询进程PID信息
pgrep java # 展示命令行为java的进程的进程号
pgrep -a java # 查找命令行为java的进程,并列出完整命令行
pgrep -u root # 查询出用户root的所有进程号
pgrep -l java # 输出命令名称为java以及进程号
4、meminfo
#作用:查看内存信息
#使用:
cat /proc/meminfo
cat /proc/cpuinfo
MemTotal: 197807280 kB #总内存
MemFree: 530820 kB #空闲内存
MemAvailable: 8403296 kB #可用内存
Buffers: 0 kB #buffer使用内存
Cached: 174272716 kB #Cache使用的大小
SwapCached: 274636 kB #被高速缓冲存储用的交换空间大小
Active: 61843280 kB #活跃中的高速缓存存储器页面文件大小
Inactive: 125694436 kB # 不活跃中的高速缓存存储器页面文件大小
Active(anon): 59196916 kB
Inactive(anon): 121397588 kB
Active(file): 2646364 kB
Inactive(file): 4296848 kB
Unevictable: 8112 kB
Mlocked: 8112 kB
SwapTotal: 4194300 kB
SwapFree: 2077436 kB
Dirty: 156 kB
Writeback: 0 kB
AnonPages: 13013416 kB
Mapped: 163536812 kB
Shmem: 167323160 kB
Slab: 1905028 kB
SReclaimable: 1555320 kB
SUnreclaim: 349708 kB
KernelStack: 38896 kB
PageTables: 951360 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 103097940 kB
Committed_AS: 218848960 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 697644 kB
VmallocChunk: 34225784828 kB
Percpu: 11648 kB
HardwareCorrupted: 0 kB
AnonHugePages: 9488384 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 679216 kB
DirectMap2M: 8648704 kB
DirectMap1G: 193986560 kB
5、free
total used free shared buff/cache available
系统总内存量 已使用的内存量 空闲的内存量 被共享的内存量 被缓存的内存量 可用内存量,
free # 返回以字节为单位的内存使用情况
free -h # 返回以适合的单位汇报内存使用情况
num(used) = num(total) - num(free) - num(buff/cache)
- vmstat
#全称 virtual memory statistics(虚拟内存统计),可对操作系统的虚拟内存、进程、IO读写、CPU
- df
磁盘使用情况
df
df 文件或文件夹名称 -h #以合适的单位输出占用情况
- du
#展示目录或文件的大小
du 输出所有文件的大小以及名称
du -t 100m 大于100m的文件输出来
du -t -100m 小于100m的文件输出来
du -sh 文件夹 查看当前文件夹所占用的磁盘大小
- netstat
# 展示网络状态
netstat -a #展示所有的socket
netstat -p # 为socket展示PID或程序名称
netstat -u # 查看使用udp协议的网络信息
netstat -t # 查看使用tcp协议的网络信息
netstat -antp # 展示所有状态的tcp监听,并打印程序名称
- route
# 显示和操作路由表
- lsof
#列出所有打开的文件
lsof 1.txt # 查看哪些进程正在使用 1.txt
lsof +D test_dir #递归查询test_dir目录及文件的信息
lsof -c java # 查看java进程打开的文件
lsof -c java -c mysql # 查看java或mysql打开的文件
lsof -i # 查看所有的网络连接
lsof -i tcp # 查看所有列出的tcp连接
lsof -i udp #查看所有列出的udp连接
lsof -i:8080 #列出在使用8080端口
lsof -i tcp:8080 #列出在使用tcp协议的8080端口连接
12.ls / ll 及基础命令
ll -R / ls -lR # 列出当前目录和子目录的详细情况(-h)
mkdir -p /test/test1/child2 #创建多级目录
rmdir #删除目录
rmdir aaa
rmdir -p bbb/aaa #删除aaa目录后,如果bbb成为空目录,则连bbb也删除
touch aaa # 将aaa文件的访问时间及修改时间设置为当前时间,如果aaa不存在,则会创建这个文件
rm #删除文件或目录(一旦删除,无法恢复,务必小心使用)
rm test.txt#删除test.txt文件,如果使用了目录,提示无法删除
rm -r test_dir #递归删除test_dir目录及内容
mv filename1 newName2 #重命名为newName2
mv aaa bbb#将aaa目录放入bbb目录,如果bbb不在,则将aaa重命名为bbb
tree #以树状列出目录的内容
pstree #将所有行程以树形图显示
pstree -a # 展示该进程的完整指令及参数
shutdown -h now #立即关机
shutdown -h 10 #10分钟后关机
shutdown -r now #立即重启
reboot #重启
export #设置或显示环境变量
grep test *txt #在当前目录下,查找后缀为txt的文件中,包含test字符串的文件,并打印字符串
所在行
grep -r test /opt #在/opt目录下,包含test字符串的文件,并打印字符串所在行
grep -v test 1.txt #查找1.txt中不包含test的行
cat -n 1.txt > 2.txt # 为1.txt添加行号,并输出到2.txt中
find . -name *.txt #查找当前目录下的所有txt文件
find / -type f -size +50M #查找机器中所有大于50m的文件
find / -type f -size +50M -exec du -h {} \;# 查找出机器所有小于50m的文件,并用du -h展示出来
- 操作系统发行版本
# 查看操作系统发行版本
# @不同的Linux发行版本(CentOS与Debian)、以及不同版本(CentOS 6.x与CentOS7.x)查看版本的方式
# 不同,下面所有的方式,总有一款适合你的环境。
# 方法1: 通过/etc/目录下的文件去看:
/etc/os-release
/etc/system-release
/etc/redhat-release
/etc/centos-release
/etc/issue
方法二:执行 lsb_release -a
14、uname
uname -a # 打印所有信息
uname -s # 打印内核名称
uname -n # 打印网络节点主机名
uname -r # 打印内核版本
uname -v # 打印内核版本
uname -m # 打印硬件名称
uname -p # 打印处理器类型
uname -i # 打印硬件平台
uname -o # 打印操作系统
15、 查看用户
id 展示用户的、以及所属群组的ID
w:展示当前登录系统的用户信息
who:
who -a 展示所有的登录信息,包括退出的
who am i:展示自己是谁登录进去的
who -q:显示登录系统的用户名和总人数、
whoami: 展示当前登录的用户名
last:
last 展示最近登录的用户 以及登录时段
last username root展示用户root的登录信息
16.查看cpu相关
cat /proc/cpuinfo | grep "physical id" | sort | uniq #查看系统有几颗物理CPU
(结果有几行说明有几个物理CPU)
cat /proc/cpuinfo | grep "cpu cores" | uniq #查询系统每颗物理CPU的核心数
#查看物理CPU核心是否启用超线程技术。如果启用此技术,那么每个物理核心又可分为两个逻辑处理器
cat /proc/cpuinfo | grep -e "cpu cores" -e "siblings" | sort | uniq
# 查询系统具有多少个逻辑CPU
cat /proc/cpuinfo | grep "processor" | wc -l
16.sysstat:
iostat:io信息
mpstat:cpu信息
pidstat:进程信息
学习地址: https://www.linuxidc.com/Linux/2019-08/160082.htm
17:xxtop
htop:增强版top
iotop:监控io
iftop:系统流量和带宽
学习地址: cnblogs.com/xuanbjut/p/11531394.html