Linux笔记

网络连接三种模式

1.桥接模式
虚拟系统的ip和主机系统ip在同一个网段下,可以直接和外部系统通讯,但是容易造成ip冲突
在这里插入图片描述

VMware 桥接模式
  VMware桥接模式,也就是将虚拟机的虚拟网络适配器与主机的物理网络适配器进行交接,虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络(例如图中所示的局域网和Internet,下同)。简而言之,这就好像在上图所示的局域网中添加了一台新的、独立的计算机一样。因此,虚拟机也会占用局域网中的一个IP地址,并且可以和其他终端进行相互访问。桥接模式网络连接支持有线和无线主机网络适配器。如果你想把虚拟机当做一台完全独立的计算机看待,并且允许它和其他终端一样的进行网络通信,那么桥接模式通常是虚拟机访问网络的最简单途径。

2.NAT模式
网络地址转换模式,主机会额外生成一个虚拟网段用于和虚拟系统通讯,虚拟系统通过主机代理和外界系统通讯,不会造成ip冲突
![在这里插入图片描述](https://img-blog.csdnimg.cn/4cc9cc3581bf439b97e87eccd21a2c18.png

VMware NAT模式   NAT,是Network Address
Translation的缩写,意即网络地址转换。NAT模式也是VMware创建虚拟机的默认网络连接模式。使用NAT模式网络连接时,VMware会在主机上建立单独的专用网络,用以在主机和虚拟机之间相互通信。虚拟机向外部网络发送的请求数据"包裹",都会交由NAT网络适配器加上"特殊标记"并以主机的名义转发出去,外部网络返回的响应数据"包裹",也是先由主机接收,然后交由NAT网络适配器根据"特殊标记"进行识别并转发给对应的虚拟机,因此,虚拟机在外部网络中不必具有自己的IP地址。从外部网络来看,虚拟机和主机在共享一个IP地址,默认情况下,外部网络终端也无法访问到虚拟机。

此外,在一台主机上只允许有一个NAT模式的虚拟网络。因此,同一台主机上的多个采用NAT模式网络连接的虚拟机也是可以相互访问的。

前面我们已经提到,默认情况下,外部网络无法访问到虚拟机,不过我们也可以通过手动修改NAT设置实现端口转发功能,将外部网络发送到主机指定端口的数据转发到指定的虚拟机上。比如,我们在虚拟机的80端口上"建立"了一个站点,只要我们设置端口转发,将主机88端口上的数据转发给虚拟机的80端口,就可以让外部网络通过主机的88端口访问到虚拟机80端口上的站点。

3.主机模式

VMware 仅主机模式
  仅主机模式,是一种比NAT模式更加封闭的的网络连接模式,它将创建完全包含在主机中的专用网络。仅主机模式的虚拟网络适配器仅对主机可见,并在虚拟机和主机系统之间提供网络连接。相对于NAT模式而言,仅主机模式不具备NAT功能,因此在默认情况下,使用仅主机模式网络连接的虚拟机无法连接到Internet(在主机上安装合适的路由或代理软件,或者在Windows系统的主机上使用Internet连接共享功能,仍然可以让虚拟机连接到Internet或其他网络)。

在同一台主机上可以创建多个仅主机模式的虚拟网络,如果多个虚拟机处于同一个仅主机模式网络中,那么它们之间是可以相互通信的;如果它们处于不同的仅主机模式网络,则默认情况下无法进行相互通信(可通过在它们之间设置路由器来实现相互通信)。

虚拟机克隆

方式1.拷贝一份安装好的虚拟机文件,再用VMware打开
方式2.使用VMware的克隆操作(克隆时应先关闭Linux系统)

虚拟机快照

如果你在使用虚拟机系统的时候(比如Linux),你想回到原先的某个状态,也就是说你担心可能有些误操作造成系统异常,需要回到原先某个正常运行的状态,vmware提供了这样的功能,就叫快照管理

虚拟机的迁移和删除

虚拟系统的本质就是文件,你可以把安装好的虚拟系统文件夹整体的拷贝或者剪切到另外位置使用。
删除可以通过VMware进行移除,再点击菜单“从磁盘删除”即可,或者直接手动删除虚拟系统对应的文件夹。

VMtools

1.VMtools安装后,可以让我们在windows下更好的管理VM虚拟机
2.可以设置Windows和CentOS的共享文件夹

Linux的目录结构

1.Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层根目录"/",然后在此目录下创建其它的目录
2.在Linux的世界里一切皆文件

/bin[常用],是Binary的缩写,这个目录存放着最经常使用的命令。
/sbin,s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/home[常用],存放普通用户的主目录,在Linux中每一个用户都有自己的目录,一般该目录名是以用户的账号命名。
/root[常用],该目录为系统管理员,也称作超级权限者的主目录
/lib 系统开机所需要最基本的动态链接共享库,其作用类似于Windows中的DLL文件,几乎所有的运用程序都需要用到这些共享库
/lost+found 这个目录一般为空,当系统非法关机后,这里就存放了一些文件
/etc[常用],所有系统管理所需要的配置文件和子目录,比如安装mysql数据库my.conf
/usr[常用], 这是一个非常重要的目录,用户很多应用程序和文件都放在该目录下,类似Windows下的program files 文件
/boot[常用] 存放的是启动Linux时使用的一些核心文件,包括一些连接文件和镜像文件
/proc[不能动] 这个目录是一个虚拟目录,他是系统的内存映射,访问这个目录来获取系统信息
/srv[不能动] service缩写,该目录存放一些服务启动之后需要提取的数据
/sys[不能动] 这是Linux2.6内核的一个很大变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs
/tmp 这个目录用来存放一些临时文件
/dev 类似于Windows的设备管理器,把所有设备用文件的形式存储
/media[常用] Linux系统会自动识别一些设备,例如:U盘,光驱等等,当识别之后Linux会把识别的设备挂载在这个目录下
/mnt[常用] 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录查看内容
/opt 这是给主机额外安装软件存放的目录,默认为空
/usr/local[常用] 这是另外一个给主机额外安装软件所安装的目录,一般是通过编译源码方式安装的程序
/var[常用] 这个目录下存放在不断扩充的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件
/selinux[security-enhanced linux] SELinux是一种安全子系统,它能控制程序只能访问特定文件,有是那种工作模式,可自行设置

远程操作Linux

通过Xshell和Xftp两款软件操作

vi和vim基本介绍

Linux系统内置了vi文本编辑器
vim具有程序编辑的能力,可以看作是vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补全,编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛应用

vi和vim常用三种模式

正常模式:以vim打开一个档案就直接进入一般模式了(这是默认模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或者【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理文件数据
插入模式:按下i, I, a, A, o, O, r, R等任何一个字母后进入编辑模式,一般按i即可
命令行模式:在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等动作,则是在此模式中达成的。
在这里插入图片描述

vi和vim快捷键

在正常模式下使用
1.拷贝当前行 yy,拷贝当前行向下五行 5yy,粘贴 p
2.删除当前行 dd,删除当前行向下五行 5dd
3.在文件中查找某个单词 命令行模式下 /关键字 ,回车 查找,输入 n 查找下一个
4.设置文件行号,取消文件行号,命令行模式下 :set nu:set nonu
5.撤销,在一般模式下 输入 u
6.在一般模式下,将光标移动到 20行(指定行),输入 20(指定行数) 再输入 shift+g
在这里插入图片描述

关机重启命令

shutdown -h now 立刻进行关机
shutdown -h 1 1分钟后关机
shutdown -r now 立刻进行重启
half 关机
reboot 现在重启
sync 把内存的数据同步到磁盘

细节
1.不管是关机还是重启,首先要运行sync命令把内存中的数据同步到磁盘
2.目前的shutdown/reboot/half 等命令均已在关机前执行了sync(小心使得万年船)

用户登录和注销

1.登录时尽量少用root登录,因为它是系统管理员,拥有最大权限,避免操作失误。可以利用普通用户登录,登录后再用su - 用户名 命令来切换成系统管理员身份。
2.在命令提示符下 输入 logout 即可注销用户

细节
1.logout命令在图形运行级别无效,在运行级别 3 下有效
2.运行级别的概念后面介绍

用户管理

添加用户

  1. useradd 用户名(创建一个用户会生成一个该用户的家目录,存在于/home/用户名)
  2. useradd -d 指定目录 新的用户名 给新创建的用户指定家目录

修改密码:passwd 用户名

无效密码:不安全的密码。因为没有开启安全策略,所以可以设置不安全的简单密码。

补充:pwd 查看当前所在目录

用户删除
1.删除用户,但是保留家目录,userdel 用户名
2.删除用户,同时删除家目录,userdel -r 用户名 (慎重使用,一般情况下建议保留)

查询用户信息
1.查询用户 id 用户名
在这里插入图片描述
uid 用户id
gid 组id
组 用户所在组

切换用户
su - 切换用户名

细节说明:
1.从高权限用户切换到低权限用户不需要输入密码,反之需要
2.当需要返回原来用户时,使用logout/exit指令

查看当前用户
命令 whoami/who am i(查看的是第一次登录到系统的用户信息,即便你后来通过 su - 用户名 切换了用户)

用户组
概念:类似于角色,系统可以对有共性/权限的多个用户进行同一管理
新增组命令:groupadd 组名
删除组命令:groupdel 组名
增加用户时指定组:useradd -g 用户组 用户名(创建用户时如果没有指定组,该用户会被分到系统创建的以该用户名命名的组)
修改用户所在组:usermod -g 用户组 用户名

用户和组相关文件
1./etc/passwd文件
用户的配置文件,记录用户的各种信息
每行含义:用户名:口令:用户标识号:注释性描述:主目录:登录shell

2./etc/shadow文件
口令配置文件
每行含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

3./etc/group文件
组的配置文件,记录Linux包含的组信息
每行含义:组名:口令:组标识号:组内用户列表

运行级别

说明:
0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用的运行级别是3和5,也可以指定默认运行级别
切换运行级别命令:init 级别号(如init 0 关机)

在CentOS7以前,/etc/inittab文件中进行了简化:
multi-user.target:analogous to runlevel 3(运行级别3)
graphical.target:analogous to runlevel 5(运行级别5)

显示默认运行级别命令:systemctl get-default
设置默认运行级别命令:systemctl set-default TARGET.target(systemctl set-default multi-user.target,设置默认运行级别3)

CentOS7找回root密码

1.首先,启动系统,进入开机界面,在界面中按"e"进入编辑界面,如图:
在这里插入图片描述
2.进入编辑界面,使用键盘的上下键把光标往下移动,找到以“Linux16”开头的内容所在行数,在行的末尾输入:init=/bin/sh
![在这里插入图片描述](https://img-blog.csdnimg.cn/598bcf73d69441f387baef0b705c1961.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASVRfZGF0b3Vlcg==,size_20,color_FFFFFF,t_70,g_se,x_16
3.接着输入完成之后,输入快捷键:Ctrl+x 进入单用户模式
4.接着,在光标的闪烁位置中输入:mount -o remount,rw /
在这里插入图片描述
5.在新的一行后面输入:passwd,完成后按键盘的回车键,输入密码,然后回车再次输入确认密码即可。密码修改成功后会出现passwd…的样式,说明密码修改成功。
6.接着在鼠标闪烁的位置中(最后一行)输入:touch /.autorelabel (注意,touch和/之间有一个空格),完成后按回车。
7.继续在光标闪烁的位置中输入:exec /sbin/init (注意,exec和/之间有一个空格),完成后按回车,等待系统自动修改密码(时间可能有点长),完成后系统自动重启,新的密码生效了。

帮助指令

man获取帮助信息
基本语法:man [命令或配置文件]
如查看ls的帮助信息 man ls
在Linux下隐藏文件是以 . 开头的

help指令
基本语法:help 命令(如:help cd)

文件目录指令

pwd指令:显示当前工作目录的绝对路径
ls指令
基本语法: ls [选项] [目录或者文件]
常用选项:
-a 显示当前目录下所有的文件和目录,包括隐藏的
-l 以列表的方式显示信息
cd指令
基本语法:cd [参数] (切换到指定目录)
理解:绝对路径和相对路径
cd~ 或 cd 回到自己的家目录,如root用户 cd~回到/root
cd . . 回到当前目录的上一级目录
mkdir指令
mkdir指令用于创建目录
基本语法:mkdir [选项] 要创建的目录

  • 常用选项
    -p 创建多级目录

rmdir指令
rmdir指令用于删除空目录
基本语法:rmdir [选项] 要删除的空目录
如果需要删除非空目录: rm -rf 需要删除的目录
touch指令
touch指令创建一个空文件
基本语法: touch 文件名称
cp指令
cp指令拷贝文件到指定目录
基本语法:cp [选项] source dest
常用选项: -r 递归复制整个文件夹
强制覆盖且不提示: \cp
rm指令
rm指令移除文件或目录
基本语法:rm [选项] 要删除的文件或者目录
常用选项:
-r 递归删除整个文件夹
-f 强制删除且不提示

mv指令
移动文件与目录或者重命名
基本语法:
1.mv oldFile newFile(在同一个目录下重命名)
2.mv oldFile newDir/newFile(移动文件到新目录下,同时也可以重命名)
3.mv oldDir newDir/(移动文件夹)

cat指令
cat查看文件内容
基本语法: cat [选项] 要查看的文件
常用选项: -n 显示行号
cat只能浏览文件,而不能修改文件,一般会带上管道命令 | more
cat -n 文件 | more

more指令
more指令是一个基于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more指令中内置了若干快捷键
基本语法:more 要查看的文件:在这里插入图片描述
less指令
less指令用来分屏查看文件内容,它的功能与more类似,但是比more更强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
基本语法:less 要查看的文件
在这里插入图片描述
echo指令
echo输入内容到控制台
基本语法:echo [选项] [输出内容]
例如:
echo $HOSTNAME(输出环境变量 主机名)
echo “hello world” (自定义输入内容)

head指令
用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
基本语法:
head 文件 (查看文件前十行内容)
head -n 5 文件 (查看文件前五行内容,5可以是任意的数)
tail指令
用于显示文件的结尾部分内容,默认情况下tail指令显示文件的倒数10行内容
基本语法:
tail 文件 (查看文件倒数十行内容)
tail -n 5 文件 (查看文件倒数五行内容,5可以是任意的数)
tail -f 文件 (实时追踪该文档的所有更新,输入 ctrl + c 退出)

> 指令和 >> 指令
基本语法:

  1. ls -l > 文件 ( 列表的内容覆盖写入目标文件中)
  2. ls -l >> 文件 (列表内容追加写入目标文件中)
  3. cat 文件1 > 文件2 (将文件1的内容覆盖写入到文件2)
  4. echo “内容” >> 文件 (追加写入文件)

> 覆盖写
>> 追加写
如果目标文件不存在,系统会自动创建。

ln指令
软链接也称为符号链接,类似于windows中的快捷方式,主要存放了链接其它文件的路径。
基本语法:
ln -s [原文件或目录] [软链接名] (给原文件创建一个软链接)
当我们使用pwd查看当前所在目录时,仍然看到的是软链接所在目录。

history指令
查看已经执行过的历史命令,也可以执行历史命令
基本语法:
history (显示所有历史命令)
history 10 (显示最近使用过的10个指令)
!5 (执行编号为5的指令)

时间日期类

date指令 显示当前日期
基本语法:
date (显示当前日期)
date +%Y (显示当前年份)
date +%m(显示当前月份)
date +%d(显示当前是哪一天)
date “+%Y-%m-%d %H:%M:%S”(显示年月日 时分秒)
date -s 字符串时间 (设置日期,如:date -s “2021-10-26 20:19:00”)

cal指令
基本语法: cal [选项] (不加选项,显示本月日历)
cal 2020 (显示2020年日历)

查找指令

find指令
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的子目录或文件显示在终端
基本语法: find [搜索范围] [选项]

find [搜索范围] [-name 文件名] (按照文件名查找)
find [搜索范围] [-user 用户名] (按照用户名查找)
find [搜索范围] [-size n] (按照指定大小查找 +n大于 -n小于 n等于 单位:k 、M、G)

locate指令
locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无须遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate数据库.
基本语法:locate 搜索文件
特别说明 :由于locate指令基于数据库进行查询 ,所以在第一次运行前,必须使用updatedp指令创建locate数据库。

which指令
查看某个指令在某个目录下
基本语法:which [指令]

grep指令和管道符号
grep过滤查找,管道符,“ | ” 表示将前一个命令的输出结果传递给后面的命令处理
基本语法:grep [选项] 查找内容 源文件
选项:
-n 显示匹配行及行号
-i 忽略字母大小写

例如:在hello.txt文件下查找 关键字 yes所在行并显示行号
写法一:cat -n /home/hello.txt | grep “yes”
写法二:grep -n “yes” /home/hello.txt

压缩和解压

gzip和gunzip指令
gzip用于压缩文件,gunzip用于解压
基本语法:
gzip 文件 (压缩文件为*.gz文件)
gunzip 文件.gz(解压缩文件)

zip和unzip指令
zip用于压缩,unzip用于解压
基本语法:
zip [选项] xxx.zip 将要压缩的内容 (压缩文件或者目录)
unzip [选项] xxx.zip (解压文件)
zip常用选项:
-r 递归压缩 即压缩目录
unzip常用选项
-d [目录] 指定文件压缩后存放目录

tar指令
tar指令 用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能(gzip)实现的 ,最后打包后的文件是.tar.gz的文件
基本语法:
tar [选项] xxx.tar.gz 打包内容(选项一般为 -zcvf)
tar [选项] xxx.tar.gz -C [目标目录](解压到指定目录,选项一般为 -zxvf)
选项说明:
-c 产生 . tar 打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩,解包同时解压
-x 解包 . tar文件

Linux组基本介绍

在linux中每一个用户都必须属于一个组,不能独立于组外。在linux中每个文件有所有者,所在组,其它组的概念

文件/目录 所有者
一般为文件的创建者,谁创建了该文件,就自然的成为了该文件的所有者。

  • 查看文件的所有者
    ls -ahl
  • 修改文件所有者(需root权限)
    chown 用户名 文件名

组的创建
groupadd 组名

文件/目录所在组
查看文件目录所在组
基本指令:ls-ahl 或 ll

修改文件所在组
基本指令: chgrp 组名 文件名

其它组
除了文件的所有者和所在组的用户外,系统其它用户都是文件的其他组

改变用户所在组
用root的管理权限可以改变某个用户所在组。
基本指令:
usermod -g 新组名 用户名
usermod -d 目录 用户名 (改变该用户登录的初始目录,用户需要有进入到新目录的权限)

权限的基本介绍


- 代表普通文件
在这里插入图片描述
在这里插入图片描述
修改文件/目录权限

  • 第一种方式:+、-、= 变更权限
    u:所有者 g:所有组 o:其它组 a:所有人(u、g、o总和)

    1. chmod u=[rwx],g=[rwx],o=[rwx] 文件/目录名
    2. chmod o+w 文件/目录名(给其它组增加w权限)
    3. chmod a-x 文件/目录名(取消所有人的x权限)
  • 第二种方式:通过数字变更权限
    chmod u=rwx,g=rx,o=x 文件/目录名
    相当于
    chmod 751 文件/目录名

修改文件所有者
基本命令:
chown [选项] newowner 文件/目录 (改变所有者)
chown [选项] newowner:newgroup 文件/目录 (改变所有者和所在组)
选项:-R 如果是目录则使其下所有子文件或目录递归生效

修改文件/目录所属组
基本语法:chgrp newgroup 文件/目录名(改变所属组)

定时任务调度

crond定时任务

概述
任务调度:是指系统在某个时间执行特定的任务或者命令
任务调度分类:1.系统工作:有些重要的工作必须周而复始的执行。如病毒扫描等
个别用户工作:个别用户可能希望执行某些程序,比如对MySQL数据库的备份

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

service crond restart (重启任务调度)

快速入门
设置任务调度文件:/etc/crontab
设置个人任务调度。执行crontab -e命令.。
接着输入任务到调度文件
如:*/1 * * * * ls -l /etc/ > /tmp/to.txt
意思是每小时的每分钟 执行一次 ls -l /etc/ > /tmp/to.txt

参数细节说明:
在这里插入图片描述
特殊符号说明:
在这里插入图片描述
特定执行案例:
在这里插入图片描述

at定时任务

基本介绍

  1. at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行。
  2. 默认情况下,atd守护进程每隔60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。
  3. at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了
  4. 在使用at命令的时候,一定要保证atd进程的启动,可以使用相关进程来查看
    ps -ef | grep atd (可以检测atd进程是否运行)

at命令格式
at [选项] [时间]
ctrl + d 结束at命令的输入

at命令选项
在这里插入图片描述
at时间定义
在这里插入图片描述

Linux分区机制

原理介绍

  1. Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成。
  2. Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
  3. 示意图
    在这里插入图片描述

Linux分区

硬盘说明

  1. Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
  2. 对于IDE硬盘,驱动器标识符为“ hdx~ ”,其中"hd"表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘)," ~ "代表分区,前四个分区用数字1-4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
  3. 对于SCSI硬盘则标识为“ sdx~ ”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。

查看所有设备挂载情况
命令:lsblk

挂载一块新硬盘

  • 虚拟机增加硬盘步骤1
    在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,直到完成,然后重启系统(才能识别)。

  • 虚拟机增加硬盘步骤2
    分区命令:fdisk /dev/sdb
    开始对/sdb分区
    m 显示命令列表
    p 显示磁盘分区 同fdisk -l
    n 新增分区
    d 删除分区
    w 写入并退出
    说明: 开始分区后输入n,新增分区,然后选择p,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q。

  • 虚拟机增加硬盘步骤3
    格式化磁盘
    分区命令:mkfs -t ext4 /dev/sdb1
    其中ext4是分区类型

  • 虚拟机增加硬盘步骤4
    挂载:将一个分区与一个目录联系起来,
    mount 设备名称 挂载目录
    例如:mount /dev/sdb1 /newdisk
    卸载:将一个分区与一个目录联系取消,
    umount 设备名称 或 挂载目录
    例如: umount /dev/sdb1 或者 umount /newdisk

用命令行挂载,重启后会失效

  • 虚拟机增加硬盘步骤5
    永久挂载:通过修改/etc/fstab实现挂载
    添加完成后,执行mount -a 即刻生效
    在这里插入图片描述

磁盘使用查询

查询系统整体磁盘使用情况

基本语法:df -h

查询指定目录的磁盘占用情况

基本语法:du -h [指定目录]
查询指定目录的磁盘占用情况,默认为当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值

磁盘情况-工作实用指令

在这里插入图片描述

Linux网络配置

  • 查看虚拟网络编辑器和修改IP地址
    在这里插入图片描述

  • 查看网关
    在这里插入图片描述

  • 查看网络IP和网关

  1. 在Windows下查看VMnet8的网络配置(ipconfig指令)
  2. 查看Linux的网络配置(ifconfig)
  • Linux网络环境配置(自动获取)
    说明:登录后,通过界面的设置自动获取ip,
    特点:Linux启动后会自动获取IP(通过DHCP协议)
    缺点:每次自动获取的IP地址可能会不一样
    在这里插入图片描述

  • Linux网络配置(指定IP)
    说明:直接修改配置文件来指定IP,并可以连接到外网(推荐)
    编辑 vi/etc/sysconfig/network-scripts/ifcfg-ens33
    要求:将IP地址配置为静态的
    在这里插入图片描述
    重启网络服务或者重启系统生效
    service network restart、reboot

设置主机名和hosts映射

  • 设置主机名
  1. 为了方便记忆,可以给linux系统设置主机名,也可以根据需要修改主机名
  2. 指令hostname:查看主机名
  3. 修改文件在/etc/hostname指定
  4. 修改后,重启生效
  • 设置hosts映射
    思考:如何通过主机名能够找到(ping)某个Linux系统
  1. Windows
    在C:\Windows\System32\drivers\etc\hosts 文件指定即可
  2. Linux
    在/etc/hosts 文件 指定

主机名解析过程分析(Hosts、DNS)

  • Hosts是什么
    一个文本文件,用来记录IP和Hostname(主机名)的映射关系
  • DNS
  1. DNS,Domain Name System 域名系统
  2. 是互联网上作为域名和IP地址相互映射的一个分布式数据库
  • 主机名解析机制分析
  1. 浏览器先检查浏览器缓存中有没有该域名解析IP地址,有就调用;如果没有,就检查DNS解析器缓存,如果有直接返回IP完成解析。这两个缓存可以理解为本地解析器缓存。
  2. 一般来说,当电脑第一次成功访问某一个网站之后,在一定时间内,浏览器或操作系统会缓存他的IP地址(DNS解析记录)。如在cmd窗口输入:ipconfig/displaydns(DNS域名解析缓存)、ipconfig/flushdns(清空缓存).
  3. 如果本地解析器没有找到对应的映射,检查系统中hosts文件有没有配置对应的域名IP映射,如果有,则完成解析并返回。
  4. 如果本地DNS解析器缓存和hosts文件中均没有找到对应的IP,则到域名服务DNS进行解析。

进程管理

显示系统执行的进程

命令:ps [选项]
选项说明:
-a 显示当前终端所有进程信息
-u 以用户格式显示进程信息
-x 显示后台进程运行的参数

在这里插入图片描述
在这里插入图片描述

终止进程kill和killall

基本语法:
kill [选项] 进程号
killall 进程名称(同时终止子进程)

常用选项:
-9:强迫进程立即停止

查看进程树

基本语法:pstree [选项] ,可以更加直观查看进程信息
常用选项:
-p: 显示进程的pid
-u:显示进程的所属用户

服务管理

基本介绍:

服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld,sshd,防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。

service管理指令:

  1. service 服务名[start | stop | restart | reload | status]
  2. 在CentOS7.0以后很多服务不再用service,而是systemctl
  3. service指令管理的服务在 /etc/init.d/查看
    • setup 可以查看所有系统服务
    • ls -l /etc/init.d/ 查看个别服务

服务运行级别

  • Linux系统有7种运行级别(runlevel):常用的是级别3和5
    运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
    运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登录
    运行级别2:多用户状态(没有NFS),不支持网络
    运行级别3:完全的多用户状态(有NFS),无界面,登录后进入控制台命令行模式
    运行级别4:系统未使用,保留
    运行级别5:X11控制台,登录后进入图形GUI模式
    运行级别6:系统正常关闭并且重启,默认运行级别不能设为6,否则不能正常启动

在CentOS7以前,/etc/inittab文件中进行了简化:
multi-user.target:analogous to runlevel 3(运行级别3)
graphical.target:analogous to runlevel 5(运行级别5)

显示默认运行级别命令:systemctl get-default
设置默认运行级别命令:systemctl set-default TARGET.target(systemctl set-default multi-user.target,设置默认运行级别3)

服务管理

  • chkconfig指令
  1. 通过chkconfig命令可以给服务的各个运行级别设置自启动/关闭
  2. chkconfig指令管理的服务在/etc/init.d查看
  3. 注意:CentOS7.0以后,很多服务使用systemctl管理
  • chkconfig基本语法
  1. 查看服务 chkconfig --list [ | grep xxx]
  2. chkconfig 服务名 --list
  3. chkconfig --level 5 服务名 on/off
  • 打开或者关闭指定端口
    在真正的生产环境,往往不会将防火墙打开,但问题来了,如果我们不把防火墙打开,那么外部请求数据包就不能跟服务器监听端口通讯,这时需要打开指定端口

  • firewall指令
    打开端口:firewall-cmd --permanent --add-port=端口号/协议
    关闭端口: firewall-cmd --permanent --remove-port=端口号/协议
    重新载入才能生效:firewall-cmd --reload
    查询端口是否开放:firewall-cmd --query-port=端口号/协议

动态监控进程

介绍:top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的进程(ctrl+c退出)
基本语法:top [选项]
选项说明:
-d 秒数:指定top命令每隔几秒更新,默认是3秒
-i :使top不显示任何闲置或僵死进程
-p:通过指定监控进程ID来仅仅监控某个进程的状态

交互操作说明:
P:以CPU使用率排序
M:以内存的使用率排序
N:以PID排序
q:退出
输入u然后回车,输入用户名:监视特定用户
输入k然后回车,输入要结束的进程ID:终止指定进程

监控网络状态

基本语法:netstat [选项]
选项说明:
-an 按一定顺序排列输出
-p 显示是哪个进程在调用

RPM与YUM

RPM介绍:
rpm用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat 软件包管理工具)的缩写,类似于Windows的setup.exe,这一格式文件名称虽然打上了RedHat的标志,但理念是相通的。

  • rpm包的简单查询指令
    查询已经安装的rpm列表 rpm -qa|grep xx
    查询软件包是否安装:rpm -q 软件包名
    查询软件包信息: rpm -qi firefox
    查询软件包中的文件:rpm -ql 软件包名
    查询文件所属软件包:rpm -qf 文件全路径名
    在这里插入图片描述

  • 卸载RPM包
    rpm -e rpm包名

  • 安装rpm包
    rpm -ivh rpm包全路径名
    参数说明:
    -i: install安装
    -v:verbose提示
    -h: hash进度条

YUM介绍:
yum是一个shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,
可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

  • yum基本指令
    查询软件列表:yum list | grep xx
    安装指定yum包:yum install xxx 下载安装

JDK安装

  1. mkdir /opt/jdk
  2. 通过xftp7 上传jdk-8u311-linux-x64.tar.gz 到/open/jdk下
  3. cd /opt/jdk
  4. 解压 tar -zxvf jdk-8u311-linux-x64.tar.gz
  5. mkdir /usr/local/java
  6. mv opt/jdk/jdk1.8.0_311 /usr/local/java
  7. 配置环境变量的配置文件vim /etc/profile
  8. export JAVA_HOME=/usr/local/java/jdk1.8.0_311
  9. export PATH=$JAVA_HOME/bin:$PATH
  10. source /etc/profile [让新的环境变量生效]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值