【Linux】Linux

news2024/11/30 14:31:27

Linux

文章目录

  • Linux
  • 1. 简介
  • 2. 目录结构
  • 3. vi/vim 的使用
  • 4. 网络配置
    • 4.1 配置网络ip地址
    • 4.2 配置主机名或ip映射
    • 4.3 远程登陆及上传下载
  • 5. 系统管理
    • 5.1 service 服务管理(CentOS 6 版本)
    • 5.2 systemctl 服务管理(CentOS 7 版本)
    • 5.3 sync 同步
  • 6. 常用基本命令
    • 6.1 帮助命令
    • 6.2 文件目录类
    • 6.3 时间日期类
    • 6.4 用户管理
    • 6.5 用户组管理
    • 6.6 文件权限类
    • 6.7 搜索查找类
    • 6.8 压缩和解压类
    • 6.9 磁盘、内存查看和分区类
    • 6.10 进程管理类
    • 6.11 系统定时任务
  • 7. 软件包管理
    • 7.1 RPM
    • 7.2 YUM
  • 8. 虚拟机克隆

1. 简介

较为有名的 Linux 发行版如下图:

在这里插入图片描述

推荐学习,文章部分内容直接引用自 https://www.runoob.com/linux/linux-tutorial.html ,本篇文章主要基于 CentOS 7

2. 目录结构

在这里插入图片描述

以下是对这些目录的解释:

  • /bin:bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。

  • /boot:这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。

  • /dev :dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。

  • /etc:etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

  • /home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。

  • /lib:lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。

  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

  • /media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。

  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。

  • /opt:opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

  • /proc:proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

  echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。

  • /sbin:s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。

  • /selinux:这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

  • /srv:该目录存放一些服务启动之后需要提取的数据。

  • /sys:这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。

    sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。

    该文件系统是内核设备树的一个直观反映。

    当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

  • /tmp:tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。

  • /usr:usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。

  • **/usr/bin:**系统用户使用的应用程序。

  • **/usr/sbin:**超级用户使用的比较高级的管理程序和系统守护程序。

  • **/usr/src:**内核源代码默认的放置目录。

  • /var:var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

  • /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。

/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。

/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的。

值得提出的是 /bin/usr/bin 是给系统用户使用的指令(除 root 外的通用用户),而/sbin, /usr/sbin 则是给 root 使用的指令。

/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里。

参考自 https://www.runoob.com/linux/linux-system-contents.html#:~:text=Linux 系统目录结构

总结:

  • /opt :安装软件目录
  • /home:用户主目录,可随意造
  • /root:root 用户主目录,也可造

3. vi/vim 的使用

基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)

常用特别命令:

  • 命令模式 :使用 vi/vim 命令即进入该模式
    • i :切换到输入模式,在当前光标位置
    • : :切换到底线模式
    • :w :保存文件
    • :q :退出 Vim 编辑器
    • :wq :保存并退出 Vim 编辑器
    • :q! :强制退出,不保存修改
  • 输入模式
    • HOME/END :移动光标到行首/行尾
    • Page Up/Page Down :上/下翻页
    • ESC :退出输入模式,切换到命令模式
  • 底线命令模式 :命令模式下,使用 : 进入,使用 ESC 退出,该模式功能强大,但个人较少使用

命令模式下可用的光标移动、复制粘贴、搜索替换等

  • 光标移动:
    • n<space> :光标向右移动这一行的 n 个字符
    • 0 或功能键[Home] :移动到这一行的最前面字符处
    • $ 或功能键[End] :移动到这一行的最后面字符处
    • G :移动到这个档案的最后一行
    • nG :n 为数字。移动到这个档案的第 n 行
    • gg :移动到这个档案的第一行
    • n<Enter> :n 为数字。光标向下移动 n 行
  • 搜索替换
    • /word :向光标之下寻找一个名称为 word 的字符串
    • ?word :向光标之上寻找一个字符串名称为 word 的字符串
    • n :这个 n 是英文按键。代表重复前一个搜寻的动作。可结合上面命令使用
    • N :这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird
    • :n1,n2s/word1/word2/g :n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 。举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD
    • :1,$s/word1/word2/g:%s/word1/word2/g :从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2
    • :1,$s/word1/word2/gc:%s/word1/word2/gc :从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代
  • 剪切与复制
    • dd :剪切游标所在的那一整行(常用),用 p / P 可以粘贴
    • ndd :n 为数字。剪切光标所在的向下 n 行,例如 20dd 则是剪切 20 行(常用),用 p / P 可以粘贴
    • yy :复制游标所在的那一行
    • nyy :n 为数字。复制光标所在的向下 n 行
    • y1G :复制游标所在行到第一行的所有数据
    • yG :复制游标所在行到最后一行的所有数据
    • y0 :复制光标所在的那个字符到该行行首的所有数据
    • y$ :复制光标所在的那个字符到该行行尾的所有数据
    • p , P :p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行。举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢? 那么原本的第 20 行会被推到变成 30 行
    • u :复原前一个动作
    • [Ctrl]+r :重做上一个动作
    • . :小数点,意思是重复前一个动作的意思

4. 网络配置

VM提供了三种网络连接模式:

  • 桥接模式:虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的。
  • NAT 模式:虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换 (NAT)设备对 IP 进行转换。虚拟机通过共享主机IP 可以访问外部网络,但外部网络无法访问虚拟机。
  • 仅主机模式:虚拟机只与主机共享一个专用网络,与外部网络无法通信。

4.1 配置网络ip地址

ifconfig :显示所有网络接口的配置信息,主要看 ens33

/etc/sysconfig/network-scripts/ifcfg-ens33 :IP配置文件,可修改该文件将IP配置成静态的;修改后需重启网络服务 service network restart

参考配置:带 # 号注释的为必要项

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" #IP 的配置方法[none|static|bootp|dhcp](引导时不使用协议| 静态分配 IP|BOOTP 协议|DHCP 协议),默认是 dhcp
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="5104b9f3-bbff-48f2-8068-ad1705802a5b"
DEVICE="ens33"
ONBOOT="yes" # 系统启动的时候网络接口是否有效(yes/no)
IPADDR=192.168.115.100 #该虚拟机的IP 地址
GATEWAY=192.168.115.2 #网关,可通过 VMware Workstation Pro 的虚拟网络编辑器的 NAT 设置按钮查看
DNS1=192.168.115.2 #域名解析器

4.2 配置主机名或ip映射

hostname :查看当前服务器的主机名称

/etc/hosts :linux 的主机映射文件,相等于 windows 中的 hosts

4.3 远程登陆及上传下载

ssh连接命令:ssh root@192.168.115.128

sftp:sftp root@192.168.115.128 ,下面上传和下载命令可以添加 -r 参数,将文件夹递归传输,如 put -r 本地路径 远程路径

  • 上传: put 本地路径/文件名 远程路径
  • 下载: get 远程路径/文件名 本地路径
  • 退出:exit

5. 系统管理

5.1 service 服务管理(CentOS 6 版本)

基本语法: service 服务名 [start | stop | restart | status]

所有服务:/etc/init.d/服务名 ,CentOS 7 只有 netconsolenetwork 两个服务

开机自启配置:chkconfig 查看服务器所有自启配置,指定服务做对应操作:chkconfig 服务名 [off | on | --list]

5.2 systemctl 服务管理(CentOS 7 版本)

基本语法:systemctl [start | stop | restart | status] 服务名

所有服务:/usr/lib/systemd/system

开机自启配置:systemctl list-unit-files 查看服务开机启动状态,关闭和开启:systemctl [disable | enable] service_name[.service]

常见服务名:firewalld 防火墙,NetworkManager 网络(可关闭 network ,使用 NetworkManager

5.3 sync 同步

Linux 系统中为了提高磁盘的读写效率,对磁盘采取了 “预读迟写”操作方式。当用户保存文件时,Linux 核心并不一定立即将保存数据写入物理磁盘中,而是将数据保存在缓冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是,也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导致数据丢失。使用 sync 指令可以立即将缓冲区的数据写入磁盘。

6. 常用基本命令

6.1 帮助命令

一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in)命令”;相应的其它命令被称为“外部命令”。

  • man [命令或配置文件] ,使用 -f 参数还可以选择不同情况下的命令查看
  • 外部命令 --help :如 ls --help
  • help 内置命令 :如 help cd

6.2 文件目录类

命令描述常用选项
pwd显示当前工作目录的绝对路径
ls [选项] [目录或是文件]列出目录内容-a : 显示隐藏文件 -l :显示更多数据,等价于 ll
cd [参数]切换路径
mkdir [选项] 创建的目录建立目录-p 创建多层目录
rmdir 要删除的空目录移除目录
cp [选项] source dest复制source文件到dest-r 递归复制整个文件夹
rm [选项] deleteFile递归删除目录中所有内容-r 递归删除目录中所有内容,-f 忽略提示,-v 显示指令的详细执行过程
mv oldNameFile newNameFile移动文件与目录或重命名
cat [选项] 要查看的文件查看文件内容,从第一行开始显示-n :显示行号;一般用于查看比较小的文件,一屏幕能显示全的
more 要查看的文件more 是一个基于 VI 编辑器的文本过滤器空白键 (space) 向下翻页,q 离开,Ctrl+B 返回上一层
less 要查看的文件根据需要加载内容,比 more 效率高/字符串 向下搜索功能:n 向下查找 N 向上查找;?字符串 与之相反
echo [选项] [输出内容]输出内容到控制台
head -n 5 文件显示文件开头部分内容,默认前 10 行内容-n :指定显示头部内容的行数
tail [选项] 文件于输出文件中尾部的内容,默认10行-f实时显示 -n :指定显示行数
ln -s [原文件或目录] [软链接名]软链接,类似于 windows 里的快捷方式删除软链接rm -rf 软链接名,而不是 rm -rf 软链接名/,否则会把软链接对应的真实目录下内容删掉
history查看已经执行过历史命令!n :n 是数字,表示执行历史第 n 条命令
touch 文件名称创建空文件
>>>> 输出重定向, >> 追加

6.3 时间日期类

基本语法:date [OPTION]... [+FORMAT]

OPTION:

  • -d<时间字符串> :显示指定的“时间字符串”表示的时间,而非当前时间
  • -s<日期时间> :设置系统日期时间

显示当前时间,并指定输出格式:date "+%Y-%m-%d %H:%M:%S" 也可单独拆开使用 如:date +%Y 显示当前年份

显示明天时间:date -d '-1 days ago'

6.4 用户管理

命令描述
useradd 用户名添加新用户
useradd -g 组名 用户名添加新用户到某个组
passwd 用户名设置用户密码
id 用户名查看用户是否存在
cat /etc/passwd查看创建了哪些用户
su 用户名称切换用户,只能获得用户的执行权限,不能获得环境变量,需获取环境变量需使用 su -用户名称
userdel -r 用户名删除用户并删除用户主目录,不带 -r 参数即可保留用户目录
who am i显示登录用户的用户名以及登陆时间
usermod -g 用户组 用户名修改用户的初始登录组,给定的组必须存在。默认组 id 是 1

6.5 用户组管理

命令描述
groupadd 组名添加用户组
groupdel 组名删除用户组
groupmod -n 新组名 老组名修改用户组
cat /etc/group查看所有用户组

6.6 文件权限类

  1. 文件属性

在这里插入图片描述

文件类型:d 指目录,- 为文件,l 表示链接文档,还有 bc 指设备

权限类型:r 可读,w 可写,x 可执行,- 无对应权限

  1. chmod 改变权限
    • chmod [{ugoa}{+-=}{rwx}] 文件或目录
    • chmod [mode=421 ] [文件或目录] :如 chmod -R 777 目录r = 4,w = 2,x = 1;-R 表示整个文件夹中所有文件
  2. chown 改变所有者chown [选项] [最终用户] [文件或目录]-R 是常用参数,表示递归
  3. chgrp 改变所属组chgrp [最终用户组] [文件或目录]

6.7 搜索查找类

  1. find 查找文件或者目录

find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。

语法:find [搜索范围] [选项]

  • -name :按文件名查找,如 find /home -name "*.log"
  • -user :按用户查找,如 find /home -user root
  • -size :按文件大小查找,+n 大于,-n 小于,n 等于,如 find /home -size +204800 查找大于200M的文件
  1. locate 快速定位文件路径 :locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库,基本语法 locate 搜索文件
  2. grep 过滤查找及“|”管道符 :管道符表示将前一个命令的处理结果输出传递给后面的命令处理,过滤语法: grep 选项 查找内容 [源文件]-n 显示行号

6.8 压缩和解压类

  1. gzip/gunzip 压缩 :只能将文件压缩为 *.gz 文件,只能压缩文件不能压缩目录,不保留原来的文件,同时多个文件会产生多个压缩包
    • gzip 文件 :压缩文件
    • gunzip 文件.gz :解压文件
  2. zip/unzip 压缩 :zip 压缩命令在windows/linux都通用,可以压缩目录且保留源文件
    • zip [选项] XXX.zip 将要压缩的内容 :压缩文件和目录的命令,可用 -r 参数指定压缩的是目录
    • unzip [选项] XXX.zip :解压缩,可用 -d 参数指定解压后的存放目录
  3. tar 打包 :打包目录,压缩后的文件格式 .tar.gz
    • 参数:c 产生 .tar 打包文件; v 显示详细信息; f 指定压缩后的文件名; z 打包同时压缩; x 解包.tar文件; C 解压到指定目录
    • 压缩参考语句:tar -zcvf xxx.tar.gz /home/linux
    • 解压参考语句:tar -zxvf xxx.tar.gz

6.9 磁盘、内存查看和分区类

  1. du 目录/文件 :显示目录下每个子目录的磁盘使用情况,-h 存储单位简易显示,-a 包含文件, -s 只显示总和 --max-depth=n 最大深度
  2. df 选项 :列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况,-h 存储单位简易显示,df -h 是常用命令
  3. free :查看内存占用情况,一般结合 -h 简易存储单位展示
  4. lsblk :查看设备挂载情况,-f 显示文件系统类型信息;在挂载设备后可用该命令查看挂载情况
  5. mount [-t vfstype] [-o options] device dirumount 设备文件名或挂载点 :挂载设备和卸载设备,一般挂载在 /mnt 目录
    • vim /etc/fstab :可设置开机自动挂载
  6. fdiskfdisk -l 查看磁盘分区详情,fdisk 硬盘设备名 对硬盘进行分区操作,后面需结合 mkfs -t xfs /dev/sdb1 指定文件系统类型,最后再使用 mount 命令对硬盘进行挂载

6.10 进程管理类

  1. ps 查看当前系统进程状态

基本用法:

  • ps aux | grep xxx :查看系统中所有进程
  • ps -ef | grep xxx :可以查看子父进程之间的关系

如果想查看进程的 CPU 占用率和内存占用率,可以使用 aux;如果想查看进程的父进程 ID 可以使用 ef

ps aux 显示信息说明:

字段描述
USER该进程是由哪个用户产生的
PID进程的 ID 号
%CPU该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源
%MEM该进程占用物理内存的百分比,占用越高,进程越耗费资源
VSZ该进程占用虚拟内存的大小,单位 KB
RSS该进程占用实际物理内存的大小,单位 KB
TTY该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端,tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端
STAT进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示
START该进程的启动时间
TIME该进程占用 CPU 的运算时间,注意不是系统时间
COMMAND产生此进程的命令名

ps -ef 显示信息说明:

字段描述
UID用户 ID
PID进程 ID
PPID父进程 ID
CCPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算,执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高
STIME进程启动的时间
TTY完整的终端名称
TIMECPU 时间
CMD启动进程所用的命令和参数
  1. kill 终止进程
    • kill [选项] 进程号 :通过进程号杀死进程,可使用 -9 参数表示强迫进程停止
    • killall 进程名称 :通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用,如 killall firefox
  2. pstree 查看进程树 :语法 pstree [选项]-p 显示进程的 PID,-u 显示进程的所属用户
  3. top 实时监控系统进程状态

基本命令:top [选项]

选项说明-d 指定更新时间,默认3秒;-i 不显示闲置和僵死的进程;-p 指定监控进程ID

操作说明P 以CPU使用率排序,默认就是此项;M 以内存的使用率排序;N 以 PID排序;q 退出 top

在这里插入图片描述

查询结果字段解释:

第一行信息为任务队列信息top

内容说明
01:03:52系统当前时间
up 9:46系统的运行时间,本机已经运行 9 小时 46 分钟
2 users当前登录了两个用户
load average: 0.00, 0.01, 0.05系统在之前 1 分钟,5 分钟,15 分钟的平均负载。一般认为小于 1 时,负载较小。如果大于1,系统已经超出负荷

第二行为进程信息Tasks

内容说明
251 total系统中的进程总数
1 running正在运行的进程数
250 sleeping睡眠的进程
0 stopped正在停止的进程
0 zombie僵尸进程。如果不是 0,需要手工检查僵尸进程

第三行为 CPU 信息%Cpu(s) 行,单位都是 %

内容说明
0.0 us用户模式占用的 CPU 百分比
0.0 sy系统模式占用的 CPU 百分比
0.0 ni改变过优先级的用户进程占用的 CPU 百分比
99.9 id空闲 CPU 的 CPU 百分比
0.0 wa等待输入/输出的进程的占用 CPU 百分比
0.0 hi硬中断请求服务占用的 CPU 百分比
0.0 si软中断请求服务占用的 CPU 百分比
0.0 stst(Steal time)虚拟时间百分比。就是当有虚拟机时,虚拟 CPU 等待实际 CPU 的时间百分比

第四行为物理内存信息KiB Mem 行,单位都是 KB

内容说明
4026120 total物理内存的总量 = 空闲的物理内存数量 + 已经使用的物理内存数量 + 作为缓冲的内存数量
903476 free空闲的物理内存总量
2109512 used已经使用的物理内存总量
1013132 buff/cache作为内核缓冲的内存总量

第五行为交换分区(swap)信息KiB Swap 行,单位都是 KB

内容说明
4194300 total交换分区(虚拟内存)的总大小
4194300 free空闲交换分区的大小
0 used已经使用的交互分区的大小
2793208 avail Mem表示可用于进程下一次分配的物理内存数量

表格内容 :各进程的状态监控

字段描述
PID进程的 ID 号
USER进程所有者
PR进程优先级该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源
NInice值。负值表示高优先级,正值表示低优先级该进程占用物理内存的百分比,占用越高,进程越耗费资源
VIRT进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR共享内存大小,单位kb
S进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示
%CPU该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源
%MEM该进程占用物理内存的百分比,占用越高,进程越耗费资源
TIME+进程使用的CPU时间总计,单位1/100秒
COMMAND进程名称(命令名/命令行)
  1. netstat 显示网络状态和端口占用信息
    • netstat -anp | grep 进程号 :查看该进程网络信息
    • netstat -nlp | grep 端口号 :查看网络端口号占用情况

6.11 系统定时任务

使用前需保证 crond 服务开启,systemctl status crond ,开启命令:systemctl start crond

基本语法:crontab [选项]-e 编辑定时任务,-l 查询任务,-r 删除当前用户所有的 crontab 任务

crontab -e :进入 crontab 编辑界面。会打开 vim 供编辑定时任务

语法:* * * * * 要执行的任务

选项含义范围
第一个 “*”一小时当中的第几分钟0-59
第二个 “*”一天当中的第几小时0-23
第三个 “*”一个月当中的第几天1-31
第四个 “*”一年当中的第几月1-12
第五个 “*”一周当中的星期几0-7 ( 0 和 7 都代表星期天);为避免管理混乱,一般不与第一个参数同时设置

特殊符号:

特殊符号含义
*代表任意时间
,代表或的含义,如 0 1,5 * * * 表示每天的1点和5点都执行一次命令
-代表连续的时间范围,如 0 1-5 * * * 代表每天1至5点间的整点都执行一次命令
*/n代表每隔多久执行一次,如 */10 * * * * 代表每隔 10 分钟执行一次

7. 软件包管理

7.1 RPM

RPM(RedHat Package Manager),RedHat软件包管理工具,是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。
RPM包的名称格式 Apache-1.3.23-11.i386.rpm :

  • “apache” 软件名称
  • “1.3.23-11”软件的版本号,主版本和此版本
  • “i386”是软件所运行的硬件平台,Intel 32位处理器的统称
  • “rpm”文件扩展名,代表RPM包

查询所安装的所有 rpm 软件包:rpm -qa 一般结合 grep 过滤,或者使用 -qi 参数查看安装包信息

卸载所安装的软件包:rpm -e RPM软件包 ,增加 --nodeps 参数将不检查依赖,直接卸载,建议检查

安装:rpm -ivh 包名.rpm 需要对应包,-i 安装,-v 显示详细安装信息,-h 显示进度条,--nodeps 安装前不检查依赖

7.2 YUM

YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装,类似于 Java 中的 Maven

基本语法yum [选项] [参数]

选项说明-y 对所有提问都回答 “yes”

参数说明

参数功能
install安装 rpm 软件包
update更新 rpm 软件包
check-update检查是否有可用的更新 rpm 软件包
remove删除指定的 rpm 软件包
list显示软件包信息
clean清理 yum 过期的缓存
deplist显示 yum 软件包的所有依赖关系

安装举例:yum -y install firefox

网络 yum 源问题不用担心,会自动寻找最近的安装源下载安装

8. 虚拟机克隆

虚拟机关机后,在 VMware Workstation Pro 右键选中->管理->克隆,根据情况逐步选择即可克隆出一台虚拟机。克隆后一般需要做以下配置:

  1. 修改 IP 地址:修改 vim /etc/sysconfig/network-scripts/ifcfg-ens33 静态IP,可参考4.1
  2. 修改 hostname :修改 vim /etc/hostname 或者 hostnamectl set -hostname hostname111 ,后者不需要重启

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1348167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机网络(6):应用层

每个应用层协议都是为了解决某一类应用问题&#xff0c;而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。 应用层的具体内容就是规定应用进程在通信时所遵循的协议。 应用层的许多协议都是基于客户服务器方式。即使是对等通信方式&#x…

【Linux学习笔记】解析Linux系统内核:架构、功能、工作原理和发展趋势

操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。一个计算机系统是一个硬件和软件的共生体&#xff0c;它们互相依赖&#xff0c;不可分割。计算机的硬件&#xff0c;含有外围设备、处理器、内存、硬盘和其他的电子设备组成计算机的发动机。但是…

(13)Linux 进程的优先级、进程的切换以及环境变量等

前言&#xff1a;我们先讲解进程的优先级。然后讲解进程的切换&#xff0c;最后我们讲解环境变量&#xff0c;并且做一个 "让自己的可执行程序不带路径也能执行"的实践&#xff0c;讲解环境变量的到如何删除&#xff0c;最后再讲几个常见的环境变量。 一、进程优先级…

STL——vector容器

目录 1.vector基本概念 2.vector构造函数 3.vector赋值操作 4.vector容量和大小 5.vector插入和删除 6.vector数据存取 7.vector互换容器 8.vector预留空间 1.vector基本概念 功能&#xff1a;vector数据结构和数组非常相似&#xff0c;也称为单端数组。 vector与普通数…

内存泄漏检测工具

1. vs/vc(windows下)自带的检测工具 将下面的语句加到需要调试的代码中 #define _CRTDBG_MAP_ALLOC // 像一个开关,去开启一些功能,这个必须放在最上面 #include <stdlib.h> #include <crtdbg.h>// 接管new操作符 原理: 就是使用新定义的DBG_NEW去替换代码中的n…

开始使用MEVN技术栈开发02 MongoDB介绍

开始使用MEVN技术栈开发02 MongoDB介绍 MongoDB介绍 As indicated by the ‘ M ’ in MEVN, we will use MongoDB as the backend database for our app. MongoDB is a NoSQL database. Before we talk about what is a NoSQL database, let ’ s first talk about relationa…

github使用技巧(经验篇)

相关经验 指定代码范围并高亮显示 例如&#xff0c;指定nn_ops.py文件2612-L2686行的代码&#xff1a;https://github.com/tensorflow/tensorflow/blob/v2.14.0/tensorflow/python/ops/nn_ops.py#L2612-L2686 FAQ Q&#xff1a;github网页打不开&#xff1f; 【github加载不…

MySQL例行检查

MySQL例行检查 1.实例例行检查1.1线程1.2索引1.3临时表1.4连接数1.5BINLOG1.6锁1.7WAIT事件1.8MySQL状态 2.事务与锁例行检查2.1查看索引的cardinality2.2查看是否存在事务阻塞现象2.3查看事务执行时长以及执行的所有SQL2.4事务与锁 3.库表例行检查3.1查看缺失主键的表3.2冗余索…

【sql】MyBatis Plus中,sql报错LIKE “%?%“:

文章目录 一、报错详情&#xff1a;二、解决&#xff1a;三、扩展&#xff1a; 一、报错详情&#xff1a; 二、解决&#xff1a; 将LIKE “%”#{xxx}"%"改为LIKE CONCAT(‘%’, #{xxx}, ‘%’) 三、扩展&#xff1a; MyBatis Plus之like模糊查询中包含有特殊字符…

基于SpringBoot的校园二手闲置交易平台

基于SpringBoot的校园二手闲置交易平台的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatis工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 登录界面 管理员界面 摘要 本文基于Spring Boot框架设计并实现了一款…

尝试读取挪威 3d radar数据

1 原因 挪威的三维探地雷达很有特色&#xff0c;步进频率采样&#xff0c;与传统的GPR很不同&#xff0c;一个天线就拥有N个天线的功能。很想看看他们采集的数据是否清晰。 之前浙大学报审稿审到华南理工用的他们这个雷达。 图像来自知乎&#xff1a;若侵权&#xff0c;请告…

【vue】Easy Player实现视频播放:

文章目录 一、效果&#xff1a;二、文档&#xff1a;三、实现&#xff1a;【1】安装插件&#xff1a;【2】引入js文件&#xff1a;【3】使用&#xff1a; 四、方法&#xff1a; 一、效果&#xff1a; 二、文档&#xff1a; GitCode - EasyPlayer.js npm-easydarwin/easyplayer…

【ArcGIS微课1000例】0085:甘肃省白银市平川区4.9级地震震中位置图件制作

据中国地震台网正式测定,12月31日22时27分在甘肃白银市平川区发生4.9级地震,震源深度10公里,震中位于北纬36.74度,东经105.00度。 文章目录 一、白银市行政区划图1. 县级行政区2. 乡镇行政区二、4.9级地震图件制作1. 震中位置2. 影像图3. 震中三维地形一、白银市行政区划图…

OpenWrt 编译入门(小白版)

编译环境 示例编译所用系统为 Ubuntu 22.04&#xff0c;信息如下 编译时由于网络问题&#xff0c;部分软件包可能出现下载问题&#xff0c;还请自备网络工具或尝试重新运行命令 编译步骤 下图为官网指示 编译环境设置&#xff08;Build system setup&#xff09; 这里根据我…

2024年,幸运如期而至,愿我们将来不慌不忙,却有岁月的馈赠。

文章目录 一、工作和项目方面1、商城项目2、业务项目13、业务项目24、管理事项 二、家庭&#xff0c;生活&#xff0c;投资和理财方面1、家庭变故2、单一工资收入的结构挑战。3、投资和理财之路 三、技术学习方面读书和阅读AI技术以及工具学习&#xff0c;应用学习和参与知名的…

【数据结构 】初阶二叉树

文章目录 1. 数概念及结构1.1 树的结构1.2 树的相关概念1.3 树的表示1.4 树在实际中的运用&#xff08;表示文件系统的目录树结构&#xff09; 2. 二叉树概念及结构2.1 二叉树的概念2.2 特殊的二叉树2.3 二叉树的性质2.4 二叉树的存储结构 3. 二叉树的链式结构的实现3.1 前置说…

【javaSE】代理并不难

代理&#xff1a; 代理模式最主要的就是在不改变原来代码&#xff08;就是目标对象&#xff09;的情况下实现功能的增强 在学习AOP之前先了解代理&#xff0c;代理有两种&#xff1a;一种是动态代理&#xff0c;一类是静态代理。 静态代理 相当于是自己写了一个代理类&#…

用UltraISO制作镜像以RAW格式刻录系统到U盘后,在Windows上无法识别的解决办法

用UltraISO制作镜像以RAW格式刻录系统到U盘后&#xff0c;在Windows上无法识别的解决办法&#xff1a; 在https://wtl4it.blog.csdn.net/article/details/135319887https://wtl4it.blog.csdn.net/article/details/135319887 这篇文章中&#xff0c;用UltraISO制作镜像后&…

【网络面试(3)】浏览器委托协议栈完成消息的收发

前面的博客中&#xff0c;提到过很多次&#xff0c;浏览器作为应用程序&#xff0c;本身是不具备向网络中发送网络请求的能力&#xff0c;要委托操作系统的内核协议栈来完成。协议栈再调用网卡驱动&#xff0c;通过网卡将请求消息发送出去&#xff0c;本篇博客就来探讨一下这个…

Excel模板填充:从minio上获取模板使用easyExcel填充

最近工作中有个excel导出的功能&#xff0c;要求导出的模板和客户提供的模板一致&#xff0c;而客户提供的模板有着复杂的表头和独特列表风格&#xff0c;像以往使用poi去画是非常耗时间的&#xff0c;比如需要考虑字体大小&#xff0c;单元格合并&#xff0c;单元格的格式等问…