第二部分

1. 远程登录,远程传输

1.1 远程登录

1.1.1 登录前提

需要Linux开启一个sshd的服务,监听22号端口,一般默认是开启的

 

1. 查看是否开启:

  chkconfig --list | grep sshd

 

没有开启,则手动开启:

  chkconfig --level 5 sshd on

  reboot

 

 

1.1.2 Xshell连接配置

1. 查看虚拟机ip:

  ifconfig

 

 

2. 配置Xshell:

 

 

 

 

3. 测试

1. 在/home目录下创建文件

  cd /home
  touch hello.py

 

 

 

 

2. 重启服务器

  reboot

1.2 远程登录

1. 配置好一个xshell

2. 正确输入账号密码即可,当输入框呈现如下变化即可。

 

 

 

2. vi 和 vim 编辑器的使用

vivim 类似于windows的文本编辑器

所有的Linux系统都会内置vi文本编辑器

vim可以看做是vi增强版,具有程序编辑能力,支持语法高亮,代码补全,编译错误跳转等功能,因此被广泛使用

如果Linux中没有vim这个命令,可以手动下载:

  yum install vim

 

2.1 vi 和 vim 的三种常见模式

2.1.1 正常模式

正常模式下,我们可以使用快捷键对文本进行操作,比如:复制--yy 粘贴:p

以vim打开文档,直接进入的就是一般模式,这个模式下,我们可以使用[上下左右]来移动光标.delet删除末尾字符,等等(具体的快捷键后面会说)

2.1.2 插入模式

在插入模式下,程序员可以输入内容

按下i,o,a,r,I,O,A,R中任意一个键,会进入插入模式.

正常习惯按i,因为好记,insert

2.1.3 命令行模式

这个模式下,程序员可以输入相关指令,来完成比如:存盘,离开,显示行号等功能(具体指令后面会说)

2.2 三种模式之间的转换

 

 

2.3  常用快捷键案例---正常模式

1.拷贝当前行,并粘贴

   拷贝:yy 粘贴:p

2.拷贝当前行向下5行,并粘贴

  拷贝5行:5yy

3.删除当前行

  删除:dd

4.删除当前行向下5行

  删除5行:5dd

5.光标移至最后一行

  G

6.光标移至首行

  gg

7.移动到第7行

  7gg

8.撤销

  u

2.4 常用命令--命令行模式

1.查找某个关键字

  /关键字

2.取消高亮

  :nohl

3.显示行号

  :set nu

4.取消行号

  :set nonu

 

3. 关机,重启和用户切换注销

3.1 关机/重启命令

shutdown命令

  shutdown -h now :立即关机
  shutdown -h 2 :2分钟后关机
  shutdown -r now :立即重启
  shutdown -r 1 :1分钟后重启

halt

  关机

reboot

  重启

sync:

  把内存的数据同步到磁盘

 

特别注意:当关机或重启前,都应当先执行一下sync指令,把内存的数据写入磁盘,防止数据丢失

3.2  用户切换/注销

3.2.1 基本说明:

正常在公司是不会给你root权限的,就算给你了root权限,也不要拿root用户直接登录,避免操作失误

正常情况都是使用普通用户登录,然后主要管理员权限的时候再切换

3.2.2 切换用户

su - 用户名 切换用户
exit 回到原来用户

3.2.3 注销用户

前提:在图形界面这个级别无效
logout

4. 用户管理

4.1 知识储备

 

 1.Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

2.Linux 的用户需要至少要属于一个组

4.2 添加用户

4.2.1 基本语法

useradd [选项] 用户名

例子:
  useradd lxx

说明:
  1.创建用户成功后会自动创建和用户名同名的家目录

 

指定家目录

  useradd -d 目录路径 用户名 目录可以不存在


指定用户组

  useradd -g 用户组名 用户名 组一定得先创建好

4.3 给用户指定或修改密码

4.3.1 基本语法

passwd 用户名

4.4 删除用户

4.4.1 基本语法

userdel 用户名 删除用户,保留家目录
userdel -r 用户名 删除用户,不保留家目录

4.4.2 说明

正常在我们删除用户的时候,一般会保留家目录

4.5 查询用户信息

4.5.1 基本语法

id 用户名

 

用户名不存在

 

 

4.6 切换用户

4.6.1 说明

当用户权限不够时,可以通过su -,来切换到高权限用户,比如root用户

4.6.2 基本语法

su - 用户名 切换用户
exit 返回原来用户

4.6.3 补充说明

从高权限用户切换到低权限用户时,不需要密码

4.7 用户组

4.7.1 说明

用以对具备同一权限的用户进行统一管理

就好比:运维组,技术组

 

8.7.2 增加组

groupadd 组名

8.7.3 删除组

groupdel 组名

前提:组内不能有用户,否则无法删除

 

4.8 修改用户的组

4.8.1 基本指令

usermod -g 组名 用户名

 

 

4.9 /etc/passwd 文件

这是用户的配置文件,记录着用户的各种信息

 

 

每行含义:用户名:口令(不显示):用户id:组id:注释性描述:主目录:Shell

4.10 /etc/shadow 文件

口令配置文件

存用户密码和相关时间的地方

4.11 /etc/group 文件

组的配置文件

 

 

5. 常用指令

5.1 指定运行级别

运行级别说明:

0:关机

1:单用户[找回丢失密码]

2:多用户状态[无网络服务]

3:多用户状态[有网络服务]

4:保留级别

5:图形界面

6:系统重启

 

5.2 修改默认运行级别

vim /etc/inittab

修改最后一行:
id:5:initdefault:

5.3 切换运行级别

5.3.1 基本指令

init [012356]

5.4 找回root密码

如何找回 root 密码,如果我们不小心,忘记 root 密码,怎么找回。

思路: 进入到 单用户模式,然后修改 root 密码。因为进入单用户模式,root 不需要密码就可以登录。

开机->在引导时输入 回车键-> 看到一个界面输入 e -> 看到一个新的界面,选中第二行(编辑内核)在输入 e-> 在这行最后输入1 ,再输入 回车键->再次输入 b ,这时就会进入到单用户模式。

 

 

 

 

 

 

 

 

 

 

5.5 文件目录指令

5.5.1 pwd指令

pwd 显示当前所在的目录

5.5.2 ls指令

ls [选项] [目录或文件] 查看文件信息
ls -a 查看所有文件和目录,包括隐藏的
ls -l 以列表的方式显示

5.5.3 cd指令

cd 路径
cd ~: 回到家目录
cd ..: 回到上一级目录

5.5.4 mkdir指令

mkdir [选项] 路径 创建文件夹
mkdir -p 路径 创建多级文件夹

5.5.5 rmdir指令

rmdir [选项] 路径 删除空文件夹
rmdir -p 路径 递归删除空文件夹

文件夹下有内容,则无法删除

5.5.6 touch 指令

touch 文件路径

可以一次创建多个文件
touch 文件路径1 文件路径2

5.5.7 cp指令

拷贝文件到目标路径

 

cp [选项] 源路径 目标路径

cp 源路径 目标路径 拷贝单个文件
cp -r 源路径 目标路径 拷贝文件夹

 

当拷贝时发现相同文件,会提示[是否覆盖?]

\cp [选项] 源路径 目标路径 取消提示,强制复制

5.5.8 rm指令

删除目录或者文件

基本语法

rm [选项] 目标路径

rm 文件路径 删除文件
rm -r 文件夹路径 删除文件夹
rm -f xxxx 强制删除不提示

5.5.9 mv指令

移动文件或重命名

基本语法

mv 源路径 目标路径

5.5.10 cat指令

显示文件内容

 

基本语法

cat [选项] 文件路径

cat 文件路径 显示文件内容
cat -n 文件路径 显示文件内容,并显示行号

 

正常情况为了方便阅读,我们会在cat指令最后加上管道符" |",把内容传给more,分页显示

cat -n /etc/profile | more

5.5.11 more指令

more指令是基于vi编辑器的文本过滤器,以全屏的方式按页显示文本内容

more指令中内置了很多快捷键,用起来很方便

基本语法

more 文件路径

 

快捷键

  空格 向下翻一页
  Enter 向下翻一行
  q 立即离开
  Ctrl+F 向下滚动一屏
  Ctrl+B 向上滚动一屏
  = 显示当前行号
  :f 输出文件名和当前行号

5.5.12 less指令

比more更加强大,功能比more更过,这里只介绍部分

经常用来读大日志文件

 

基本语法

  less 文件路径

 

快捷键

  空格 向下翻一页
  pagedown 向下翻一页
  pageup 向上翻一页
  /字符串 向下查找[字符串],n下一个,N上一个
  ?字符串 向上查找[字符串],n下一个,N上一个
  q 离开less

5.5.13 >指令/>>指令

基本说明(常用指令)

把前方语句的结果存进文件,若文件不存在会自动创建

  >:输出重定向 会覆盖原来文件内容
  >>:追加重定向 追加到文件末尾

5.5.14 echo指令

把内容输出到控制台

如下:

  echo "我是杨家三少"
  echo $PATH

5.5.15 head指令

head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容

基本语法

head 文件路径 查看文件前10行
head -n 5 文件路径 查看文件前5行

5.5.15 tail指令

tail 用于显示文件的结尾部分内容,默认情况下tail指令显示文件的后10行内容

基本语法

  tail 文件路径 查看文件前10行
  tail -n 5 文件路径 查看文件前5行
  tail -f 文件路径 实时追踪文件所有的更新-----经常使用

5.5.16 ln指令

软链接也叫符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径

 

ln -s 源文件或源文件夹 软连接名

5.5.17 history指令

查看已经执行过历史命令,也可以执行历史指令

 

  history 查看所有的历史指令
  history 10 查看最近执行的10条指令
  !100 执行编号为100的指令

5.6 时间日期类

5.6.1 date 指令

基本语法

  date 显示当前日期
  data +%Y 显示当前年份
  data +%m 显示当前月份
  data +%d 显示当前天
  data +%Y-%m-%d %H:%M:%S

5.6.2 cal指令

查看日历

  cal 显示当前日历
  cal 2020 显示2020年的日历

5.6.3 find指令

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

 

find [范围] [选项]
范围:指路径,不写默认从当前向下找,类似于windows的查找

选项:
  -name 文件名 按文件名查找
  -user 用户名 查找属于该用户的所有文件
  -size 按文件大小查找
    +20M
    -20M
    20M
    20K

5.6.4 grep 指令 和 管道符号 |

管道符:"|",表示将前一个命令的处理结果输出传递给后面的命令处理

grep:过滤查找

  grep [选项] 过滤内容

选项:
  -n 显示匹配行及行号
  -i 忽略字母大小写

5.7 压缩和解压类

5.7.1 gzip/gunzip 指令

用于压缩和解压文件

  gzip 文件路径
  gunzip gz文件路径

 

说明:使用gzip压缩文件之后,不会保留原来的文件

5.7.2 zip/unzip 指令

zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的

 

zip [选项] xxx.zip 被压缩内容 压缩文件或者目录
  -r 压缩目录

  unzip [选项] xxx.zip 解压文件
  -d 目录 指定压缩后的存放目录

5.7.3 tar指令

tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件

 

压缩:
  tar -zcvf xx.tar.gz 被压缩内容 压缩
  tar -zxvf xx.tar.gz -C 目标路径 解压

6. 组管理与权限管理

6.1 Linux组基本介绍

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

 

 

 

 

 

6.2 文件/目录 所有者

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

6.2.1 查看文件的所有者

ls -ahl

6.2.2 修改文件所有者

chown 用户名 文件名

6.3 组的创建

groupadd 组名

6.4 文件/目录 所在组

当某个用户创建了一个当某个用户创建了一个文件后,默认这个文件的所在组就是该用户所在的组。

6.4.1 查看文件/目录 所在组

ls –ahl

6.4.2 修改文件所在组

chgrp 组名 文件名

6.5 其他组

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

6.6 改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的用 root 的管理权限可以改变某个用户所在的组

6.6.1 改变用户所在组

usermod –g 组名 用户名

6.7 权限基本介绍

ls -l
  -rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc

0-9 位说明
  第 0 位确定文件类型(d,-,l)
  第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限
  第 4-6 位确定所属组(同用户组的)拥有该文件的权限
  第 7-9 位确定其他用户拥有该文件的权限

6.8 rwx权限详解

6.8.1 rwx作用到文件

r:可读
w:可写[可写不代表可以删除,删除一个文件的前提是对文件所在的目录有写的权限]
x:可执行

6.8.2 rwx作用到目录

r:可读(可用ls查看目录内容)
w:可写[可在目录内创建+删除+重命名文件或目录]
x:可执行[可以进入目录]

6.9 文件及目录权限实际案例

-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc

- 表示类型为文件
  第一组rwx: 表示所有者 可读 可写 可执行
  第二组rw-: 表示同组用户 可读 可写 但不能执行
  第三组r--: 表示其他用户 只可读

可用数字表示:
  r = 4
  w = 2
  x = 1
  因此rwx = 4+2+1 = 7

6.10 修改权限

chmod 权限变更格式 文件或目录路径

 

权限变更格式一:

  u:所有者 g:所有组 o:其他人 a:所有人

  1. u=rwx,g=rx,o=x
  2. o+w 其它用户增加w权限
  3. a-x 所有人减去执行权限

 

权限变更格式二:

  r = 4 w = 2 x = 1 rwx = 7 rx = 5
  chmod u=rwx,g=rx,o=x 可以写成 chmod 751

6.11 修改文件所有者

chown newowner file 改变文件所有者
chown -R newowner 文件夹 使得所有子文件或子目录生效

6.12 修改文件所在组

chgrp newgroup file 改变文件所有组
chgrp -R newgroup 文件夹 使得所有子文件或子目录生效

6.13 小案例-警察和土匪游戏

police,bandit
jack, jerry: 警 察
xh, xq: 土 匪

1.创建组
2.创建用户
3.jack 创建一个文件,自己可以读写,本组人可以读,其它组没人任何权限
4.jack 修改该文件,让其它组人可以读, 本组人可以读写
5.xh 投靠 警察,看看是否可以读写
6.使用 jack 给他的家目录 /home/jack 的所在组一个 rx 的权限
7.xh重新注销再到 jack 目录,操作 jack 的文件

6.14 练习

练习:
练习文件权限管理[课堂练习]

1.建立两个组(神仙,妖怪)
2.建立四个用户(唐僧,悟空,八戒,沙僧)
3.设置密码
4.把悟空,八戒放入妖怪;唐僧,沙僧放入神仙
5.用悟空建立一个文件 (monkey.py 该文件要输出 i am monkey)
6.给八戒一个可以r,w的权限,唐僧,沙僧对该文件没有权限
7.八戒修改 monkey.py 加入一句话( i am pig)
8.把 沙僧 放入妖怪组
9.让沙僧修改monkey.py, 加入一句话 ("我是沙僧,我是妖怪!");

 7. crond任务调度

7.1示意图

7.2 基本语法

crontab [选项]

  -e : bianji crontab定时任务
  -l : 查询crontab
  -r : 删除当前用户所有的crontab任务

例子: 每分钟执行查看一次/ect目录,把目录内容写进/tml/a.txt下

具体实现步骤:
  1.crontab –e
  2.*/ 1 * * * * ls -l /etc >> /tmp/a.txt
  3.保存退出

7.3 参数细节说明

 

 

时间参数案例:
1.每天22点45分执行
  45 22 * * *
2.每周一的17点执行
  0 17 * * 1
3.每月1号的15号的凌晨5点执行
  0 5 1,15 * *
4.每周一到周五的凌晨4点40份执行
  40 4 * * 1-5
5.每天的凌晨4点,每隔10分钟执行一次命令
  */10 4 * * *

8. Linux 磁盘分区、挂载

8.1 分区基础知识

8.1.1 分区方式

mbr分区:

  1.最多支持四个主分区
  2.系统只能安装在主分区上
  3.扩展分区要占一个主分区
  4.mbr最大只支持2TB,但拥有最好的兼容性

gpt分区:

  1.支持无限多个主分区(但操作系统会限制,比如windows下最多支持128个主分区)
  2.最大支持18EB的容量(1EB=1024PB)
  3.windows7 64位后支持gpt模式

8.1.2 windows下的磁盘分区

 

 

 

8.2 Linux分区

8.2.1 原理介绍

    1.Linux 来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux 中每个分区都是用来组成整个文件系统的一部分

    2.Linux 采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录, 且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得

 

 

 

8.2.2 硬盘说明

现在主要的硬盘都是scsi硬盘

  linux中对scsi硬盘的标识为"sdx~"

如:

  sda1:表示该磁盘的分区1

  sda2:表示该磁盘的分区2

 

8.3 挂载的经典案例

需求是给我们的 Linux 系统增加一个新的硬盘,并且挂载到/home/newdisk

 

步骤:
  1.虚拟机添加硬盘
  2.分区
    fdisk /dev/sdb
      m 选择帮助
      n 增加分区
      p 划主分区
      1 主分区1
      1 默认
      w 写入分区信息并退出

  3.格式化
    mkfs -t ext4 /dev/sdb1

  4.挂载
    mount /dev/sdb1 /home/newdisk


  5.设置自动挂载
    vim /etc/fstab
    (内容如下)
      mount -a 立即生效

 

[root@wangyong home]# lsblk

[root@wangyong home]# cd /dev
[root@wangyong dev]# ls -l
[root@wangyong dev]# fdisk /dev/sdb

Command (m for help): m
Command (m for help): n
Command (m for help): m

Command (m for help): w
[root@wangyong dev]# lsblk
mkfs -t ext4 /dev/sdb1mkfs -t ext4 /dev/sdb1
lsblk
ls -l
mkfs -t ext4 /dev/sdb1
lsblk
lsblk -f
mkdir /home/newdisk
mount /dev/sdb1 /home/newdisk
lsblk
vim /etc/fstab
/dev/sdb1 /home/newdisk ext4 defaults 0 0
mount -a

8.4 磁盘情况查询

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

df -lh

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

du /目录
  -h 带计量单位
  -s 指令目录占用磁盘大小
  -a 含文件
  -c 列出明细,并显示汇总值
  --max-depth=1 子目录深度

例子:
  查询 /opt 目录的磁盘占用情况,深度为 1

  du -ach --max-depth=1 /opt

8.4.3 常见案例

1.统计/home 文件夹下文件的个数
  ls -l /home | grep '^-' | wc -l
2.统计/home 文件夹下目录的个数
  ls -l /home | grep '^d' | wc -l
3.统计/home 文件夹下文件的个数,包括子文件夹里的
  ls -lR /home | grep '^-' | wc -l
4.统计文件夹下目录的个数,包括子文件夹里的
  ls -lR /home | grep '^d' | wc -l

9. 网络配置

9.1 Linux网络配置原理图(NAT)

 

 

 

9.2 查看网络ip和网关

9.2.1 查看虚拟网络编辑器

 

 

 

9.2.2 修改ip地址(修改虚拟网络的ip)

9.2.3 查看网关

9.2.4 查看windows环境的中 VMnet8

网络配置 (ipconfig 指令)

1.使用命令查看

  ipconfig

2.界面查看

9.3 ping 测试主机之间网络连通

9.3.1 基本语法

ping 目标ip   测试当前服务器是否可以连接目的主机

9.3.2 小例子

测试当前服务器是否可以连接百度

  ping www.baidu.com

9.4 Linux网络环境配置

9.4.1 第一种方法(自动获取)

 

 

 此方式的缺点:

  linux 启动后会自动获取 IP,缺点是每次自动获取的 ip 地址可能不一样。这个不适用于做服务器,因为我们的服务器的 ip 需要时固定的。

9.4.2 第二种方法(指定固定ip)

直 接 修 改 配 置 文 件 来 指 定 IP, 并 可 以 连 接 到 外 网

  vim  /etc/sysconfig/network-scripts/ifcfg-eth0

 

 

 

修改配置文件后,要重启网络服务才能生效 

  service network restart

10. 进程管理

10.1 基本介绍

  1.在 LINUX 中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个 ID 号
  2.每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程
  3.每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行
  4.一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束

10.2 显示系统执行的进程

10.2.1 说明

查看进行使用的指令是 ps ,一般来说使用的参数是 ps -aux,ps -ef,正常与grep连用

10.2.2 ps指令详解

BSD风格 详解

  user 用户名称
  pid 进程号
  %cpu 进程占用cpu百分比
  %%mem 进程占用物理内存的百分比
  vsz 进程占用虚拟内存的大小
  rss 进程占用物理内存的大小
  tty 终端名称(后台则为?)
  stat 进程状态
  S:睡眠
  s:会话的先导进程
  N:进程拥有比普通优先级更低的优先级
  R:正在运行
  D:短期等待
  Z:僵尸进程
  T:被跟踪或者被停止
  start 进程启动时间
  time 使用cpu总时间
  command 启动进程所用的命令和参数,如果过长会被截断显示

 

system V 风格详解

  uid 用户id
  pid 进程id
  ppid 父进程id
  C 进程占cpu百分比
  stime 进程启动时间
  tty 终端名称(后台则为?)
  cmd 启动进程所用的命令和参数

10.3 终止进程kill和killall

10.3.1 说明

若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。

10.3.2 基本语法:

kill 进程号
  -9 强迫进程立即停止
killall 进程名称

10.4 查看进程树 pstree

pstree [选项]
  -p 查看进程pid
  -u 查看进程所属用户

10.5 服务(service)管理

10.5.1 说明

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

10.5.2 基本使用

1.查看当前防火墙的状况,关闭防火墙和重启防火墙(iptables)

 

 

service这种方式关闭或者打开服务只是临时生效

重启后,还是回到以前对服务的设置

10.5.4 查看服务名

/etc/init.d 此文件夹下放着系统都有哪些服务

 

ls -l /etc/init.d

10.5.5 服务器运行级别(runlevel)

查看或者修改默认级别: vi /etc/inittab

 

Linux 系统有 7 种运行级别(runlevel):常用的是级别 3 和 5

运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动

运行级别 1:单用户工作状态,root 权限,用于系统维护,禁止远程登陆

运行级别 2:多用户状态(没有 NFS),不支持网络

运行级别 3:完全的多用户状态(有 NFS),登陆后进入控制台命令行模式

运行级别 4:系统未使用,保留

运行级别 5:X11 控制台,登陆后进入图形 GUI 模式

运行级别 6:系统正常关闭并重启,默认运行级别不能设为 6,否则不能正常启动

10.5.6 开机流程说明

 

 

 

10.5.7 chkconfig指令

 

说明

  通过 chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭

基本语法

  chkconfig 查看每个服务的配置
  chkconfig 服务名 查看具体服务的配置
  chkconfig --level 5 服务名 on/off 给服务设置是否自动启动

例子

  1.请显示当前系统所有服务的各个运行级别的运行状态
    chkconfig
  2.请查看 sshd 服务的运行状态
    chkconfig | grep sshd
  3.将 sshd 服务在运行级别 5 下设置为不自动启动,看看有什么效果?
    chkconfig --level 5 sshd off
  4.当运行级别为 5 时,关闭防火墙。
    chkconfig --level 5 iptable off
  5.在所有运行级别下,关闭防火墙
    chkconfig iptable off
  6.在所有运行级别下,开启防火墙
    chkconfig iptable on

 

chkconfig 重新设置服务后自启动或关闭,需要重启机器 reboot 才能生效

10.6 动态监控进程

10.6.1 说明

top 与 ps 命令很相似。它们都用来显示正在执行的进程。Top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程

10.6.2 基本语法

top [选项]
  -d 指定每隔几秒更新,默认3秒
  -i 不显示任何闲置或者僵尸进程
  -p id号 监听指定进程


交互操作:
  P 以cpu使用率排序,默认就这个
  M 以内存使用率排序
  N 以pid排序
  u 监听具体用户
  k 终止指定进程
  q 退出top

 

10.6.3 例子

1.监视特定用户
  top
  u mac
2.终止指定的进程
  k
  pid
3.指定系统状态更新的时间(每隔 10 秒自动更新, 默认是 3 秒)
  top -d 3

11. rpm和yum

11.1 rpm包的管理

11.1.1 介绍

  一种用于互联网下载包的打包及安装工具.它生成具有.RPM 扩展名的文件。RPM 是 RedHat Package Manager(RedHat 软件包管理工具)的缩写,类似 windows 的 setup.exe

11.1.2 rpm包的简单查询指令

rpm –qa 查询已安装的 rpm 列表

11.1.3 rpm 包名的基本格式

一个 rpm 包名:firefox-45.0.1-1.el6.centos.x86_64.rpm

 

  firefox:名称
  45.0.1-1:版本号
  el6.centos.x86_64:centos6.X---64位

11.1.4 rpm其它指令

rpm -q 软件包名 查看是否已经安装
rpm -qi 软件包名 查看软件包信息
rpm -ql 软件包名 查看软件包中的文件安装位置
rpm -qf 文件(如:/etc/passwd) 查看某个文件属于哪个rpm包

11.1.5 卸载rpm包

rpm -e 包名

例子:
  rpm -e firefox

包依赖问题:如果其它软件包依赖于你要卸载的软件包,卸载时则会产生错误信息

   rpm -e --nodeps 包名 强制删除

11.1.6 安装rpm包

rpm -ivh RPM 包全路径名称

  i:install 安装
  v:verbose 提示
  h:hash 进度条

例子:安装firefox

  1.挂载centos的iso镜像文件
  2.media下找到rpm
  3.拷贝到opt下
  4.安装

11.2 yum

11.2.1 说明

Yum 是一个 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。使用 yum 的前提是可以联网。

类似python中的pip

11.2.2 基本指令

yum list|grep xx 查询yum服务器上是否有需要安装的包
yum install xxx 下载安装

 

posted on 2019-09-25 20:00  软饭攻城狮  阅读(265)  评论(0编辑  收藏  举报

导航