导图社区 Linux知识点思维导图
Linux知识点思维导图,讲述了Linux知识点思维导图专辑的相关故事,如果你对Linux知识点思维导图专辑的故事感兴趣,欢迎对该思 维导图收藏和点赞!
编辑于2024-05-12 10:48:43Linux
模块四 系统监控与管理
一、进程与程序的概念
1.程序:是一系列指令的集合,是个静态的概念。
2.进程:是具有独立功能的程序的一次运行过程,是程序依次执行的过程,是动态的、正在运行的。linux为了区别不同的进程,赋予每个进程一个唯一的号码(进程号PID)。进程不是程序,但是由程序产生的。
二、系统监控命令
1.w命令:w [参数] [指定用户名] 作用:查看登录到系统的用户情况,不仅可以看到登录服务器的用户信息,还能看到这个用户做了什么。
2.who命令 作用:显示当前进入系统的用户信息
3.top命令 作用:显示实时进程列表,而且还能实时监控系统资源,包括内存、CPU的使用情况等。PID:进程号 USER:进程所有者的用户名 PR:进程的优先级别 NT:进程的优先级别数值 %CPU:该进程占用的CPU使用率 %MEM:该进程占用的物理内存和总内存的百分比 TIME+:该进程启动后占用的总的CPU时间 参数: -d :整个程序界面升级的秒数,默认是5秒 -b:以批量的方式运行top,通常会搭配数据流导向来将批量的结果输出为文本。(使用到重定向) -n:与-b搭配,需要进行几次的top输出结果 -p:指定某些PID来进行观察监测 q:离开top的按键
三、shell 脚本实现系统监控
编写一个shell脚本,实现对系统的监控,要求:监控系统的状况,并将top的信息进行3次,将其结果输出到/tmp/top2文件里面,通过cat查看/tmp/top2内容;用户输入用户名,如果是root用户,则将root用户的系统占用情况筛选出来,将筛选出的信息保存到文件/tmp/r.txt中;如果不是root用户,则输出“bu cao zuo ”。
四、作业管理
注意事项:一个正在执行的进程称为一个作业,而且作业可以包含一个或多个进程,尤其是当使用了管道和重定向命令。例如“cat /etc/passwd|grep root|wc -l”这个作业就同时启动了三个进程。 作业分为前台作业、后台作业 前台作业:运行与前台,用于正对其进行交互操作。 后台作业:不接收终端输入,向终端输出执行结果。 作业既可以在前台运行,也可以在后台运行。但在同一时刻,每个用户只能有一个前台作业,即它们最后向shell键入的命令。
1.直接将命令丢到后台运行的 & 2.当前工作丢到后台中暂停:ctrl + z 3.查看当前后台的工作状态:jobs [-lrs] l:除了列出job number与命令串之外,同时列出PID号码 r:仅列出正在后台运行(run)的工作 s:仅列出正在后台当中暂停的工作 4.将暂停的工作变成运行状态: 格式:bg % jobnumber 5.交后台工作拿到前台来执行:fg % jobnumber %可有可无 6.管理后台的工作:格式:kill -signal % jobnumber -2:代表与由键盘输入ctrl+c同样的动作 -9:立刻强制删除一个工作
五、进程管理
1.查看进程:ps [选项] -e 显示所有进程 -f 全格式 -l 长格式 经常通过进程名来查找进程号:ps -ef | grep 进程名
2.终止后台进程的命令 格式:kill -signal PID 后者 killall [参数] -signal 名称 常用参数:-i 互动式的,若要删除时,会出现提示字符给用户 #kill -l //查看当前系统可用的信号 常用的应用:删除进程 常用的信号与数字对应 1—— SIGHUP: 无须关闭进程而让其重读配置文件 2——SIGINT: 中止正在运行的进程;相当于Ctrl+c 9——SIGKILL: 强制杀死正在运行的进程 15——SIGTERM:终止正在运行的进程
六、系统资源查看
1.free命令:free [参数] 作用:显示Linux系统中空闲的、已用的物理内存及swap内存。 参数: -b :显示的单位是byte ;-m :显示的单位是Mb; -k:显示的单位是Kb;-g:显示的单位是Gb -t:输出的最终结果 total:总计物理内存的大小 used:已使用的容量 free:剩余可用的容量 Shared:多个进程共享的内存总额Buffers/cached:磁盘缓存的大小。 mem:物理内存的容量 swap:虚拟内存的容量 2.uname命令 :uname [参数] 作用:查看系统与内核相关的信息 参数: -a :所有系统相关的信息,包括下面的数据都会被列出来; -s :系统内核名称 -r :内核的版本 -m :本系统的硬件名称 3.netstat命令:netstat [参数] 作用:用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。 参数: -a:将目前系统上所有的连接、监听、socket数据都列出来 -t:列出tcp网络封包的数据 -u:列出udp网络封包的数据 -n: 不列出进程的服务名称,以端口号(port number)来显示 -l:列出目前正在网络监听的服务 -p: 列出网络服务的进程PID
模块五 网络配置与软件管理
一、网络配置
网络配置通常包括主机名、IP地址、子网掩码、默认网关、DNS服务器等。 在Linux中,TCP/IP网络的配置信息是分别存储在不同的配置文件中的。相关的配置文件有网卡配置文件、 /etc/sysconfig/network-scripts/ifcfg-ens33、/etc/hosts、以及/etc/host.conf等文件。
(1)查看与设置临时主机名:hostname (2)查看网卡配置信息:ifconfig (3)启动服务:service 服务名 start/stop/starus/restart/reload 重启网络服务:service network restar (4)测试本机和目标主机的连通性
二.RPM软件管理软件
(1)查询某个软件是否安装:rpm –q 软件名
(2)安装软件:rpm -ivh --nodeps rpm软件包名 -i 安装软件 ;-t 测试安装,不是真的安装 ;-p 显示安装进度;-f 忽略任何错误 ;-U 升级安装 ;-v 检测套件是否正确安装;-h 以#作为进度条。这些参数可以同时采用。
(3)卸载软件:rpm -e 软件名
三、YUM安装软件
(1)清除原有的软件包缓存:yum clean all
(2)安装:yum install 软件包名
(3)卸载:yum remove 软件包名
模块二用户和组群管理
一.常用的概念
用户名 用来标识用户的名称,可以是字母、数字组成的字符串,区分大小写 密码 用于验证用户身份的特殊验证码 用户标识(UID) 用来表示用户的数字标识符 用户主目录 用户的私人目录,也是用户登录系统后默认所在的目录 登录Shell 用户登录后默认使用的Shell程序,默认为/bin/bash 组群 具有相同属性的用户属于同一个组群 组群标识(GID) 用来表示组群的数字标识符
二.用户配置文件
1. /etc/passwd 文件 文件中的每一行代表一个用户账户的资料,可以看到第一个用户是 root。然后是一些标准账户,此类账户的 shell为/sbin/nologin,代表无本地登录权限。最后一行是由系统管理员创建的普通账户:user1。
2./etc/shadow 文件 由于所有用户对/etc/passwd 文件均有读取权限,为了增强系统的安全性,用户经过加密之后的口令都存放在/etc/shadow 文件中。/et/shadow 文件只对 root 用户可读,因而大大提高了系统的安全性。
3./etc/login.defs 文件 建立用户账户时会根据/etc/login,defs 文件的配置设置用户账户的某些选项。
4.新建用户 在系统中,新建用户可以使用 useradd 或者 adduser 命令。useradd 命令的格式如下: useradd [选项] <username> -c comment:用户的注释性信息 -d home_dir:指定用户的主目录 -e expire_date:禁用账户的日期,格式为:YYYY-MM-DD -f inactive days:设置账户过期多少天后用户账户被禁用。如果为 0,账户过期后将立即被禁用。如果为-1,则账户过期后,将不被禁用 -g initial_group:用户所属主组的组名称或者 GID -G group-list:用户所属的附属组列表,多个组之间用“,"分隔 -m:若用户主目录不存在则创建 -M:不创建用户主目录
三,组群的配置文件
1./etc/group 文件 group 文件位于“/etc”目录,用于存放用户的组账户信息,该文件的内容任何用户都可1./etc/group 文件读取。每个组账户在 group 文件中占用一行,并且用“:”分隔为四个域。 group 文件的组成员列表中如果有多个用户账户属于同一个组,则各成员之间以“,”分隔。在/etc/group 文件中,用户的主组并不把该用户作为成员列出,只有用户的附属组才会把该用户作为成员列出。 例如:用户 bobby 的主组是 bobby,但/etc/group 文件中组 bobby 的成员列表中并没有用户 bobby。
2./etc/gshadow 文件 /etc/gshadow 文件用于存放组的加密口令、组管理员等信息,该文件只有 root 用户可以读取。每个组账户在 gshadow 文件中占用一行,并以“:”分隔为四个域。 组名称:加密后的组口令:组的管理员:组成员列表
模块一 文件及目录的管理
一、文件系统目录
1.目录的树形结构
目录结构图
目录结构图
2.Linux中的默认目录功能
(1)/:Linux文件的最上层根目录
(2)/bin:binary的缩写,存放用户的可运行程序
(3)/boot:该目录存放操作系统启动时所需的文件及系统的内核文件
(4)/dev :接口设备文件目录,例如 hda表示第一个IDE 硬盘
(5)/etc :该目录存放有关系统设置与管理的文件
(6)/etc/X11 :该目录是X-Window System的设置目录
(7)/home :普通用户的主目录,或FTP站点目录
(8)/lib :仅包含运行/bin和/sbin目录中的二进制文件时所需的共享函数库(library)
(9)/mnt: 各项设备的文件系统安装点(mount)
(10)/media: 光盘、软盘等设备的挂载点/opt 第三方应用程序的安装目录
(11)/proc: 目前系统内核与程序运行的信息,和使用ps命令看到的内容相同
(12)/root: 超级用户的主目录
(13)/sbin: 是system binary的缩写,该目录存人的是系统启动时所需运行的程序,如 lilo和swapon等
(14)/tmp: 临时文件的存放位置
(15)/usr :存人用户使用的系统命令和应用程序等信息
(16)/var : variable的缩写,具有变动性质的相关程序目录,如 log、spool和 named等
3.绝对路径与相对路径
(1)绝对路径:cd /var/log
(2)相对路径:cd . . /var/log
4.浏览目录类命令
(1)使用pwd命令: 例如:[root@ server01~]#pwd /root
(2)使用cd命令: [rooteServer01~]# cd .. //改变目录位置至当前目录的父目录 [root@Server01 /1# cd etc //改变目录位置至当前目录下的 etc 子目录 [rooteServer01 etc]# cd ./yum //改变目录位置至当前目录(.)下的 vum 子目录 [root@Server01 yum]# cd~ //改变目录位置至用户登录时的工作目录(用户的家目录) [rooteServer01~]# cd../etc //改变目录位置至当前目录的父目录下的 etc 子目录 [rooteServer01 etc]# cd /etc/xml //利用绝对路径表示改变目录到/ete/xm1 目录下 [root@Server01 xml]# cd //利用绝对路径表示改变目录到/ete/xm1 目录下
(3)使用ls 命令 该命令语法为:ls [参数] [目录或文件] ls 命令的常用参数选项如下: -a:显示所有文件,包括以“.”开头的隐藏文件。 -A:显示指定目录下所有的子目录及文件,包括隐藏文件。但不显示“.”和“..“· -c:按文件的修改时间排序 -C:分成多列显示各行。 -d:如果参数是目录,只显示其名称而不显示其下的各个文件。往往与“-1”选项一起使用,以得到目录的详细信息。 -l:以长格形式显示文件的详细信息 -i:在输出的第一列显示文件的i结点号
5.熟练使用目录操作类命令
(1)使用 mkdir 命令 mkdir 俞令用于创建一个目录。该命令的语法为: mkair [参数] 目录名 上述目录名可以为相对路径,也可以为绝对路径。 mkdir命令的常用参数选项如下: -p:在创建目录时,如果父目录不存在,则同时创建该目录及该目录的父目录。
(2)使用 rmdir 命令 使用rmdir 命令rmdir 命令用于删除空目录。该命令的语法为:rmdir [参数] 目录名 上述目录名可以为相对路径,也可以为绝对路径。但所删除的目录必须为空目录 rmdir 命令的常用参数选项如下: p:在删除目录时,一起删除父目录,但父目录中必须没有其他子目录及文件。
二、文件
1.熟练使用浏览文件类命令
(1)使用 cat 命令 cat 命令主要用于滚屏显示文件内容或是将多个文件合并成一个文件。该命令的语法为 :cat [参数] 文件名 cat 命令的常用参数选项如下: -b:对输出内容中的非空行标注行号 -n:对输出内容中的所有行标注行号
(2)使用 more 命令 在使用cat命令时,如果文件太长,用户只能看到文件的最后一部分。这时可以使用more命令,一页一页地分屏显示文件的内容。more 命令通常用于分屏显示文件内容。大部分情况下,可以不加任何参数选项执行 more 命令查看文件内容,执行 more 命令后,进入more状态,按 Enter 键可以向下移动一行,按 Space 键可以向下移动一页;按 q键可以退出 more命令。该命令的语法为: more [参数] 文件名 more 命令的常用参数选项有: -num:这里的 num 是一个数字,用来指定分页显示时每页的行数。 +num:指定从文件的第 num 行开始显示。
(3)使用 less 命令 less 命令的用法与 more 基本相同,例如: [root@Server01~]#less /etc/passwd // 以分页方式查看 passwd 文件的内容。
(4)使用 head 命令 head 命令用于显示文件的开始部分,默认情况下只显示文件的前 10 行内容。该命令的语法为: head [参数] 文件名 head 命令的常用参数选项如下: -n num:显示指定文件的前 num 行。 -c num:显示指定文件的前 num 个字符。 例如: [root@Server01~]#head -n 20 /etc/passwd //显示 passwd 文件的前20行
(5)使用 tail 命令 tail 命令用于显示文件的末尾部分,默认情况下只显示文件末尾的 10 行内容。该命令的语法为: tail [参数] 文件名 tail 命令的常用参数选项如下: -n num;显示指定文件的末尾 num 行。 -c num:显示指定文件的末尾 num 个字符。 +num:从第 num 行开始显示指定文件的内容。 例如: [root@Server01~]#tail-n 20/etc/passwd //显示 passwd 文件的末尾20行
2.熟练使用 cp 命令
(1)cp命令的使用方法 cp 命令主要用于文件或目录的复制。该命令的语法为: cp[参数] 源文件目标文件 cp 命令的常用参数选项如下: -a;尽可能将文件状态、权限等属性按原状予以复制。 -f;如果目标文件或目录存在,先删除它们再进行复制(即覆盖),并且不提示用户 -i;如果目标文件或目录存在,提示是否覆盖已有的文件。 -R;递归复制目录,即包含目录下的各级子目录。 -d;若来源文件为链接文件的属性link file),则复制链接文件属性而非文件本身。 -l;进行硬式链接(hard link)的链接文件建立,而非复制文件本身。 -p:连同文件的属性一起复制过去,而非使用预设属性。
3.熟练使用文件操作类命令
(1)使用 mv 命令 mv 命令主要用于文件或目录的移动和改名。该命令的语法为: mv [参数] 源文件或目录目标文件或目录 mv命令的常用参数选项如下: -i:如果目标文件或目录存在时,提示是否覆盖目标文件或目录。 -f:无论目标文件或目录是否存在,直接覆盖目标文件或目录,不提示
(2)使用 rm 命令 rm 命令主要用于文件或目录的删除。该命令的语法为 : rm [参数] 文件名或目录名 rm 命令的常用参数选项如下: -i:删除文件或目录时提示用户。 -f:删除文件或目录时不提示用户。 -R:递归删除目录,即包含目录下的文件和各级子目录。
(3)touch 命令 touch 命令用于建立文件或更新文件的修改日期。该命令的语法为: touch [参数] 文件名或目录名 touch 命令的常用参数选项如下: -d yyyymmdd : 把文件的存取和修改时间改为 yyyy 年 mm 月 dd 日 -a : 只把文件的存取时间改为当前时间。 -m : 只把文件的修改时间改为当前时间。
(4)使用 diff 命令 diff 命令用于比较两个文件内容的不同。该命令的语法为: diff [参数] 源文件目标文件 diff 命令的常用参数选项如下: ·-a:将所有的文件当作文本文件处理。 -b:忽略空格造成的不同。 -B:忽略空行造成的不同。 -q:只报告什么地方不同,不报告具体的不同信息 -i:忽略大小写的变化。
(5)In 命令 ln 命令用于建立两个文件之间的链接关系。该命令的语法为: ln [参数] 源文件或目录链接名 In 命令的常用参数选项如下: -s:建立符号链接(软链接),不加该参数时建立的链接为硬链接。
(6)使用 gzip 和 gunzip命令 gzip 命令用于对文件进行压缩,生成的压缩文件以“.z”结尾,而 gunzip 命令是对以“.gz”结尾的文件进行解压缩。该命令的语法为: gzip -v 文件名 gunzip -v 文件名 -v 参数选项显示被压缩文件的压缩比或解压时的信息。
(7)使用 tar 命令 tar 是用于文件打包的命令行工具,tar 命令可以把一系列的文件归档到一个大文件中,也可以把档案文件解开以恢复数据。总之,tar 命令主要用于打包和解包。tar 命令是 Linux 系统中常用的备份工具之一。该命令的语法为: tar [参数] 档案文件 文件列表 tar 命令的常用参数选项如下: -c:生成档案文件。 -v:列出归档解档的详细过程。 -f;指定档案文件名称。 -r:将文件追加到档案文件末尾。 -z:以 gzip 格式压缩或解压缩文件 -j:以 bzip2 格式压缩或解压缩文件 -d:比较档案与当前目录中的文件。 -x:解开档案文件。
(8)使用 rpm 命令 rpm 命令主要用于对 RPM 软件包进行管理。RPM 软件包是 Lnux 的各种发行版本中应用最为广泛的软件包格式之一。学会使用 rpm 命令对 RPM 软件包进行管理至关重要。该命令的语法为: rpm [参数] 软件包名 rpm 命令的常用参数选项如下; -ga:查询系统中安装的所有软件包。 -q:查询指定的软件包在系统中是否安装 -qi:查询系统中已安装软件包的描述信息。 -gl:查询系统中已安装软件包里所包含的文件列表。 -qp:查询 RPM 包文件中的信息,通常用于在未安装软件包之前了解软件包中的信息 -gf:查询系统中指定文件所属的软件包。 -i:用于安装指定的 RPM 软件包。 -v:显示较详细的信息。
(9)使用 whereis 命令 whereis 命令用来寻找命令的可执行文件所在的位置。该命令的语法为:whereis [参数] 命令名称 whereis 命令的常用参数选项如下: -b:只查找二进制文件。 -m:只查找命令的联机帮助手册部分。 -s:只查找源代码文件。
(10)使用 whatis 命令 whatis 命令用于获取命令简介。它从某个程序的使用手册中抽出一行简单的介绍性文件,帮助用户迅速了解这个程序的具体功能。该命令的语法为: whatis 命令名称
(11)使用 find 命令 find 命令用于文件查找。它的功能非常强大。该命令的语法为: find [路径][匹配表达式] find 命令的匹配表达式主要有如下几种类型: -name filename:查找指定名称的文件。 -user username:查找属于指定用户的文件 -group grpname:查找属于指定组的文件 -print:显示查找结果。 -size n:查找大小为 n 块的文件,一块为 512 B。符号“+n”表示查找大小大于 n块的文件;符号“-n”表示查找大小小于 n 块的文件;符号“nc”表示查找大小为 n 个字符的文件。·-inum n:查找索引结点号为 n 的文件。 -type:查找指定类型的文件。文件类型有:b(块设备文件)、c(字符设备文件)、d(目录).p(管道文件)、1(符号链接文件)、f(普通文件)。 -atime n;查找 n 天前被访问过的文件。“+n”表示超过 n 天前被访问的文件;“-n”表示未超过 n 天前被访问的文件。 -mtime n;类似于 atime,但查找的是文件内容被修改的时间 -ctime n;类似于 atime,但查找的是文件索引结点被改变的时间。 -perm mode:查找与给定权限匹配的文件,必须以八进制的形式给出访问权限。 -newer file:查找比指定文件新的文件,即最后修改时间离现在时间较近。 -exec command份 ?;对匹配指定条件的文件执行 command 命令。 -ok command)\?;与exec 相同,但执行 command 命令时请求用户确认。
(12)使用 grep 命令 grep 命令用于查找文件中包含有指定字符串的行。该命令的语法为: grep [参数] 要查找的字符串 文件名 grep命令的常用参数选项如下: -v:列出不匹配的行。 -c:对匹配的行计数。 -l:只显示包含匹配模式的文件名。 -h:抑制包含匹配模式的文件名的显示 -n:每个匹配行只按照相对的行号显示 -i:对匹配模式不区分大小写。
李柄臻