网络安全linux系统
2024-01-04 14:48:25 0 举报
AI智能生成
网络安全linux系统是一种特别设计的操作系统,旨在提高计算机网络的安全性。它基于Linux内核,包含了一系列强化的安全功能和工具,以保护系统免受网络攻击和恶意软件的侵害。这些工具包括防火墙、入侵检测系统、安全审计工具等。此外,网络安全linux系统还提供了细粒度的访问控制,实现了对系统资源的有效管理,限制了非授权用户的访问权限。它的模块化设计允许用户根据需求灵活配置和扩展安全功能,以满足不同场景的安全需求。总之,网络安全linux系统为计算机网络提供了强大的安全保障,使得网络环境更加稳定、可靠。
作者其他创作
大纲/内容
linux入门与初探
什么是Linux系统
和Windows不同的就是,Linux是一套开放源代码程序并可以自由传播的类Unix操作系统,Linux系统是UNIX的一种版本。
什么是操作系统
操作系统 (Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行
Linux系统组成
1.Linux内核
内核是操作系统的核心,提供很多基本功能,Linux内核的模块分为以下几个部分:存储管理进程管理、文件系统、设备管理和驱动等。
2.shell
shell提供了用户与内核进行交互操作的一种接口。它接受用户输入的命令并把它送入内核去执行,是一个命令解释器。Shell也是一种编程2语言它具有普通编程语言的很多特点。
3.文件系统
文件系统是文件存放在磁盘等存储设备上的组织方法。Linux系统能支持多种目前流行的文件系统,如EXT3、EXT4、 XFS等。
4.应用程序
标准的Linux系统一般都有一套应用程序的程序集,它包括文本编辑器、编程语言、XWindow、办公套件、Internet工具和数据库等
Linux操作语法
Linux命令操作格式
命令 【参数选项 】【文件路径】
1.语法格式有三部分,三部分之间必须由空格隔开
2.参数选项表示使用一个命令特有的功能
完整路径不能带有空格,中括号[]表示可选,即参数选项,文件或路径是可选的,
linux关机重启注销命令
shutdown -h now 立即关机
Shutdown -h +1 或 shutdown -h 11:00 一分钟后或十一点关机
Init 0 立刻关机
Reboot 立刻重启
Shutdown -r now 立刻重启
Shutdown -r +1 1分钟重启
Init 6 立刻重启
Logout 注销退出当前用户窗口
Exit 注销退出当前用户窗口或ctrl+d
Shutdown -h +1 或 shutdown -h 11:00 一分钟后或十一点关机
Init 0 立刻关机
Reboot 立刻重启
Shutdown -r now 立刻重启
Shutdown -r +1 1分钟重启
Init 6 立刻重启
Logout 注销退出当前用户窗口
Exit 注销退出当前用户窗口或ctrl+d
Linux文件及目录管理命令基础
切换路径
功能:传递命令从当前工作目录切换到指定得到目录
语法:cd[option][dir]
Cd[选项] [目录]
Cd[选项] [目录]
选项:~ //当前用户的家目录,直接输入cd与cd~结果一样,都是进入当前用户的家目录
.. //切换到当前目录的上一级
- //切换到当前用户上一次所在目录的路径 / //直接切换到根下
.. //切换到当前目录的上一级
- //切换到当前用户上一次所在目录的路径 / //直接切换到根下
列出目录下内容及属性
Ls功能:列出目录的内容及其内容属性信息
语法:ls[option][file]
Ls[选项][文件或目录]
Ls[选项][文件或目录]
选项:
-l //使用长格式列出文件及目录信息
-a //显示目录下所有文件,包括隐藏文件,带“.”的文件为隐藏文件
-i //显示inode节点信息
--full-time //以完整的时间格式输出
备注:ls -l =ll
-l //使用长格式列出文件及目录信息
-a //显示目录下所有文件,包括隐藏文件,带“.”的文件为隐藏文件
-i //显示inode节点信息
--full-time //以完整的时间格式输出
备注:ls -l =ll
创建目录,创建文件
Mkdir功能:创建目录
Mkdir [选项][目录]
选项:
-p //递归创建目录(递归的意思就是父,子,子子等等)
-p //递归创建目录(递归的意思就是父,子,子子等等)
touch功能:创建新的空文件;改变已有文件的时间戳属性
语法:touch[optiong][file]
Touch[选项][文件]
选项:-t //设置文件的时间属性,时间格式为(年月日十分,秒)
选项:-t //设置文件的时间属性,时间格式为(年月日十分,秒)
查看目录结构与所在路径
Tree功能:以树形结构列出指定目录下的所以内容,包括所有文件,子目录及
子目录里的目录和文件
子目录里的目录和文件
语法:tree[optiong][directory]
Tree[选项][目录]
选项:-d 只显示目录;-f标记文件类型,为不同的文件类型,添加不同符号
-l level 遍历目录的最大层数,level为大于0的正整数
选项:-d 只显示目录;-f标记文件类型,为不同的文件类型,添加不同符号
-l level 遍历目录的最大层数,level为大于0的正整数
Pwd功能:显示当前工作目录的绝对路径
语法:pwd[option]
Pwd[选项] //此命令一般直接使用
删除目录,删除文件
rm功能:删除一个文件或目录
语法:rm[option][file]
Rm [选项][文件或目录]
选项:
-r递归删除目录及内容
-f强制删除
-i在删除前确认
选项:
-r递归删除目录及内容
-f强制删除
-i在删除前确认
拷贝,剪切
Cp功能:复制文件或目录
语法:cp[option][source][dest]
Cp[选项][源文件][目标文件]
选项:-r递归复制目录,即复制目录下的所有层级的子目录及文件
选项:-r递归复制目录,即复制目录下的所有层级的子目录及文件
Mv功能:移动和重命名文件
语法:mv[option][source][dest]
Mv[选项][源文件][目标文件]
选项:-f若目标文件已存在,不会询问而直接覆盖
-i若目标文件已存在,就会询问是否覆盖
-n不覆盖已存在的文件
选项:-f若目标文件已存在,不会询问而直接覆盖
-i若目标文件已存在,就会询问是否覆盖
-n不覆盖已存在的文件
查看命令与帮助
Man功能:
[home] //跳转到最后一页
[end] //跳转到最后一页
[end] //跳转到最后一页
/字符串 //向下依次查找想要的内容
?字符串 //向下依次查找想要的内容
n,N //当使用/或?时,n会继续当前搜索方向的下一个匹配的查询;N则
进行相反方向的查询。
Q //结束本次帮助
?字符串 //向下依次查找想要的内容
n,N //当使用/或?时,n会继续当前搜索方向的下一个匹配的查询;N则
进行相反方向的查询。
Q //结束本次帮助
Help:使用获取版帮助信息,命令--help
使用info获取帮助信息,主要用来查看命令的使用帮助和man类似
使用方法:info 命令
使用方法:info 命令
技巧
.使用tab自动补齐2.相对路径是从当前目录过指定的目录开始,绝对路径是从/根开始
文件内容编辑处理
Vim三种模式1:普通模式,插入模式,末行模式
Vim file //光标置于第一行行首
Vim file +n //光标位于第n行
Vim file + //光标至于末尾行的行首
Vim file + /pattern //光标置于与pattern匹配的字符串处,pattern为任意字符串
Vim file +n //光标位于第n行
Vim file + //光标至于末尾行的行首
Vim file + /pattern //光标置于与pattern匹配的字符串处,pattern为任意字符串
普通模式进入插入模式有四种方式:aios
插入模式进入普通模式:esc建
普通模式进入末行模式输入:建
末行模式进入普通模式:输入内容一次esc,未输入内容两次esc
插入模式进入普通模式:esc建
普通模式进入末行模式输入:建
末行模式进入普通模式:输入内容一次esc,未输入内容两次esc
普通模式下
光标定位
Hjkl光标上下左右移动
0$跳到光标所在行的行首和行尾
ggG跳到首行和尾行
Hjkl光标上下左右移动
0$跳到光标所在行的行首和行尾
ggG跳到首行和尾行
文本编辑
y复制 yy(以行为单位)
d删除dd(以行为单位)
p粘贴
u撤销
y复制 yy(以行为单位)
d删除dd(以行为单位)
p粘贴
u撤销
末行模式下
语法:范围s/old/new/选项
例:1,6s/root/agan把1-6行的root替换为agan
:%s/root/agan/g %表示全文g表示全局(全文只替换行首,全局替换所有)
:6,$s/root/agan/g $表示最后一行
:1,9 s/^#//1-9行的开头#替换为空,批量取消注释
:% s/^/#/给所有行加上#注释掉
设置环境
临时设置:
:set nu设置行号 :se nonu取消设置行号
永久的设置环境:
~/.vimrc //影响当前用户
/etc/vimrc //影响所有系统用户
例:1,6s/root/agan把1-6行的root替换为agan
:%s/root/agan/g %表示全文g表示全局(全文只替换行首,全局替换所有)
:6,$s/root/agan/g $表示最后一行
:1,9 s/^#//1-9行的开头#替换为空,批量取消注释
:% s/^/#/给所有行加上#注释掉
设置环境
临时设置:
:set nu设置行号 :se nonu取消设置行号
永久的设置环境:
~/.vimrc //影响当前用户
/etc/vimrc //影响所有系统用户
读入文件/写文件
:w存储当前文件
:w/angan6.txt另存为/angan6.txt
:1,3w agan6.txt 另存1-3行,生成新文件为angan6.txt
:5 r/etc/hosts读入文件到第五行后
:w存储当前文件
:w/angan6.txt另存为/angan6.txt
:1,3w agan6.txt 另存1-3行,生成新文件为angan6.txt
:5 r/etc/hosts读入文件到第五行后
Set nu
备注:把环境设置写入到配置文件末尾处。
如果需要批量选择,批量删除,批量注释时进入可视化模式进入可视化模式的多种方法:
Ctrl+v进入可视块模式;v进入可视模式;v进入到可视行模式
备注:一种块模式的可视模式,比如你想复制一块文字,不是一行,也不是某一块。
可视块模式
批量注释:
选择块--->I--->插入字符---->esc
块修改:选择块,r输入替换的字符
块删除:选择块,d
块复制:选择块y
备注:把环境设置写入到配置文件末尾处。
如果需要批量选择,批量删除,批量注释时进入可视化模式进入可视化模式的多种方法:
Ctrl+v进入可视块模式;v进入可视模式;v进入到可视行模式
备注:一种块模式的可视模式,比如你想复制一块文字,不是一行,也不是某一块。
可视块模式
批量注释:
选择块--->I--->插入字符---->esc
块修改:选择块,r输入替换的字符
块删除:选择块,d
块复制:选择块y
Vimtutor
Vimtutor是vim自带程序
英文版:vimtutor
中文版:vimttor zh
查看文件内容的命令:cat,more,less,head,tail
英文版:vimtutor
中文版:vimttor zh
查看文件内容的命令:cat,more,less,head,tail
查看文件的命令
Cat查看文件内容;more,less分页查看文件内容;head查看文件头部内容
;tail查看文件尾部内容
;tail查看文件尾部内容
Cat功能:1.查看文件内容2.编辑新文件3.非交互地编辑追加内容到文件尾部4.把多个文件合并成一个新文件5.清空文件内容
语法格式:cat[option][file]
Cat[选项][文件]
-n 从1开始对所有输出的内容按行编号,不忽略空白行
-b 忽略显示空白行,只显示有内容的行 备注:使用>>符号,可实现非交互式地编辑追加内容到文件尾部。
语法格式:cat[option][file]
Cat[选项][文件]
-n 从1开始对所有输出的内容按行编号,不忽略空白行
-b 忽略显示空白行,只显示有内容的行 备注:使用>>符号,可实现非交互式地编辑追加内容到文件尾部。
范例:cat >> 1.txt<<EOF
>ni
>hao
>ma
>EOF
备注:使用>>符号,可实现非交互式地编辑追加内容到文件尾部。
范例:把多个文件合并成一个新文件
[rott@agan zzh]#cat zzh mch > 520
范例:清空文件内容
[root@aganzzh]#cat /dev/null > 1.txt
备注:这里不能多个清空
>ni
>hao
>ma
>EOF
备注:使用>>符号,可实现非交互式地编辑追加内容到文件尾部。
范例:把多个文件合并成一个新文件
[rott@agan zzh]#cat zzh mch > 520
范例:清空文件内容
[root@aganzzh]#cat /dev/null > 1.txt
备注:这里不能多个清空
- More功能:功能类似于cat,cat命令将整个文件内容一次性显示在屏幕上
- More则会一页一页显示
- 语法格式:more[option][file]
- More[选项][文件]
- 常用项说明:+num从第num行开始显示;-num定义屏幕显示hangshu
- More常用操作命令:v调用vi编辑器;b返回上一屏;=输出当前行的行号
- /查找的文本查找指定文本;q退出more的动作
范例:more命令后面不接任何参数
More /etc/profile
范例:定义屏幕的行数
More -2/etc/profile
范例:从指定的行数开始显示内容
More +5 /etc/profile注:从profile的第5行往下开始显示
范例:分页显示目录下的内容
ls /etc/|more-10
More /etc/profile
范例:定义屏幕的行数
More -2/etc/profile
范例:从指定的行数开始显示内容
More +5 /etc/profile注:从profile的第5行往下开始显示
范例:分页显示目录下的内容
ls /etc/|more-10
Less功能
类似more,可以分页显示文件内容,但比more更强大
语法格式:
Less[option][file]
Less[选项][文件]
-i 搜索时忽略大小写
-N在每行前输出行号
-p后面艮被搜索的字符
!命令调用shell,并执行命令
类似more,可以分页显示文件内容,但比more更强大
语法格式:
Less[option][file]
Less[选项][文件]
-i 搜索时忽略大小写
-N在每行前输出行号
-p后面艮被搜索的字符
!命令调用shell,并执行命令
范例:在/etc/profile搜索单词mall
;less -p mall /目录/文件
Less -ip mail /目录/文件
范例搜索字母a的同时显示行号
Less -N-p a /目录/文件
范例:分页显示目录下的内容
Ls /etc/|less
;less -p mall /目录/文件
Less -ip mail /目录/文件
范例搜索字母a的同时显示行号
Less -N-p a /目录/文件
范例:分页显示目录下的内容
Ls /etc/|less
Head功能:显示文件头部内容,默认输出文件开头10行
语法:head[option][file]
Heda[选项][文件]
-n 行数 指定显示的行数
语法:head[option][file]
Heda[选项][文件]
-n 行数 指定显示的行数
范例:显示文件的前5行
Head -5 /etc/profile或head -n 5 /agan/1.txt
最后十行不输出
Head -n -10 /agan/1.txt
Head -5 /etc/profile或head -n 5 /agan/1.txt
最后十行不输出
Head -n -10 /agan/1.txt
tail[option][file]
Tail [选项][文件]
-n行数//指定显示的行数
-F//实时输出文件变化后追加的数据
范例:显示文件末尾5行的内容
Tail -n 5 /root/zzh
Tail [选项][文件]
-n行数//指定显示的行数
-F//实时输出文件变化后追加的数据
范例:显示文件末尾5行的内容
Tail -n 5 /root/zzh
范例:通过tail命令实时监控日志的变化(生产中常用的场景是监控日志文件)
Tail -F /var/log/secure
备注:使用xshell软件开启两个窗口,一个窗口执行此命令,一个窗口使用普通用户远程登录,远程登录成功后,看监控着的那个窗口,即可看事实监控的日志信息
Tail -F /var/log/secure
备注:使用xshell软件开启两个窗口,一个窗口执行此命令,一个窗口使用普通用户远程登录,远程登录成功后,看监控着的那个窗口,即可看事实监控的日志信息
查看不同的日志文件
Rsyslogd:系统的日志程序记录大部分操作系统相关的日志记录。
各类程序以自己的方式记录日志
各类程序以自己的方式记录日志
/var/log/messages //系统住日志文件
/var/log/secure //认证,安全
/var/log/maillog //跟邮件postdix相关
/var/log/dmesg //和系统相关
/var/log/mysqld.Log //mysol
/var/log/lastlog //所有用户登录情况
文件解压与压缩
Tar命令功能:打包压缩,解压文件
语法格式:tar [option][file]
Tar[选项][文件或目录]
z //有gzip属性的
c//创建新的tar包
v//显示详细的tar命令执行过程
f//指定压缩文件的名字
x//解压tar包
c//指定解压的目录路径
--exclude=PATTERN//打包时排除不需要的文件和目录
语法格式:tar [option][file]
Tar[选项][文件或目录]
z //有gzip属性的
c//创建新的tar包
v//显示详细的tar命令执行过程
f//指定压缩文件的名字
x//解压tar包
c//指定解压的目录路径
--exclude=PATTERN//打包时排除不需要的文件和目录
Tar -cvf jpg.Tar *jpg//将目录所有jpg文件打包成jpg.tar
Tar -czf jpg.tar.gz*.jpg //将目录里所有jpg文件打包成jpg.tar.gz
Tar -cvf jpg.tar*.jpg --exclude=6.jpg//排除6.jpg不进行压缩
Tar -cvf jpg.tar*jpg --exclude={2,6}.jpg//排除连续2-6之间不进行压缩
范例:
Tar -xvf jpg.tar//解压tar包
Tar -xzvf jpg.tar.gz //解压tar.gz包
Tar -xvf jpg.tar-C/agan //解压到指定路径
Unzip agan.zip //解压缩*.zip的文件
Tar -czf jpg.tar.gz*.jpg //将目录里所有jpg文件打包成jpg.tar.gz
Tar -cvf jpg.tar*.jpg --exclude=6.jpg//排除6.jpg不进行压缩
Tar -cvf jpg.tar*jpg --exclude={2,6}.jpg//排除连续2-6之间不进行压缩
范例:
Tar -xvf jpg.tar//解压tar包
Tar -xzvf jpg.tar.gz //解压tar.gz包
Tar -xvf jpg.tar-C/agan //解压到指定路径
Unzip agan.zip //解压缩*.zip的文件
文件查找与过滤
表达式一起使用,功能更加强大.
语法格式:
Grep [option][pattern][file]
Grep[选项][匹配模式][查找的文件]
常用选项说明:
-v 显示不匹配的行,或者说排除某些行;-n显示匹配行及行号;-c只统计匹配的行数;-i不区分大小写;-E使用扩展的egrep命令
语法格式:
Grep [option][pattern][file]
Grep[选项][匹配模式][查找的文件]
常用选项说明:
-v 显示不匹配的行,或者说排除某些行;-n显示匹配行及行号;-c只统计匹配的行数;-i不区分大小写;-E使用扩展的egrep命令
Find查看语法:
Find 在哪里查找路径 文件类型 要查找文件还是目录 “名字”
例子:find / -type f -name “文件名字”
例:按文件名查找文件:
Find /etc -name “文件名字”
Find /etc -iname “文件名字”
按文件类型查找文件:
Find /dev -type f //f普通
Find /dev -type d //d目录
按文件大小:
Find /etc -size +5M
Find /etc -size 5M
Find /etc -size -5M
Find /etc -size +5M -ls//找到的处理ls
按时间找(atime ,mtime,ctime)
Find /home -user angan
Find /home -group hr
Find /home -user agan -group hr
Find 在哪里查找路径 文件类型 要查找文件还是目录 “名字”
例子:find / -type f -name “文件名字”
例:按文件名查找文件:
Find /etc -name “文件名字”
Find /etc -iname “文件名字”
按文件类型查找文件:
Find /dev -type f //f普通
Find /dev -type d //d目录
按文件大小:
Find /etc -size +5M
Find /etc -size 5M
Find /etc -size -5M
Find /etc -size +5M -ls//找到的处理ls
按时间找(atime ,mtime,ctime)
Find /home -user angan
Find /home -group hr
Find /home -user agan -group hr
系统目录结构与重要系统文件详解
Linux系统目录结构特点
1.一切从根开始,“/”是所有目录的起点(顶点),根下面的目录是一个有层次的树状结构。
2.访问根目录,也可能是在访问完全不同的分区或不同的磁盘;分区或磁盘是挂载在根上的。
备注:如果不挂载是看不到入口的,是不能被正常使用的,如果要访问设备,就必须为设备开一个入口,这个入口就是挂载点,挂载点实质就是一个目录,开入口的过程,就是将挂载点和磁盘设备关联。
3.相对路径与绝对路径:绝对路径是指以根为起始点开始的,例如:/tmp;相对路径是指相对于非根的路径,路径开头没有‘/’。列如etc/sysconfig等
目录层次标准fhs(filesystem hierarchy s'tan'dard),是linux的目录规范标准。
参考:
/bin//sbin/存放都是我们排除用的命令,如ls,tree,man等,为什么这些命令可以直接使用,是因为我们有一个环境变量path。/sbin/目录下面一般是root用户使用的,普通用户没有权限使用1,普通用户用/bin/下面的,root用户也可以使用。
/boot/:存放系统启动相关的文件,不能删除。
/dev/:是linux特有的设备文件,比如光驱,硬盘,鼠标等等。
/etc/:存放系统配置文件的目录
/home/:普通用户的家目录。
/lib/ /lib64/:存放系统库文件的目录,很多命令都是依赖库文件,比如ls久依赖一些库文件,有点像windows里面的.Dll文件。
/media/:媒介目录,默认为空,插入u盘会自动存放在media目录下。
/mnt/:临时挂载目录,默认为空,可以将光驱和硬盘临时挂在/mnt/下用。
/opt/:默认为空,会把orade安装在这个目录下
/Proc/:存放系统启动的一些过程,它会生成一个pid文件;如果工作中发现某个进程不太熟悉,我们可以找到这个进程的pid,通过pid去查看进程具体在哪里运行
/root/:root的家目录,存放一些管理员用户的配置文件和管理内容。比如/root/ssh/authorized_keys,如果一个普通用户存放公钥,它必须在普通用户的家目录下创建一个ssh/authorized_keys
/run/:进程产生的临时文件,所以一重启就会消失。
/src/:默认为空,服务产生的一些文件。
/sys/:存放系统内核相关的文件。
/tmp/:系统的临时文件的目录,权限很大,任何一个用户都能操作,但是它有一个特殊权限,用户只能操作用户自己的文件和目录。
/usr/:存放用户的一些文件。
/var/:存放系统产生的一些系统日志,系统进程,服务,一些临时文件等。/var/log/messages:系统总日志文件。
2.访问根目录,也可能是在访问完全不同的分区或不同的磁盘;分区或磁盘是挂载在根上的。
备注:如果不挂载是看不到入口的,是不能被正常使用的,如果要访问设备,就必须为设备开一个入口,这个入口就是挂载点,挂载点实质就是一个目录,开入口的过程,就是将挂载点和磁盘设备关联。
3.相对路径与绝对路径:绝对路径是指以根为起始点开始的,例如:/tmp;相对路径是指相对于非根的路径,路径开头没有‘/’。列如etc/sysconfig等
目录层次标准fhs(filesystem hierarchy s'tan'dard),是linux的目录规范标准。
参考:
/bin//sbin/存放都是我们排除用的命令,如ls,tree,man等,为什么这些命令可以直接使用,是因为我们有一个环境变量path。/sbin/目录下面一般是root用户使用的,普通用户没有权限使用1,普通用户用/bin/下面的,root用户也可以使用。
/boot/:存放系统启动相关的文件,不能删除。
/dev/:是linux特有的设备文件,比如光驱,硬盘,鼠标等等。
/etc/:存放系统配置文件的目录
/home/:普通用户的家目录。
/lib/ /lib64/:存放系统库文件的目录,很多命令都是依赖库文件,比如ls久依赖一些库文件,有点像windows里面的.Dll文件。
/media/:媒介目录,默认为空,插入u盘会自动存放在media目录下。
/mnt/:临时挂载目录,默认为空,可以将光驱和硬盘临时挂在/mnt/下用。
/opt/:默认为空,会把orade安装在这个目录下
/Proc/:存放系统启动的一些过程,它会生成一个pid文件;如果工作中发现某个进程不太熟悉,我们可以找到这个进程的pid,通过pid去查看进程具体在哪里运行
/root/:root的家目录,存放一些管理员用户的配置文件和管理内容。比如/root/ssh/authorized_keys,如果一个普通用户存放公钥,它必须在普通用户的家目录下创建一个ssh/authorized_keys
/run/:进程产生的临时文件,所以一重启就会消失。
/src/:默认为空,服务产生的一些文件。
/sys/:存放系统内核相关的文件。
/tmp/:系统的临时文件的目录,权限很大,任何一个用户都能操作,但是它有一个特殊权限,用户只能操作用户自己的文件和目录。
/usr/:存放用户的一些文件。
/var/:存放系统产生的一些系统日志,系统进程,服务,一些临时文件等。/var/log/messages:系统总日志文件。
网卡配置文件
TYPE="Ethernet" //上网类型,目前基本都是以太网
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" /网卡获取ip地址的方式(dhcp ,static,none)
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes" //是否支持ip6
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable- privacy"
NAME="ens33" //网卡名称
UUID=" fb5061ed- ed8f- 4711- 95e7- 1ebb9857b425"//网卡唯一标识
DEVICE="ens33" //网卡驱动名称
ONBOOT="yes" //开机或者重启是否启动网卡
"ifcfg- ens33" 15L, 310C //IP
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" /网卡获取ip地址的方式(dhcp ,static,none)
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes" //是否支持ip6
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable- privacy"
NAME="ens33" //网卡名称
UUID=" fb5061ed- ed8f- 4711- 95e7- 1ebb9857b425"//网卡唯一标识
DEVICE="ens33" //网卡驱动名称
ONBOOT="yes" //开机或者重启是否启动网卡
"ifcfg- ens33" 15L, 310C //IP
网络管理
Ifconfig配置ip地址(临时)
Ifconfig 网卡名ip netmask 子网掩码
例子:ifconfig ens33 192.168.1.1 netmask 255.255.255.0
Ifconfig 网卡名ip netmask 子网掩码
例子:ifconfig ens33 192.168.1.1 netmask 255.255.255.0
修改网络配置文件配置ip地址
网卡信息文件 /etc/sysconfig/network-scripts
Vi /etc/sysconfig/network-scripts/ifcfg-ens33
Ipaddr=192.168.146.181 #ip地址
Netmask=255.255.255.0 #子网掩码
Gatway=192.168.146.2 #网关
把bootproto=“static” #是否自动获取ip(取值范围 none static dhcp)
网卡信息文件 /etc/sysconfig/network-scripts
Vi /etc/sysconfig/network-scripts/ifcfg-ens33
Ipaddr=192.168.146.181 #ip地址
Netmask=255.255.255.0 #子网掩码
Gatway=192.168.146.2 #网关
把bootproto=“static” #是否自动获取ip(取值范围 none static dhcp)
网卡配置路径:/etc/sysconig/network-scripts/ficfg—ess33
查看网络状态信息
Ss命令用来查看网络状态信息,包括tcp,udp连接,端口等,它的优点是能够快显示更多有关网络链接状态
语法:ss命令语法格式
Ss[option][filer]
Ss[选项][过滤器]
示例:
Ss -l 显示本地打开的所有端口
Ss -t -a 显示所以tcp socket
Ss -u-a 显示所有的udp socekt
Ss -s 列出当前已经连接,关闭,等待tcp连接
Ss -l 列出当前监听端口
Ss -pl 列出每个进程名及其监听的端口
Ss src 192.168.60.200:http 列出至192.168.60.200,80端口
备注:使用IP地址筛选格式:ss src ADDERSS_PATTERN
SRC :表示来源
ADDRESS_PATTERN:表示地址规则
语法:ss命令语法格式
Ss[option][filer]
Ss[选项][过滤器]
示例:
Ss -l 显示本地打开的所有端口
Ss -t -a 显示所以tcp socket
Ss -u-a 显示所有的udp socekt
Ss -s 列出当前已经连接,关闭,等待tcp连接
Ss -l 列出当前监听端口
Ss -pl 列出每个进程名及其监听的端口
Ss src 192.168.60.200:http 列出至192.168.60.200,80端口
备注:使用IP地址筛选格式:ss src ADDERSS_PATTERN
SRC :表示来源
ADDRESS_PATTERN:表示地址规则
文件类型和文件属性
硬链接与软链接
文件操作命令
Ln命令 :
-用途:ln命令用来为文件创建连接,连接类型分硬连接和符号连接两种,默认的连接类型是硬连接,如果要创建符号连接必须使用“-s”选项。格式:ln 【-s】源文件或目录。。。。链接文件或目标目录
常用命令选项
- -s:建立符号链接文件(省略此项则建立硬链接)
关于链接文件
-符号链接:指向原始文件所在的路径,又称为软链接
-硬链接:指向原始文件对应的数据存储位置
-不能为目录建立硬链接文件
-硬链接与原始文件必须位于同一分区(文件系统)中
-用途:ln命令用来为文件创建连接,连接类型分硬连接和符号连接两种,默认的连接类型是硬连接,如果要创建符号连接必须使用“-s”选项。格式:ln 【-s】源文件或目录。。。。链接文件或目标目录
常用命令选项
- -s:建立符号链接文件(省略此项则建立硬链接)
关于链接文件
-符号链接:指向原始文件所在的路径,又称为软链接
-硬链接:指向原始文件对应的数据存储位置
-不能为目录建立硬链接文件
-硬链接与原始文件必须位于同一分区(文件系统)中
硬链接与软链接作用
链接分为两种
1.硬链接是通过索引节点进行的链接,在同一个分区/文件系统中,inode号码相同的文件一定是硬链接文件;硬链接文件就是文件的另一个入口;可以通过给文件设置硬链接文件,防止重要文件被误删;只针对文件,不针对目录,硬链接的作用:为重要文件做一个快照。
2.软连接或符合链接,符号链接文件也被称为软连接文件,类似于windows中的快捷方式,它本身没有内容,指向实体文件;软链接可以针对文件也可以针对目录
软链接读取数据的原理步骤:
1.通过自身的inode,读到软链接信息,通过指向读到原始文件名,然后读到原始文件的inode
2.通过原始文件的inode,读到原始文件的内容(block)
硬链接语法:ln 原始文件 目标文件
软连接 ln -s 原始文件 目标文件 (目标文件不能事先存在,软链接文件的类型为l“L”)
链接分为两种
1.硬链接是通过索引节点进行的链接,在同一个分区/文件系统中,inode号码相同的文件一定是硬链接文件;硬链接文件就是文件的另一个入口;可以通过给文件设置硬链接文件,防止重要文件被误删;只针对文件,不针对目录,硬链接的作用:为重要文件做一个快照。
2.软连接或符合链接,符号链接文件也被称为软连接文件,类似于windows中的快捷方式,它本身没有内容,指向实体文件;软链接可以针对文件也可以针对目录
软链接读取数据的原理步骤:
1.通过自身的inode,读到软链接信息,通过指向读到原始文件名,然后读到原始文件的inode
2.通过原始文件的inode,读到原始文件的内容(block)
硬链接语法:ln 原始文件 目标文件
软连接 ln -s 原始文件 目标文件 (目标文件不能事先存在,软链接文件的类型为l“L”)
Linux属性概括:
查看文件所有属性:ls -hill 或ll -hi
-i显示文件索引节点号(inode)。一个索引节点代表一个文件;
-h人类友好显示
-i显示文件索引节点号(inode)。一个索引节点代表一个文件;
-h人类友好显示
常见扩展名:
.rpm 系统二进制软件
.tar.gz 压缩包文件(tgz\.tar\.gz也是缩包)
.sh shell脚本文件,通过shell语言开发的程序
.conf 系统服务的配置文件
- 表示普通文件(包含纯文本,二进制,数据) 使用echo\touch\cat创建的都是普通文本(查看:ll -a或ls -la)
d 代表目录 使用mkdir创建目录 (查看:ll -a ls -la ls-F
.rpm 系统二进制软件
.tar.gz 压缩包文件(tgz\.tar\.gz也是缩包)
.sh shell脚本文件,通过shell语言开发的程序
.conf 系统服务的配置文件
- 表示普通文件(包含纯文本,二进制,数据) 使用echo\touch\cat创建的都是普通文本(查看:ll -a或ls -la)
d 代表目录 使用mkdir创建目录 (查看:ll -a ls -la ls-F
普通文件详解
普通文件特性:“_”符号开头,分为三大类
纯文本:此种文件可以通过cat查看
二进制:/bin/sbin 下的命令属于二进制
数据格式文件:有些程序在运行时,需要读取特定的文件,那些特定文件成为数据格式文件。
例如:用户登录把登陆数据记录在/var/log/wtmp文件
#file /var/log/wtmp //使用file命令这个文件的类型
/var/Log/wtmp:data
纯文本:此种文件可以通过cat查看
二进制:/bin/sbin 下的命令属于二进制
数据格式文件:有些程序在运行时,需要读取特定的文件,那些特定文件成为数据格式文件。
例如:用户登录把登陆数据记录在/var/log/wtmp文件
#file /var/log/wtmp //使用file命令这个文件的类型
/var/Log/wtmp:data
正则表达式与三剑客之实践
什么是正则表达式
简单的说,正则表达式就是处理字符串的方法,它是以行为单位进行字符串的处理行为,正
则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找,删除,替换某特定字符串的
处理程序。
只要工具程序支持正则表示法,就可以使用。例如 grep, awk ,sed 工具使用正则表示法最常
见;cp, ls 等指令不支持正则表示法,所以就只能使用 bash 自己本身的通配符。
简单的说,正则表达式就是处理字符串的方法,它是以行为单位进行字符串的处理行为,正
则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找,删除,替换某特定字符串的
处理程序。
只要工具程序支持正则表示法,就可以使用。例如 grep, awk ,sed 工具使用正则表示法最常
见;cp, ls 等指令不支持正则表示法,所以就只能使用 bash 自己本身的通配符。
什么是 awk?
awk 是一种编程语言,用于在 linux/unix 下对文本和数据进行处理。它支持用户自定义函数
和动态正则表达式等先进功能,是 linux/unix 下的一个强大编程工具。
awk 的处理方式
awk 一次处理一行内容 awk 对每行可以切片处理
切片处理:分成一块儿一块儿的。
AWK 是一种处理文本文件的语言。它将文件作为记录序列处理。在一般情况下,文件内容
的每行都是一个记录。每行内容都会被分割成一系列的域,因此,我们可以认为一行的第一
个词为第一个域,第二个词为第二个,以此类推。AWK 程序是由一些处理特定模式的语句
块构成的。AWK 一次可以读取一个输入行。对每个输入行,AWK 解释器会判断它是否符合
程序中出现的各个模式,并执行符合的模式所对应的动作。
awk 缺省的行分隔符是换行,缺省的列分隔符是连续的空格和 Tab,但是行分隔符和列分隔符
都可以自定义。
awk 实际上是一门很复杂的脚本语言,还有像 C 语言一样的分支和循环结构,但是基本用法和sed类似
awk 是一种编程语言,用于在 linux/unix 下对文本和数据进行处理。它支持用户自定义函数
和动态正则表达式等先进功能,是 linux/unix 下的一个强大编程工具。
awk 的处理方式
awk 一次处理一行内容 awk 对每行可以切片处理
切片处理:分成一块儿一块儿的。
AWK 是一种处理文本文件的语言。它将文件作为记录序列处理。在一般情况下,文件内容
的每行都是一个记录。每行内容都会被分割成一系列的域,因此,我们可以认为一行的第一
个词为第一个域,第二个词为第二个,以此类推。AWK 程序是由一些处理特定模式的语句
块构成的。AWK 一次可以读取一个输入行。对每个输入行,AWK 解释器会判断它是否符合
程序中出现的各个模式,并执行符合的模式所对应的动作。
awk 缺省的行分隔符是换行,缺省的列分隔符是连续的空格和 Tab,但是行分隔符和列分隔符
都可以自定义。
awk 实际上是一门很复杂的脚本语言,还有像 C 语言一样的分支和循环结构,但是基本用法和sed类似
逻辑判断式
~ 匹配正则表达式
!~ 匹配正则表达式取反
== 等于
!= 不等于
< 小于
> 大于
~ 匹配正则表达式
!~ 匹配正则表达式取反
== 等于
!= 不等于
< 小于
> 大于
AWK,数据工具(类似于grep,比grep强大),属数据处理引擎,基于模式匹配检查输入文本,逐行处理并输出,通常用在shell脚本中,获取指定的数据,单独使用时,可队文本数据做统计
格式
格式1 前置命令 | awk {选项}‘条件{编辑命}’
格式2 awk 【选项】‘条件{编辑命令}’文件。。
编辑指定如果包含多条语句时,可以用分号分隔,处理文本时,若未指定分隔符,则默认将空格,制表符等作为分隔符。Print是最常见的指令。
选项
-F :指定分隔符,可省略(默认空格或tab位)
-V :调用外部shell变量variable
格式
格式1 前置命令 | awk {选项}‘条件{编辑命}’
格式2 awk 【选项】‘条件{编辑命令}’文件。。
编辑指定如果包含多条语句时,可以用分号分隔,处理文本时,若未指定分隔符,则默认将空格,制表符等作为分隔符。Print是最常见的指令。
选项
-F :指定分隔符,可省略(默认空格或tab位)
-V :调用外部shell变量variable
什么是sed?
Sed是一个流处理编辑器,是操作,过滤和转换文本内容的强大工具。
Sed是一个流处理编辑器,是操作,过滤和转换文本内容的强大工具。
Sed是一种流编辑器,它是文本处理中非常哇赛的工具,能够完美的配合正则表达式使用。
1.处理时,把当前处理的行存储在临时缓存区中,称为模式空间(pttern space)
2.接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。
3.接着处理下一个行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。
4.Sed主要用来自动编辑一个或多个文件;简化对文件反复操作;编写转换程序等。
命令行格式
Sed [选项][sed内置命令字符][输入文件]选项说明
-n取消默认的sed的输出
-i 直接修改文件内容,而不是输出到终端
Sed以行为为单位处理文件。Awk与sed相比不仅能以行为单位,还能以列为单位处理文件
Sed常见内置命令字符
p 打印相关的行,配合-n选项使用
a 在行后面另起一行
i 在行前面另起一行插入行
c 替换指定的行
d 删除指定的行
S 替换匹配的字符串
1.处理时,把当前处理的行存储在临时缓存区中,称为模式空间(pttern space)
2.接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。
3.接着处理下一个行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。
4.Sed主要用来自动编辑一个或多个文件;简化对文件反复操作;编写转换程序等。
命令行格式
Sed [选项][sed内置命令字符][输入文件]选项说明
-n取消默认的sed的输出
-i 直接修改文件内容,而不是输出到终端
Sed以行为为单位处理文件。Awk与sed相比不仅能以行为单位,还能以列为单位处理文件
Sed常见内置命令字符
p 打印相关的行,配合-n选项使用
a 在行后面另起一行
i 在行前面另起一行插入行
c 替换指定的行
d 删除指定的行
S 替换匹配的字符串
Sed的高级命令
{} 支持多个sed命令({command1;command2},多个sed命令用“;”分开)
n 读取下一个输入行
& 与符号,替换固定的字符串
R/w 复制指定文件插入到匹配行/复制匹配行拷贝到指定文件里
q 退出sed
{} 支持多个sed命令({command1;command2},多个sed命令用“;”分开)
n 读取下一个输入行
& 与符号,替换固定的字符串
R/w 复制指定文件插入到匹配行/复制匹配行拷贝到指定文件里
q 退出sed
用户管理知识
用户及用户配置文件详解
Linux系统中角色分为三类:
1.管理员用户
默认是root用户,它的uid和gid均为0,系统安装完成后自动生成的,默认通过它就可以登录系统,拥有最高的管理权限。
2.普通用户
由系统管理员root创建的,创建完成后可以登录系统,但默认无法创建,修改和删除任何管理员下的文件;只能在自己的家创建,删除,修改文件。Uid从1000-65535
3.系统用户(或虚拟用户)
安装系统后默认生成的用户,大多数不能登录系统,但它们是系统正常运行不可缺少的,
它们的存在主要是为了方便系统管理,满足相应的系统进程对文件所属用户的要求;
Uid从1-999
1.管理员用户
默认是root用户,它的uid和gid均为0,系统安装完成后自动生成的,默认通过它就可以登录系统,拥有最高的管理权限。
2.普通用户
由系统管理员root创建的,创建完成后可以登录系统,但默认无法创建,修改和删除任何管理员下的文件;只能在自己的家创建,删除,修改文件。Uid从1000-65535
3.系统用户(或虚拟用户)
安装系统后默认生成的用户,大多数不能登录系统,但它们是系统正常运行不可缺少的,
它们的存在主要是为了方便系统管理,满足相应的系统进程对文件所属用户的要求;
Uid从1-999
Linux用户及用户组常用命令详解
用户的配置文件
/etc/passwd :存储用户信息,每一行表示一个用户信息,有多少行就表示多少个用户信息。
Root : x : 0 :0 :/root :/bin/bash
此文件由7个字段的数据组成,字段之间用“:”分隔,格式如下:
1.用户名:2.密码:3.用户标识号uid:4.组标识号gid:5.个人资料:6.主目录:7.命令解释器
/etc/shadow :存储用户密码信息文件
Agan :!!:17749:0:99999:7:::
此文件按由9个字段的数据组成,字段之间用“:”分隔,格式如下:
1.用户名2.密码3.最近改动密码的日期4.密码不可被更动的天数5.密码需要重新变更的天数6.密码需要变更期限前的警告期限
7.密码过期的怒限时间8.账号失效日期9.保留
与创建用户相关的目录
/etc/skel
注释:此目录用来存放新用户需要的所有基础环境变量文件的目录。
~】¥ rm -f .basd* //删除用户家目录下的环境变量后,退出
-bash-4.1¥ //重新登录出现此故障
/etc/passwd :存储用户信息,每一行表示一个用户信息,有多少行就表示多少个用户信息。
Root : x : 0 :0 :/root :/bin/bash
此文件由7个字段的数据组成,字段之间用“:”分隔,格式如下:
1.用户名:2.密码:3.用户标识号uid:4.组标识号gid:5.个人资料:6.主目录:7.命令解释器
/etc/shadow :存储用户密码信息文件
Agan :!!:17749:0:99999:7:::
此文件按由9个字段的数据组成,字段之间用“:”分隔,格式如下:
1.用户名2.密码3.最近改动密码的日期4.密码不可被更动的天数5.密码需要重新变更的天数6.密码需要变更期限前的警告期限
7.密码过期的怒限时间8.账号失效日期9.保留
与创建用户相关的目录
/etc/skel
注释:此目录用来存放新用户需要的所有基础环境变量文件的目录。
~】¥ rm -f .basd* //删除用户家目录下的环境变量后,退出
-bash-4.1¥ //重新登录出现此故障
模拟故障与解决故障
模拟故障
1.创建一个新的普通用户,在普通用户的家目录执行此命令:~ rm -rf .Bash*
2.Exit //退出登录后重新登录一次,发现故障
注释:如果模拟故障不成功,原因分析:1.vim /etc/profile 2.注释掉PS=那行
3.source /etc/profile 让配置文件生效
解决故障:
Cp /etc/skel/.bash* ~ //把/etc/skel/.bash* 下的所有.bash*文件拷贝到用户的家目录,重新登录解决故障。
模拟故障
1.创建一个新的普通用户,在普通用户的家目录执行此命令:~ rm -rf .Bash*
2.Exit //退出登录后重新登录一次,发现故障
注释:如果模拟故障不成功,原因分析:1.vim /etc/profile 2.注释掉PS=那行
3.source /etc/profile 让配置文件生效
解决故障:
Cp /etc/skel/.bash* ~ //把/etc/skel/.bash* 下的所有.bash*文件拷贝到用户的家目录,重新登录解决故障。
用户相关命令
Useradd创建用户
语法:useradd 【option】【login】
Useradd 【选项】【用户名】
选项:
-n 不创建以用户名为名的组
-c 创建用户时,添加个人信息
-u 用户id值,这个值必须是唯一的
-s 用户登录后使用的shell
-g 指定用户对应的组,对应的组必须在系统中存在
Usermod修改系统已经存在的用户信息
语法:usermod 【option】【login】
Usermod 【选项】【用户名】
选项:
-c 修改用户的个人信息,同useradd的-c功能
-g 修改用户对应的用户组,同useradd的-d功能
-s 修改用户登录后使用的shell名称,同useradd的-s功能
-u 修改用户的uid ,同useradd的-u功能
-l 修改用户的名称
Userdel删除用户
Userdel 【option】【login】
Userdel 【选项】【用户名】
选项:
-f 强制删除用户
-r 删除用户的同时,删除与用户相关的所有文件(包含邮箱信息)
修改用户密码的命令passwd
语法passwd 【option】【username】
Passwd 【选项】【用户名】
选项:
- stdin //从标准输入读取密码字符串
Useradd创建用户
语法:useradd 【option】【login】
Useradd 【选项】【用户名】
选项:
-n 不创建以用户名为名的组
-c 创建用户时,添加个人信息
-u 用户id值,这个值必须是唯一的
-s 用户登录后使用的shell
-g 指定用户对应的组,对应的组必须在系统中存在
Usermod修改系统已经存在的用户信息
语法:usermod 【option】【login】
Usermod 【选项】【用户名】
选项:
-c 修改用户的个人信息,同useradd的-c功能
-g 修改用户对应的用户组,同useradd的-d功能
-s 修改用户登录后使用的shell名称,同useradd的-s功能
-u 修改用户的uid ,同useradd的-u功能
-l 修改用户的名称
Userdel删除用户
Userdel 【option】【login】
Userdel 【选项】【用户名】
选项:
-f 强制删除用户
-r 删除用户的同时,删除与用户相关的所有文件(包含邮箱信息)
修改用户密码的命令passwd
语法passwd 【option】【username】
Passwd 【选项】【用户名】
选项:
- stdin //从标准输入读取密码字符串
组的特点
Linux系统中的用户组(group)就是具有相同特征的用户的集合;
有时我们需要让多个用户具有相同的权限,就要创建组
将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段;一个用户可以加入到多个组
组的配置文件:
/etc/group : 主要存储相关信息的文件
Agan : x : 500 :
此文件由4个字段的数据组成,字段之间用“:”格式如下:
1.组名2.组密码3.组id(GID)4.组成员
/etc/gshadow :主要用来存储组密码信息
Agan : ! : :
此文件由4个字段的数据组成,字段之间用“:”分隔,格式如下:
1.组名2.组密码3.组管理4.用户组成员
组相关命令
添加用户组命令groupadd
语法:groupadd 【option】【group】
group add 【选项】【用户组】
选项:
-g gid 指定用户组的gid,gid唯一不能为负数
-f 新增一个组,强制覆盖一个已存在的组,gid,组成员不会改变。
将已存在的用户加入到组中的命令gpasswd
语法:gpasswd 【option】【user】【group】
Gpasswd 【选项】【用户名】【组名】
选项:
-a 添加一个用户到组,可以追加到组
-M 添加多个用户到组,覆盖之前的组成员
-d 从组删除用户
修改组信息的命令groupmod
语法:groupmod 【option】【group】
Groupmod 【选项】【组名】
选项:
-n 修改组名
-g 修改gid
Groupmod -n 新名 旧名
Groupmod -g gid 组名
删除组的命令groupdel
语法:groupdel 【group】
Guroup 【组名】
Id 命令查看用户uid,gid
Linux系统中的用户组(group)就是具有相同特征的用户的集合;
有时我们需要让多个用户具有相同的权限,就要创建组
将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段;一个用户可以加入到多个组
组的配置文件:
/etc/group : 主要存储相关信息的文件
Agan : x : 500 :
此文件由4个字段的数据组成,字段之间用“:”格式如下:
1.组名2.组密码3.组id(GID)4.组成员
/etc/gshadow :主要用来存储组密码信息
Agan : ! : :
此文件由4个字段的数据组成,字段之间用“:”分隔,格式如下:
1.组名2.组密码3.组管理4.用户组成员
组相关命令
添加用户组命令groupadd
语法:groupadd 【option】【group】
group add 【选项】【用户组】
选项:
-g gid 指定用户组的gid,gid唯一不能为负数
-f 新增一个组,强制覆盖一个已存在的组,gid,组成员不会改变。
将已存在的用户加入到组中的命令gpasswd
语法:gpasswd 【option】【user】【group】
Gpasswd 【选项】【用户名】【组名】
选项:
-a 添加一个用户到组,可以追加到组
-M 添加多个用户到组,覆盖之前的组成员
-d 从组删除用户
修改组信息的命令groupmod
语法:groupmod 【option】【group】
Groupmod 【选项】【组名】
选项:
-n 修改组名
-g 修改gid
Groupmod -n 新名 旧名
Groupmod -g gid 组名
删除组的命令groupdel
语法:groupdel 【group】
Guroup 【组名】
Id 命令查看用户uid,gid
Linux用户身份切换
Su的作用是变更为其他使用者的身份,超级用户除外,需要建入该使用者的密码
Su切换用户却不切换工作环境,su - 同时切换用户与工作环境。
# su agan
# su - agan
Su切换用户却不切换工作环境,su - 同时切换用户与工作环境。
# su agan
# su - agan
为普通用户授权
在企业中往往需要让普通用户具备指定的权限,不会轻易把管理员随意赋予,所以为普通用户提权就特别重要
使用sudo命令为普通用户提权,sudo作用通过配置文件来限制用户的权限,可以让普通用户在执行指定的命令或程序时,拥有超级用户的权限。
1.当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断用户是否有执行sudo的权限
2.确认用户具有可执行sudo的权限后,让用户输入自己的密码确认
3.若密码输入成功,则开始执行sudo后续的命令
4.root执行sudo时不需要输入密码(因为有sudoers文件中有配置root ALL=(ALL)ALL这样一条规则)
使用sudo命令为普通用户提权,sudo作用通过配置文件来限制用户的权限,可以让普通用户在执行指定的命令或程序时,拥有超级用户的权限。
1.当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断用户是否有执行sudo的权限
2.确认用户具有可执行sudo的权限后,让用户输入自己的密码确认
3.若密码输入成功,则开始执行sudo后续的命令
4.root执行sudo时不需要输入密码(因为有sudoers文件中有配置root ALL=(ALL)ALL这样一条规则)
Linux文件详解
Ugo权限详解
什么是ugo权限
Linux系统中常见权限为:rwx
给谁赋予权限?普通用户(u),组(g),其他人(o)=ugo
如何赋予权限?
权限的赋予有两种方法:字符型(rwx)和数值型(421)
赋予权限的命令:chomd查看ugo权限的命令:ll
Chmod的语法如下:
Chmod 给谁赋予什么权限 权限赋给的对象
Chmod命令举例如下:
Chmod u+x 文件名 //属主增加执行
Chmod a+rwx 文件名 //所有人读写执行
Chmod a= - 文件名 //所有人没有权限
Chmod ug=rw,o=r 文件名 //属主属组等于读写,其他人只读
Chmod 664 文件名 //使用数值法赋予权限
Linux系统中常见权限为:rwx
给谁赋予权限?普通用户(u),组(g),其他人(o)=ugo
如何赋予权限?
权限的赋予有两种方法:字符型(rwx)和数值型(421)
赋予权限的命令:chomd查看ugo权限的命令:ll
Chmod的语法如下:
Chmod 给谁赋予什么权限 权限赋给的对象
Chmod命令举例如下:
Chmod u+x 文件名 //属主增加执行
Chmod a+rwx 文件名 //所有人读写执行
Chmod a= - 文件名 //所有人没有权限
Chmod ug=rw,o=r 文件名 //属主属组等于读写,其他人只读
Chmod 664 文件名 //使用数值法赋予权限
给指定的一个用户或指定的一个组,赋予权限时,就要修改目录或文件的所属主或所属组
修改所属主和所属组使用命令:chown
Chown的用法:
chown所属的用户或组 目录或文件
Chown的用户仅有三种:(3种方法根据需求选择)
1.chown 用户名 文件名或目录名 //修改文件或目录的所属用户
2.chown :组名 文件名或目录名 //修改文件或目录的所属组
3.chown 用户名: 组名 文件名或目录名 //修改文件或目录的所属用户和所属组
只要需要把父项权限或父项所属主或所属组传递时,都可以使用-R参数,实现传递。-R(传递权限所属的主或组) //只能用于目录
示例:
Chmod -R 770 目录 //目录下和目录的子文件,都被赋予770的权限,如果没有—R ,只有目录被赋予770的权限,子对象保持自己的权限。
chmod -R 用户名 目录名 //目录和目录下的子文件,所属主都被更改,如果不加-R,所属主只修改当前目录。
修改所属主和所属组使用命令:chown
Chown的用法:
chown所属的用户或组 目录或文件
Chown的用户仅有三种:(3种方法根据需求选择)
1.chown 用户名 文件名或目录名 //修改文件或目录的所属用户
2.chown :组名 文件名或目录名 //修改文件或目录的所属组
3.chown 用户名: 组名 文件名或目录名 //修改文件或目录的所属用户和所属组
只要需要把父项权限或父项所属主或所属组传递时,都可以使用-R参数,实现传递。-R(传递权限所属的主或组) //只能用于目录
示例:
Chmod -R 770 目录 //目录下和目录的子文件,都被赋予770的权限,如果没有—R ,只有目录被赋予770的权限,子对象保持自己的权限。
chmod -R 用户名 目录名 //目录和目录下的子文件,所属主都被更改,如果不加-R,所属主只修改当前目录。
特殊权限
特殊权限有t和s权限
t权限时当有最高权限时,也不能删除我的文件,只有所属的主人可以删除我的文件,t权限仅能给目录赋予。
s权限是通过修改二进制文件,更改普通用户的权限。s权限只能赋予系统内的二进制文件。
示例:让普通用户默认不能修改自己的密码
Chmod u-s /usr/bin/passwd
t权限时当有最高权限时,也不能删除我的文件,只有所属的主人可以删除我的文件,t权限仅能给目录赋予。
s权限是通过修改二进制文件,更改普通用户的权限。s权限只能赋予系统内的二进制文件。
示例:让普通用户默认不能修改自己的密码
Chmod u-s /usr/bin/passwd
acl高级权限
Acl设置基本权限:可以是多个用户,多个组和其他人
赋予ACL权限使用:setfacl命令 查看acl权限使用:getfacl命令
设置acl权限:
setfacl -m u:agan:rw 文件名 //增加用户agan权限
Setfacl -m g:hr:r 文件名 //给hr组赋权限
Setfacl -m o::- 文件名 //其他人没有权限。注: “:” 表示没有特指其他人
查看acl权限:
ll /abc/test.Txt
带有+号,表示设置了acl权限
Getfacl /gj/test.txt //查看gj目录下test.txt文件的acl权限
删除acl权限:
Setfacl -x u:agan 文件名 //删除用户a'gan的acl权限
Setfacl -x g:hr 文件名 //删除组hr的acl权限
Setfacl -b ftp //删除所有acl权限
Setfacl -b -R ftp //删除abc目录以及下面的子目录,子文件的acl权限
临时降低用户或组(除属组和其他人)的权限:(针对目录),mask权限用户临时降低用户或组的权限
Setfacl -m m::rx ftp //权限被降为rx权限
设置默认继承权限:(针对目录)
Setfacl -m d:u:agan:rwx ftp//在ftp目录在新建文件时,文件权限默认被继承下去
备注:d“针对新建的文件生效,对已有的文件不生效
赋予ACL权限使用:setfacl命令 查看acl权限使用:getfacl命令
设置acl权限:
setfacl -m u:agan:rw 文件名 //增加用户agan权限
Setfacl -m g:hr:r 文件名 //给hr组赋权限
Setfacl -m o::- 文件名 //其他人没有权限。注: “:” 表示没有特指其他人
查看acl权限:
ll /abc/test.Txt
带有+号,表示设置了acl权限
Getfacl /gj/test.txt //查看gj目录下test.txt文件的acl权限
删除acl权限:
Setfacl -x u:agan 文件名 //删除用户a'gan的acl权限
Setfacl -x g:hr 文件名 //删除组hr的acl权限
Setfacl -b ftp //删除所有acl权限
Setfacl -b -R ftp //删除abc目录以及下面的子目录,子文件的acl权限
临时降低用户或组(除属组和其他人)的权限:(针对目录),mask权限用户临时降低用户或组的权限
Setfacl -m m::rx ftp //权限被降为rx权限
设置默认继承权限:(针对目录)
Setfacl -m d:u:agan:rwx ftp//在ftp目录在新建文件时,文件权限默认被继承下去
备注:d“针对新建的文件生效,对已有的文件不生效
进程掩码的作用
1.新建文件,新建目录的权限由系统默认权限和默认权限掩码共同确定。
2.Linux系统中目录的最大权限是777,文件最大权限是666
3.默认权限掩码告诉系统当创建一个文件或目录时不应该赋予那些权限。
示例:修改shell umask 值(永久)
Umask 000
修改shell umask值(永久)
Vi /etc/bashrc
Source /etc/bashrc
Vim /etc/profile
Source /etc/profile
备注:修改普通用户的掩码权限
2.Linux系统中目录的最大权限是777,文件最大权限是666
3.默认权限掩码告诉系统当创建一个文件或目录时不应该赋予那些权限。
示例:修改shell umask 值(永久)
Umask 000
修改shell umask值(永久)
Vi /etc/bashrc
Source /etc/bashrc
Vim /etc/profile
Source /etc/profile
备注:修改普通用户的掩码权限
进程管理和软件管理
什么是进程
进程是已启动的可执行程序的运行实例,进程有以下组成部分:
已分配内存的地址空间;安全属性;程序代码的一个或多个执行线程,多个线程可以构成一个进程,多个进程构成一个程序;进程状态
程序:二进制文件,例如:/usr/sbin/httpd,进程:是程序运行的过程,是动态的,有生命周期及运行状态。
进程与程序是有区别的,进程不是程序,虽然它由程序产生,程序只是一个静态的命令集合,而进程是一个随时都可能发生变化的,动态的,使用系统运行资源的程序,而一个程序可以启动多个进程。
已分配内存的地址空间;安全属性;程序代码的一个或多个执行线程,多个线程可以构成一个进程,多个进程构成一个程序;进程状态
程序:二进制文件,例如:/usr/sbin/httpd,进程:是程序运行的过程,是动态的,有生命周期及运行状态。
进程与程序是有区别的,进程不是程序,虽然它由程序产生,程序只是一个静态的命令集合,而进程是一个随时都可能发生变化的,动态的,使用系统运行资源的程序,而一个程序可以启动多个进程。
pa查看进程
ps -aux 查看所有进程
Ps -aux | grep httpd //查看指定的一个进程,例如:httpd
备注:
-u 显示进程的详细信息,包括cpu和内存使用率
-a 显示终端上的所有进程,包括其他用户的进程;
-x 显示没有控制终端的进程
Ps - aux
User pid %cpu %mem vsz rss tty stat start time command
1.user 进程所有者;2.pid进程号;3.%cpu 占用的cpu使用率;4.%mem 占用的内存使用率;5.vsz占用的虚拟内存大小;6.rss占用的内存大小;7.tty终端的次设备号码;8.stat该进程的状态:d不可中断的休眠 (通常表示该进程正在进行i/o动作)r正在执行中;s休眠状态;t暂停状态;z不存在但暂时无法消除;w没有足够的内存分页可分配;<高优先顺内的进程;n低优先顺序的进程;l有内存分页分配并锁在内存内。
9.start进程开始时间;10.time执行的时间;11.command所执行的命令
使用pgrep命令。Pgrep能查找当前正在运行的进程并列出符合条件的进程id。
Pgrep -u root sshd //查找指定用户指定进程sshd的pid号
Pgrep sshd //指定进程为sshd
Pidof sshd //指定进程为sshd
Pstree //查看进程树
Ps -aux | grep httpd //查看指定的一个进程,例如:httpd
备注:
-u 显示进程的详细信息,包括cpu和内存使用率
-a 显示终端上的所有进程,包括其他用户的进程;
-x 显示没有控制终端的进程
Ps - aux
User pid %cpu %mem vsz rss tty stat start time command
1.user 进程所有者;2.pid进程号;3.%cpu 占用的cpu使用率;4.%mem 占用的内存使用率;5.vsz占用的虚拟内存大小;6.rss占用的内存大小;7.tty终端的次设备号码;8.stat该进程的状态:d不可中断的休眠 (通常表示该进程正在进行i/o动作)r正在执行中;s休眠状态;t暂停状态;z不存在但暂时无法消除;w没有足够的内存分页可分配;<高优先顺内的进程;n低优先顺序的进程;l有内存分页分配并锁在内存内。
9.start进程开始时间;10.time执行的时间;11.command所执行的命令
使用pgrep命令。Pgrep能查找当前正在运行的进程并列出符合条件的进程id。
Pgrep -u root sshd //查找指定用户指定进程sshd的pid号
Pgrep sshd //指定进程为sshd
Pidof sshd //指定进程为sshd
Pstree //查看进程树
动态查看进程top
Top -u user1 //查看指定用户user1的进程
Top -b -n 2 > top.txt //将2次top信息写入到文件
注:-n2 表示更新两次退出;-b 以批处理模式显示程序信息
信号控制进程
常用信号kill -l //列出所以支持的信号
Top -b -n 2 > top.txt //将2次top信息写入到文件
注:-n2 表示更新两次退出;-b 以批处理模式显示程序信息
信号控制进程
常用信号kill -l //列出所以支持的信号
进程管理实例
1.useradd u1
2.Su -u1
3.Su root
4.Ps -aux //查看u1进程(u1有两个进程,一个为bash进程,想要删除用户,需要把两个进程杀死后才能删除)
5.Kill -9 pid号(查看两个进程的pid号)
实例2:
Useradd u1
Su -u1
Ps -aux
Kill -9 pid号(查看两个进程的pid号)
2.Su -u1
3.Su root
4.Ps -aux //查看u1进程(u1有两个进程,一个为bash进程,想要删除用户,需要把两个进程杀死后才能删除)
5.Kill -9 pid号(查看两个进程的pid号)
实例2:
Useradd u1
Su -u1
Ps -aux
Kill -9 pid号(查看两个进程的pid号)
软件包概述
主要提供三种格式的包:rpm格式,二进制格式,源码格式
Rpm格式:例libjpeg-devel-6b-33.x86_64.rpm //rpm格式很好区分,使用rpm/yum命令进行安装
Rpm包默认安装路径如图所示
/etc/ 配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/share/doc 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置
源码包安装在指定位置中,一般是/usr/local/软件名/
Rpm安装
Rpm -lvh rpm软件包名
软件包的升级基本命令格式:rpm -Uvh 包文件名
Rpm参数说明:- i 安装软件;-v 表示在安装过程中显示详细信息;-h 表示显示水平进度条;-U 升级安装;-e 表示删除;-a 显示所有的软件包
额外选项:--nomd5 //不检验软件包的签名 --force //强制安装软件包 --nodeps //忽略依赖关系。
软件包卸载:rpm -e rpm包文件名 例子:rpm -e ntfs-3g --nodeps
软件包查询:rpm -qa 查询单个软件包:rpm -qa 包名
示例:rpm -qa | wc -l //统计软件包的安装个数
/etc/ 配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/share/doc 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置
源码包安装在指定位置中,一般是/usr/local/软件名/
Rpm安装
Rpm -lvh rpm软件包名
软件包的升级基本命令格式:rpm -Uvh 包文件名
Rpm参数说明:- i 安装软件;-v 表示在安装过程中显示详细信息;-h 表示显示水平进度条;-U 升级安装;-e 表示删除;-a 显示所有的软件包
额外选项:--nomd5 //不检验软件包的签名 --force //强制安装软件包 --nodeps //忽略依赖关系。
软件包卸载:rpm -e rpm包文件名 例子:rpm -e ntfs-3g --nodeps
软件包查询:rpm -qa 查询单个软件包:rpm -qa 包名
示例:rpm -qa | wc -l //统计软件包的安装个数
Yum管理rpm包
自动解决包的依赖关系
Yum ,中文名shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并安装,可以自动处理依赖性关系,并且一次安装所以依赖的软件包,无须繁琐地一次次下载安装。
Yum clean all //清空缓存及其它文件
Yum makecache //清空缓存
Yum repolist //查询可用的源
Yum list mysql-server //查询包是否安装
Yum info mysql //查询包的信息
Yum search mysql //查询包名和描述中带有mysql 字符串的包
Yum provides php //查新指定的文件属于哪个包,没有安装也可以查询
Yum -y install mysql-server //安装包
Yum -y install 网站名/安装包//例如指明包的所在网址来安装包
Yum -y reinstall mysql-server //重新安装
Yum -y update mysql //升级单个包
Yum -y remove mysql-server //卸载包
自动解决包的依赖关系
Yum ,中文名shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并安装,可以自动处理依赖性关系,并且一次安装所以依赖的软件包,无须繁琐地一次次下载安装。
Yum clean all //清空缓存及其它文件
Yum makecache //清空缓存
Yum repolist //查询可用的源
Yum list mysql-server //查询包是否安装
Yum info mysql //查询包的信息
Yum search mysql //查询包名和描述中带有mysql 字符串的包
Yum provides php //查新指定的文件属于哪个包,没有安装也可以查询
Yum -y install mysql-server //安装包
Yum -y install 网站名/安装包//例如指明包的所在网址来安装包
Yum -y reinstall mysql-server //重新安装
Yum -y update mysql //升级单个包
Yum -y remove mysql-server //卸载包
二进制包:mysql-3.23.58-pc-linux-i686.tar.gz //二进制格式的包名字很长,有版本号,适应平台,适应的硬件类型等,已编译好,解压后即可使用,不需要安装。
源码包:php-5.2.14.tar.gz//而源代码仅仅就是一个版本号的tar包。源码包安装步骤;
1.解压2. ./configure 3.make 4. make install
备注:源码包严格来讲是三大步骤,分别为2/3/4
注: ./configure用来检查环境变量及配置编译选项的;make是用来将源代码编译成二进制文件的;而make install则会将make编译出来的文件安装到指定位置(或默认位置)。
1.解压2. ./configure 3.make 4. make install
备注:源码包严格来讲是三大步骤,分别为2/3/4
注: ./configure用来检查环境变量及配置编译选项的;make是用来将源代码编译成二进制文件的;而make install则会将make编译出来的文件安装到指定位置(或默认位置)。
计划任务
计划任务的作用
计划任务的作用
计划任务相当于闹钟
什么时候需要使用定时任务?企业工作中经常需要将某些命令和脚本放入计划任务中自动执行;企业中需要定期执行服务器之间的数据同步操作;
在linux中有两种使用方法:1.一次性at计划任务2.周期性执行cron计划任务;常用的为周期性计划任务。
计划任务相当于闹钟
什么时候需要使用定时任务?企业工作中经常需要将某些命令和脚本放入计划任务中自动执行;企业中需要定期执行服务器之间的数据同步操作;
在linux中有两种使用方法:1.一次性at计划任务2.周期性执行cron计划任务;常用的为周期性计划任务。
计划任务使用方法
Crontab命令作用周期性执行任务
周期性计划任务创建步骤:
1.使用vim先创建一个任务文件
文件格式:分钟 小时 日期 月份 星期几 执行命令
2.文件创建完成后,(crontab 文件名)执行编辑的文件。
3.查看等待执行的任务(crontab -l)查询任务
4.如不想执行时(crontab -r)删除任务
计划任务实例:
在计划时间内,把/etc/yum.conf文件,拷贝到根下
Cat cont.txt
03 17 23 10 2 cp /etc/yum.conf/
Crontab -l
03 17 23 10 2 cp /etc/yum.conf/
周期性计划任务创建步骤:
1.使用vim先创建一个任务文件
文件格式:分钟 小时 日期 月份 星期几 执行命令
2.文件创建完成后,(crontab 文件名)执行编辑的文件。
3.查看等待执行的任务(crontab -l)查询任务
4.如不想执行时(crontab -r)删除任务
计划任务实例:
在计划时间内,把/etc/yum.conf文件,拷贝到根下
Cat cont.txt
03 17 23 10 2 cp /etc/yum.conf/
Crontab -l
03 17 23 10 2 cp /etc/yum.conf/
数据存储管理与性能测试
磁盘分区分为两种形式
MBR(master boot record
MBR分区的限制:
只支持4个主分区,总分区数不能超过15个;
只支持2tb以下的硬盘,不支持数据的扩容。
只支持4个主分区,总分区数不能超过15个;
只支持2tb以下的硬盘,不支持数据的扩容。
gpt(guid partition table)
Gpt分区的限制:
没有主分区的限制,支持2tb以上的硬盘;支持数据的扩容。
Linux系统下磁盘管理步骤:分区-格式化-挂载
查看新设备是否发现
Ll /dev/sd* //查看kernel识别到的硬件设备
Fdisk -l //查看现有磁盘分区列表
没有主分区的限制,支持2tb以上的硬盘;支持数据的扩容。
Linux系统下磁盘管理步骤:分区-格式化-挂载
查看新设备是否发现
Ll /dev/sd* //查看kernel识别到的硬件设备
Fdisk -l //查看现有磁盘分区列表
分区工具fdisk用法介绍,命令参数介绍
p打印分区表
n新建一个分区
d,退出不保存
w 把分区写进分区表,保存并退出。
Fdisk /dev/sd* /要区分的磁盘
n新建一个分区
d,退出不保存
w 把分区写进分区表,保存并退出。
Fdisk /dev/sd* /要区分的磁盘
Linux下常用文件系统
格式化:mkfs.文件系统 具体的磁盘
例子:mkfs.ext4 /dev/sdc1
例子:mkfs.ext4 /dev/sdc1
挂载与卸载磁盘
Mount /dev/sdc1 /mnt/disk1
Mount 查看挂载信息
Umount /dev/sdc1 //卸载
查看磁盘使用情况
Df-h //查看磁盘使用情况(文件系统 容量 已用 可用 已用% 挂载点)
查看某个目录的大小:du -hs /home
查看目录下所有目录的大小并按大小降序排列:du -sm /etc/* |sort -nr|less
Mount 查看挂载信息
Umount /dev/sdc1 //卸载
查看磁盘使用情况
Df-h //查看磁盘使用情况(文件系统 容量 已用 可用 已用% 挂载点)
查看某个目录的大小:du -hs /home
查看目录下所有目录的大小并按大小降序排列:du -sm /etc/* |sort -nr|less
查看磁盘使用情况
df-h
备注:sort命令是帮助我们依据不同的数据类型进行排序
-n 依照数值的大小排序
-r 以相反的顺序来排序
Df参数参考
Df查看磁盘分区的使用情况
-l 仅显示本地磁盘
-a 显示所有文件系统的磁盘使用情况,包含比如/proc/ (0字节的分区)
-h 以1024进制计算并以最合适的单位显示磁盘容量
-H 以1000进制计算并以最合适的单位显示磁盘容量
-T 显示磁盘分区类型
-x 不显示指定类型文件系统的磁盘分区
-t 显示指定类型文件系统的磁盘分区
Du统计磁盘上的文件大小
-b 以byte为单位统计文件
-k 以kb为单位统计文件
-m 以mb为单位统计文件
-h 按照1024进制以最适合的单位统计文件
-H 按照1000进制以最适合的单位统计文件
-s 指定统计目标(比如某个指定的文件夹)
备注:sort命令是帮助我们依据不同的数据类型进行排序
-n 依照数值的大小排序
-r 以相反的顺序来排序
Df参数参考
Df查看磁盘分区的使用情况
-l 仅显示本地磁盘
-a 显示所有文件系统的磁盘使用情况,包含比如/proc/ (0字节的分区)
-h 以1024进制计算并以最合适的单位显示磁盘容量
-H 以1000进制计算并以最合适的单位显示磁盘容量
-T 显示磁盘分区类型
-x 不显示指定类型文件系统的磁盘分区
-t 显示指定类型文件系统的磁盘分区
Du统计磁盘上的文件大小
-b 以byte为单位统计文件
-k 以kb为单位统计文件
-m 以mb为单位统计文件
-h 按照1024进制以最适合的单位统计文件
-H 按照1000进制以最适合的单位统计文件
-s 指定统计目标(比如某个指定的文件夹)
性能检测
检测cpu
Cat /proc/cpuinfo
显示出主机cpu详细参数,如内核,频率,型号等
检测内存
Cat /proc/meminfo
查看主机内存信息,如内存大小,交换空间,高速缓存等
性能检测
Dd功能说明:读取,转换并输出数据。
语法:dd 【bs=<字节数】【cbs=<字节数】【conv=<关键字】【count=<区块】【ibs=<字节数】【if=<字节数】【if=<文件
】【seek=<区块数】【skip=<区块数】【--help】【--version】
If=xxx 从xxx读取,如if=/dev/zero
Of=xxx 向xxx写出,可以写文件,可以写裸设备
Bs =8k 每次读或写的大小,即一个块的大小。
Count=xxx 读写块的总数量
磁盘读写速度
Dd if=/dev/zero of=test bs=64k count=4k of=dsync
Dd if=/dev/zero of=test bs=8k count=256k conv=fdatasync
Cat /proc/cpuinfo
显示出主机cpu详细参数,如内核,频率,型号等
检测内存
Cat /proc/meminfo
查看主机内存信息,如内存大小,交换空间,高速缓存等
性能检测
Dd功能说明:读取,转换并输出数据。
语法:dd 【bs=<字节数】【cbs=<字节数】【conv=<关键字】【count=<区块】【ibs=<字节数】【if=<字节数】【if=<文件
】【seek=<区块数】【skip=<区块数】【--help】【--version】
If=xxx 从xxx读取,如if=/dev/zero
Of=xxx 向xxx写出,可以写文件,可以写裸设备
Bs =8k 每次读或写的大小,即一个块的大小。
Count=xxx 读写块的总数量
磁盘读写速度
Dd if=/dev/zero of=test bs=64k count=4k of=dsync
Dd if=/dev/zero of=test bs=8k count=256k conv=fdatasync
带宽测试步骤
1.下载speedtest-cli
https://github.com/sivel/speedtest-cli //解压*.Zip的文件 unzip *.Zip
2.cd speedtest-cil
./speed test.py
附加:
把下载的软件上传到电脑里:yum install lrzsz -y
Sz命令发送文件到本地:sz filename
Rz命令本地上传文件到服务器:rz filename
Uname内核信息获取
-a 显示内核所有信息
-v 内核的编译版本号
-r 内核的release发行号
-n 主机名
Lsmod列出内核模块
https://github.com/sivel/speedtest-cli //解压*.Zip的文件 unzip *.Zip
2.cd speedtest-cil
./speed test.py
附加:
把下载的软件上传到电脑里:yum install lrzsz -y
Sz命令发送文件到本地:sz filename
Rz命令本地上传文件到服务器:rz filename
Uname内核信息获取
-a 显示内核所有信息
-v 内核的编译版本号
-r 内核的release发行号
-n 主机名
Lsmod列出内核模块
netstat命令
netstat 命令参数和使用
常用参数-anput
-a 显示所有活动的连接以及本机侦听的 TCP、UDP 端口
- 显示监听的 server port
-n 直接使用 IP 地址,不通过域名服务器
-p 正在使用 Socket 的程序 PID 和程序名称
-r 显示路由表
-t 显示 TCP 传输协议的连线状况
-u 显示 UDP 传输协议的连线状况
-w 显示 RAW 传输协议的连线状况
ss (socket statistics) 参数和使用
常用参数和 netstat 类似,如-anp
-a 显示所有的 sockets
-l 显示正在监听的
-n 显示数字 IP 和端口,不通过域名服务器
-p 显示使用 socket 的对应的程序
-t 只显示 TCP sockets
-u 只显示 UDP sockets
-4-6只显示v4或v6V 版本的 sockets
-s打印出统计信息。这个选项不解析从各种源获得的socket。
对于解析/proc/net/top 大量的 sockets 计数时很有效-0显示分组套接字
-w只显示原始套接字
-x只显示域套接字
-r尝试进行域名解析,地址/端口
常用参数-anput
-a 显示所有活动的连接以及本机侦听的 TCP、UDP 端口
- 显示监听的 server port
-n 直接使用 IP 地址,不通过域名服务器
-p 正在使用 Socket 的程序 PID 和程序名称
-r 显示路由表
-t 显示 TCP 传输协议的连线状况
-u 显示 UDP 传输协议的连线状况
-w 显示 RAW 传输协议的连线状况
ss (socket statistics) 参数和使用
常用参数和 netstat 类似,如-anp
-a 显示所有的 sockets
-l 显示正在监听的
-n 显示数字 IP 和端口,不通过域名服务器
-p 显示使用 socket 的对应的程序
-t 只显示 TCP sockets
-u 只显示 UDP sockets
-4-6只显示v4或v6V 版本的 sockets
-s打印出统计信息。这个选项不解析从各种源获得的socket。
对于解析/proc/net/top 大量的 sockets 计数时很有效-0显示分组套接字
-w只显示原始套接字
-x只显示域套接字
-r尝试进行域名解析,地址/端口
netstat 是用于显示套接子内容的命令-ano选项表示以下的意思
a:不仅显示正在通信的套接字,还显示包括尚未开始通信等状态的所有套接字
n:显示 IP 地址和端口号
显示使用该套接字的程序 PID
a:不仅显示正在通信的套接字,还显示包括尚未开始通信等状态的所有套接字
n:显示 IP 地址和端口号
显示使用该套接字的程序 PID

收藏
0 条评论
下一页