mirror of
https://github.com/dunwu/linux-tutorial.git
synced 2024-04-15 19:55:24 +08:00
📝 Writing docs.
This commit is contained in:
parent
0b72894dcd
commit
7a239ac360
@ -10,9 +10,9 @@
|
||||
- [Linux 文件压缩和解压](docs/linux/04.Linux文件压缩和解压.md) - 关键词:`tar`, `gzip`, `zip`, `unzip`
|
||||
- [Linux 用户管理](docs/linux/05.Linux用户管理.md) - 关键词:`groupadd`, `groupdel`, `groupmod`, `useradd`, `userdel`, `usermod`, `passwd`, `su`, `sudo`
|
||||
- [Linux 系统管理](docs/linux/06.Linux系统管理.md) - 关键词:`reboot`, `exit`, `shutdown`, `date`, `mount`, `umount`, `ps`, `kill`, `systemctl`, `service`, `crontab`
|
||||
- [Linux 性能管理](docs/linux/07.Linux性能管理.md) - 关键词:`df`, `du`, `top`, `free`, `iotop`
|
||||
- [Linux 网络管理](docs/linux/08.Linux网络管理.md) - 关键词:关键词:`curl`, `wget`, `telnet`, `ip`, `hostname`, `ifconfig`, `route`, `ssh`, `ssh-keygen`, `firewalld`, `iptables`, `host`, `nslookup`, `nc`/`netcat`, `ping`, `traceroute`, `netstat`
|
||||
- [yum 命令](docs/linux/yum.md)
|
||||
- [Linux 网络管理](docs/linux/07.Linux网络管理.md) - 关键词:关键词:`curl`, `wget`, `telnet`, `ip`, `hostname`, `ifconfig`, `route`, `ssh`, `ssh-keygen`, `firewalld`, `iptables`, `host`, `nslookup`, `nc`/`netcat`, `ping`, `traceroute`, `netstat`
|
||||
- [Linux 硬件管理](docs/linux/08.Linux硬件管理.md) - 关键词:`df`, `du`, `top`, `free`, `iotop`
|
||||
- [Linux 软件管理](docs/linux/09.Linux软件管理.md) - 关键词:`rpm`, `yum`, `apt-get`
|
||||
- [samba 使用详解](docs/linux/samba使用详解.md)
|
||||
- [命令行的艺术(转载)](docs/linux/命令行的艺术.md)
|
||||
|
||||
|
@ -10,12 +10,13 @@ tags:
|
||||
|
||||
# Linux 系统管理
|
||||
|
||||
> 关键词:`reboot`, `exit`, `shutdown`, `date`, `mount`, `umount`, `ps`, `kill`, `systemctl`, `service`, `crontab`
|
||||
> 关键词:`lsb_release`, `reboot`, `exit`, `shutdown`, `date`, `mount`, `umount`, `ps`, `kill`, `systemctl`, `service`, `crontab`
|
||||
|
||||
<!-- TOC depthFrom:2 depthTo:3 -->
|
||||
|
||||
- [Linux 系统管理要点](#linux-系统管理要点)
|
||||
- [命令常见用法](#命令常见用法)
|
||||
- [lsb_release](#lsb_release)
|
||||
- [reboot](#reboot)
|
||||
- [exit](#exit)
|
||||
- [shutdown](#shutdown)
|
||||
@ -32,6 +33,10 @@ tags:
|
||||
|
||||
## Linux 系统管理要点
|
||||
|
||||
- 查看 Linux 系统发行版本
|
||||
- 使用 [lsb_release](#lsb_release)(此命令适用于所有的 Linux 发行版本)
|
||||
- 使用 `cat /etc/redhat-release`(此方法只适合 Redhat 系的 Linux)
|
||||
- 查看 CPU 信息 - 使用 `cat /proc/cpuinfo`
|
||||
- 重新启动 Linux 操作系统 - 使用 [reboot](#reboot)
|
||||
- 退出 shell,并返回给定值 - 使用 [exit](#exit)
|
||||
- 关闭系统 - 使用 [shutdown](#shutdown)
|
||||
@ -46,6 +51,15 @@ tags:
|
||||
|
||||
## 命令常见用法
|
||||
|
||||
### lsb_release
|
||||
|
||||
lsb_release 不是 bash 默认命令,如果要使用,需要先安装。
|
||||
|
||||
安装方法:
|
||||
|
||||
1. 执行 `yum provides lsb_release`,查看支持 lsb_release 命令的包。
|
||||
2. 选择合适版本,执行类似这样的安装命令:`yum install -y redhat-lsb-core-4.1-27.el7.centos.1.x86_64`
|
||||
|
||||
### reboot
|
||||
|
||||
> reboot 命令用来重新启动正在运行的 Linux 操作系统。
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Linux 性能管理
|
||||
title: Linux 硬件管理
|
||||
date: 2018/02/27
|
||||
categories:
|
||||
- linux
|
||||
@ -8,13 +8,13 @@ tags:
|
||||
- command
|
||||
---
|
||||
|
||||
# Linux 性能管理
|
||||
# Linux 硬件管理
|
||||
|
||||
> 关键词:`df`, `du`, `top`, `free`, `iotop`
|
||||
|
||||
<!-- TOC depthFrom:2 depthTo:3 -->
|
||||
|
||||
- [Linux 性能管理要点](#linux-性能管理要点)
|
||||
- [Linux 硬件管理要点](#linux-硬件管理要点)
|
||||
- [命令常见用法](#命令常见用法)
|
||||
- [df](#df)
|
||||
- [du](#du)
|
||||
@ -24,7 +24,7 @@ tags:
|
||||
|
||||
<!-- /TOC -->
|
||||
|
||||
## Linux 性能管理要点
|
||||
## Linux 硬件管理要点
|
||||
|
||||
- 查看磁盘空间 - 使用 [df](#df)
|
||||
- 查看文件或目录的磁盘空间 - 使用 [du](#du)
|
210
docs/linux/09.Linux软件管理.md
Normal file
210
docs/linux/09.Linux软件管理.md
Normal file
@ -0,0 +1,210 @@
|
||||
---
|
||||
title: Linux 软件管理
|
||||
date: 2018/02/26
|
||||
categories:
|
||||
- linux
|
||||
tags:
|
||||
- linux
|
||||
---
|
||||
|
||||
# Linux 软件管理
|
||||
|
||||
> 关键词:`rpm`, `yum`, `apt-get`
|
||||
|
||||
<!-- TOC depthFrom:2 depthTo:3 -->
|
||||
|
||||
- [rpm](#rpm)
|
||||
- [yum](#yum)
|
||||
- [yum 源](#yum-源)
|
||||
- [apt-get](#apt-get)
|
||||
- [参考资料](#参考资料)
|
||||
|
||||
<!-- /TOC -->
|
||||
|
||||
## rpm
|
||||
|
||||
> rpm 命令是 RPM 软件包的管理工具。rpm 原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。
|
||||
>
|
||||
> 参考:http://man.linuxde.net/rpm
|
||||
|
||||
示例:
|
||||
|
||||
(1)安装 rpm 包
|
||||
|
||||
```
|
||||
rpm -ivh xxx.rpm
|
||||
```
|
||||
|
||||
(2)安装.src.rpm 软件包
|
||||
|
||||
这类软件包是包含了源代码的 rpm 包,在安装时需要进行编译
|
||||
|
||||
```sh
|
||||
rpm -i xxx.src.rpm
|
||||
cd /usr/src/redhat/SPECS
|
||||
rpmbuild -bp xxx.specs #一个和你的软件包同名的specs文件
|
||||
cd /usr/src/redhat/BUILD/xxx/ #一个和你的软件包同名的目录
|
||||
./configure #这一步和编译普通的源码软件一样,可以加上参数
|
||||
make
|
||||
make install
|
||||
```
|
||||
|
||||
(3)卸载 rpm 软件包
|
||||
|
||||
使用命令 `rpm -e 包名`,包名可以包含版本号等信息,但是不可以有后缀.rpm,比如卸载软件包 proftpd-1.2.8-1,可以使用下列格式:
|
||||
|
||||
```sh
|
||||
rpm -e proftpd-1.2.8-1
|
||||
rpm -e proftpd-1.2.8
|
||||
rpm -e proftpd-
|
||||
rpm -e proftpd
|
||||
```
|
||||
|
||||
不可以是下列格式:
|
||||
|
||||
```sh
|
||||
rpm -e proftpd-1.2.8-1.i386.rpm
|
||||
rpm -e proftpd-1.2.8-1.i386
|
||||
rpm -e proftpd-1.2
|
||||
rpm -e proftpd-1
|
||||
```
|
||||
|
||||
有时会出现一些错误或者警告:
|
||||
|
||||
```
|
||||
... is needed by ...
|
||||
```
|
||||
|
||||
这说明这个软件被其他软件需要,不能随便卸载,可以用 rpm -e --nodeps 强制卸载
|
||||
|
||||
(4)查看与 rpm 包相关的文件和其他信息
|
||||
|
||||
```sh
|
||||
rpm -qa # 列出所有安装过的包
|
||||
```
|
||||
|
||||
## yum
|
||||
|
||||
> yum 命令是在 Fedora 和 RedHat 以及 SUSE 中基于 rpm 的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理 RPM 软件包,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
|
||||
>
|
||||
> 参考:http://man.linuxde.net/yum
|
||||
|
||||
示例:
|
||||
|
||||
部分常用的命令包括:
|
||||
|
||||
- 自动搜索最快镜像插件:`yum install yum-fastestmirror`
|
||||
- 安装 yum 图形窗口插件:`yum install yumex`
|
||||
- 查看可能批量安装的列表:`yum grouplist`
|
||||
|
||||
**安装**
|
||||
|
||||
```
|
||||
yum install #全部安装
|
||||
yum install package1 #安装指定的安装包package1
|
||||
yum groupinsall group1 #安装程序组group1
|
||||
```
|
||||
|
||||
**更新和升级**
|
||||
|
||||
```
|
||||
yum update #全部更新
|
||||
yum update package1 #更新指定程序包package1
|
||||
yum check-update #检查可更新的程序
|
||||
yum upgrade package1 #升级指定程序包package1
|
||||
yum groupupdate group1 #升级程序组group1
|
||||
```
|
||||
|
||||
**查找和显示**
|
||||
|
||||
```
|
||||
yum info package1 #显示安装包信息package1
|
||||
yum list #显示所有已经安装和可以安装的程序包
|
||||
yum list package1 #显示指定程序包安装情况package1
|
||||
yum groupinfo group1 #显示程序组group1信息yum search string 根据关键字string查找安装包
|
||||
yum search <keyword> #查找软件包
|
||||
```
|
||||
|
||||
**删除程序**
|
||||
|
||||
```
|
||||
yum remove <package_name> #删除程序包package_name
|
||||
yum groupremove group1 #删除程序组group1
|
||||
yum deplist package1 #查看程序package1依赖情况
|
||||
```
|
||||
|
||||
**清除缓存**
|
||||
|
||||
```
|
||||
yum clean packages #清除缓存目录下的软件包
|
||||
yum clean headers #清除缓存目录下的 headers
|
||||
yum clean oldheaders #清除缓存目录下旧的 headers
|
||||
```
|
||||
|
||||
### yum 源
|
||||
|
||||
yum 的默认源是国外的,下载速度比较慢,所以最好替换为一个国内的 yum 源。
|
||||
|
||||
| 推荐 yum 国内源 | 源地址 |
|
||||
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <http://mirrors.163.com/> | Centos6:http://mirrors.aliyun.com/repo/Centos-6.repo<br>Centos7:http://mirrors.aliyun.com/repo/Centos-7.repo |
|
||||
| <http://mirrors.aliyun.com/> | Centos6:http://mirrors.163.com/.help/CentOS6-Base-163.repo<br>Centos7:http://mirrors.163.com/.help/CentOS7-Base-163.repo |
|
||||
|
||||
> 注意:Cento5 已废弃,只能使用 http://vault.centos.org/ 替换,但由于是国外镜像,速度较慢。
|
||||
|
||||
替换方法,以 aliyun CentOS7 为例:
|
||||
|
||||
```
|
||||
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
|
||||
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
|
||||
yum clean all
|
||||
yum makecache
|
||||
```
|
||||
|
||||
## apt-get
|
||||
|
||||
> apt-get 命令是 Debian Linux 发行版中的 APT 软件包管理工具。所有基于 Debian 的发行都使用这个包管理系统。deb 包可以把一个应用的文件包在一起,大体就如同 Windows 上的安装文件。
|
||||
>
|
||||
> 参考:http://man.linuxde.net/apt-get
|
||||
|
||||
示例:
|
||||
|
||||
使用 apt-get 命令的第一步就是引入必需的软件库,Debian 的软件库也就是所有 Debian 软件包的集合,它们存在互联网上的一些公共站点上。把它们的地址加入,apt-get 就能搜索到我们想要的软件。/etc/apt/sources.list 是存放这些地址列表的配置文件,其格式如下:
|
||||
|
||||
deb [web 或 ftp 地址][发行版名字] [main/contrib/non-free]
|
||||
我们常用的 Ubuntu 就是一个基于 Debian 的发行,我们使用 apt-get 命令获取这个列表,以下是我整理的常用命令:
|
||||
|
||||
在修改 /etc/apt/sources.list 或者 /etc/apt/preferences 之后运行该命令。
|
||||
|
||||
```sh
|
||||
# 更新 apt-get
|
||||
apt-get update
|
||||
|
||||
# 安装一个软件包
|
||||
apt-get install packagename
|
||||
|
||||
# 卸载一个已安装的软件包(保留配置文件)
|
||||
apt-get remove packagename
|
||||
|
||||
# 卸载一个已安装的软件包(删除配置文件)
|
||||
apt-get –purge remove packagename
|
||||
|
||||
# 如果需要空间的话,可以让这个命令来删除你已经删掉的软件
|
||||
apt-get autoclean apt
|
||||
|
||||
# 把安装的软件的备份也删除,不过这样不会影响软件的使用的
|
||||
apt-get clean
|
||||
|
||||
# 更新所有已安装的软件包
|
||||
apt-get upgrade
|
||||
|
||||
# 将系统升级到新版本
|
||||
apt-get dist-upgrade
|
||||
```
|
||||
|
||||
## 参考资料
|
||||
|
||||
- http://man.linuxde.net/rpm
|
||||
- http://man.linuxde.net/yum
|
||||
- http://man.linuxde.net/apt-get
|
||||
- http://www.runoob.com/linux/linux-yum.html
|
@ -8,10 +8,9 @@
|
||||
- [Linux 文件压缩和解压](04.Linux文件压缩和解压.md) - 关键词:`tar`, `gzip`, `zip`, `unzip`
|
||||
- [Linux 用户管理](05.Linux用户管理.md) - 关键词:`groupadd`, `groupdel`, `groupmod`, `useradd`, `userdel`, `usermod`, `passwd`, `su`, `sudo`
|
||||
- [Linux 系统管理](06.Linux系统管理.md) - 关键词:`reboot`, `exit`, `shutdown`, `date`, `mount`, `umount`, `ps`, `kill`, `systemctl`, `service`, `crontab`
|
||||
- [Linux 性能管理](07.Linux性能管理.md) - 关键词:`df`, `du`, `top`, `free`, `iotop`
|
||||
- [Linux 网络应用](08.Linux网络应用.md) - 关键词:关键词:`curl`, `wget`, `telnet`, `ip`, `hostname`, `ifconfig`, `route`, `ssh`, `ssh-keygen`, `firewalld`, `iptables`, `host`, `nslookup`, `nc`/`netcat`, `ping`, `traceroute`, `netstat`
|
||||
- [yum 命令](yum.md)
|
||||
- [linux 监控](linux监控.md)
|
||||
- [Linux 网络管理](07.Linux网络管理.md) - 关键词:关键词:`curl`, `wget`, `telnet`, `ip`, `hostname`, `ifconfig`, `route`, `ssh`, `ssh-keygen`, `firewalld`, `iptables`, `host`, `nslookup`, `nc`/`netcat`, `ping`, `traceroute`, `netstat`
|
||||
- [Linux 硬件管理](08.Linux硬件管理.md) - 关键词:`df`, `du`, `top`, `free`, `iotop`
|
||||
- [Linux 软件管理](09.Linux软件管理.md) - 关键词:`rpm`, `yum`, `apt-get`
|
||||
- [samba 使用详解](samba使用详解.md)
|
||||
- [命令行的艺术(转载)](命令行的艺术.md)
|
||||
|
||||
|
@ -1,167 +0,0 @@
|
||||
---
|
||||
title: linux 监控
|
||||
date: 2018/02/27
|
||||
categories:
|
||||
- linux
|
||||
tags:
|
||||
- linux
|
||||
---
|
||||
|
||||
<!-- TOC -->
|
||||
|
||||
- [linux 监控](#linux-%E7%9B%91%E6%8E%A7)
|
||||
- [查看发行版本](#%E6%9F%A5%E7%9C%8B%E5%8F%91%E8%A1%8C%E7%89%88%E6%9C%AC)
|
||||
- [查看 CPU](#%E6%9F%A5%E7%9C%8B-cpu)
|
||||
- [CPU 监控](#cpu-%E7%9B%91%E6%8E%A7)
|
||||
- [查看内存](#%E6%9F%A5%E7%9C%8B%E5%86%85%E5%AD%98)
|
||||
- [查看硬盘](#%E6%9F%A5%E7%9C%8B%E7%A1%AC%E7%9B%98)
|
||||
- [查看硬盘 IO](#%E6%9F%A5%E7%9C%8B%E7%A1%AC%E7%9B%98-io)
|
||||
- [查看网络](#%E6%9F%A5%E7%9C%8B%E7%BD%91%E7%BB%9C)
|
||||
|
||||
<!-- /TOC -->
|
||||
|
||||
# linux 监控
|
||||
|
||||
## 查看发行版本
|
||||
|
||||
(1)查看 CentOS 版本号第一种方法
|
||||
|
||||
```
|
||||
➜ bin cat /etc/redhat-release
|
||||
CentOS Linux release 7.3.1611 (Core)
|
||||
```
|
||||
|
||||
(2)查看 CentOS 版本号第二种方法
|
||||
|
||||
```
|
||||
➜ bin lsb_release -a
|
||||
LSB Version: :core-4.1-amd64:core-4.1-noarch
|
||||
Distributor ID: CentOS
|
||||
Description: CentOS Linux release 7.3.1611 (Core)
|
||||
Release: 7.3.1611
|
||||
Codename: Core
|
||||
```
|
||||
|
||||
## 查看 CPU
|
||||
|
||||
* 查看 CPU 总体信息:`cat /proc/cpuinfo`
|
||||
|
||||
* 查看物理 CPU 个数:`cat /proc/cpuinfo | grep 'physical id' /proc/cpuinfo | sort -u | wc -l`
|
||||
|
||||
* 结果:4
|
||||
* 物理 CPU:物理 CPU 也就是机器外面就能看到的一个个 CPU,每个物理 CPU 还带有单独的风扇
|
||||
|
||||
* 查看每个物理 CPU 的核心数量:`cat /proc/cpuinfo | grep 'core id' /proc/cpuinfo | sort -u | wc -l`
|
||||
|
||||
* 结果:6,因为每个物理 CPU 是 6,所有 4 个物理 CPU 的总核心数量应该是:24
|
||||
* 核心数:一个核心就是一个物理线程,英特尔有个超线程技术可以把一个物理线程模拟出两个线程来用,充分发挥 CPU 性能,意思是一个核心可以有多个线程。
|
||||
|
||||
* 查看 CPU 总的线程数(一般也叫做:逻辑 CPU 数量):`cat /proc/cpuinfo | grep 'processor' /proc/cpuinfo | sort -u | wc -l`
|
||||
|
||||
* 结果:24,正常情况下:CPU 的总核心数量 == CPU 线程数,但是如果该 CPU 支持超线程,那结果是:CPU 的总核心数量 X 2 == CPU 线程数
|
||||
* 线程数:线程数是一种逻辑的概念,简单地说,就是模拟出的 CPU 核心数。比如,可以通过一个 CPU 核心数模拟出 2 线程的 CPU,也就是说,这个单核心的 CPU 被模拟成了一个类似双核心 CPU 的功能。
|
||||
|
||||
### CPU 监控
|
||||
|
||||
- Linux 的 CPU 简单监控一般简单
|
||||
- 常用命令就是 `top`
|
||||
- 命令:`top -bn1`,可以完全显示所有进程出来,但是不能实时展示数据,只能暂时命令当时的数据。
|
||||
- `top` 可以动态显示进程所占的系统资源,每隔 3 秒变一次,占用系统资源最高的进程放最前面。
|
||||
- 在 `top` 命令状态下还可以按数字键 `1` 显示各个 CPU 线程使用状态
|
||||
- 在 `top` 命令状态下按 `shfit` + `m` 可以按照 **内存使用** 大小排序
|
||||
- 在 `top` 命令状态下按 `shfit` + `p` 可以按照 **CPU 使用** 大小排序
|
||||
- 展示数据上,%CPU 表示进程占用的 CPU 百分比,%MEM 表示进程占用的内存百分比
|
||||
|
||||
## 查看内存
|
||||
|
||||
- Linux 的内存本质是虚拟内存,这样说是因为它的内存是:物理内存 + 交换分区。有一个内存模块来管理应用的内存使用。
|
||||
- 如果所以你内存大,可以考虑把 swap 分区改得小点或者直接关掉。
|
||||
- 但是,如果是用的云主机,一般是没交换分区的,`free -g` 中的 Swap 都是 0。
|
||||
- 查看内存使用命令:
|
||||
- 以 M 为容量单位展示数据:`free -m`
|
||||
- 以 G 为容量单位展示数据:`free -g`
|
||||
- CentOS 6 和 CentOS 7 展示出来的数据有差别,CentOS 7 比较容易看,比如下面的数据格式是 CentOS 7 的 `free -g`:
|
||||
|
||||
```
|
||||
total used free shared buff/cache available
|
||||
Mem: 11 0 10 0 0 10
|
||||
Swap: 5 0 5
|
||||
```
|
||||
|
||||
- 在以上结果中,其中可以用的内存是看 `available` 列。
|
||||
- 对于 CentOS 6 的系统可以使用下面命令:
|
||||
|
||||
```
|
||||
[root@bogon ~]# free -mlt
|
||||
total used free shared buffers cached
|
||||
Mem: 16080 15919 160 0 278 11934
|
||||
Low: 16080 15919 160
|
||||
High: 0 0 0
|
||||
-/+ buffers/cache: 3706 12373
|
||||
Swap: 0 0 0
|
||||
Total: 16080 15919 160
|
||||
```
|
||||
|
||||
- 以上的结果重点关注是:`-/+ buffers/cache`,这一行代表实际使用情况。
|
||||
|
||||
## 查看硬盘
|
||||
|
||||
- `df -h`:自动以合适的磁盘容量单位查看磁盘大小和使用空间
|
||||
- `df -m`:以磁盘容量单位 M 为数值结果查看磁盘使用情况
|
||||
- `du -sh /opt/tomcat6`:查看tomcat6这个文件夹大小 (h的意思human-readable用人类可读性较好方式显示,系统会自动调节单位,显示合适大小的单位)
|
||||
- `du /opt --max-depth=1 -h`:查看指定录入下包括子目录的各个文件大小情况
|
||||
|
||||
## 查看硬盘 IO
|
||||
|
||||
- 安装 iotop:`yum install -y iotop`
|
||||
- 查看命令:`iotop`
|
||||
- 使用 dd 命令测量服务器延迟:`dd if=/dev/zero of=/opt/ioTest2.txt bs=512 count=1000 oflag=dsync`
|
||||
- 使用 dd 命令来测量服务器的吞吐率(写速度):`dd if=/dev/zero of=/opt/ioTest1.txt bs=1G count=1 oflag=dsync`
|
||||
- 该命令创建了一个 10M 大小的文件 ioTest1.txt,其中参数解释:
|
||||
- if 代表输入文件。如果不指定 if,默认就会从 stdin 中读取输入。
|
||||
- of 代表输出文件。如果不指定 of,默认就会将 stdout 作为默认输出。
|
||||
- bs 代表字节为单位的块大小。
|
||||
- count 代表被复制的块数。
|
||||
- /dev/zero 是一个字符设备,会不断返回0值字节(\0)。
|
||||
- oflag=dsync:使用同步I/O。不要省略这个选项。这个选项能够帮助你去除 caching 的影响,以便呈现给你精准的结果。
|
||||
- conv=fdatasyn: 这个选项和 oflag=dsync 含义一样。
|
||||
- 该命令执行完成后展示的数据:
|
||||
|
||||
```
|
||||
[root@youmeek ~]# dd if=/dev/zero of=/opt/ioTest1.txt bs=1G count=1 oflag=dsync
|
||||
记录了1+0 的读入
|
||||
记录了1+0 的写出
|
||||
1073741824字节(1.1 GB)已复制,5.43328 秒,198 MB/秒
|
||||
|
||||
```
|
||||
|
||||
- 利用 hdparm 测试硬盘速度:`yum install -y hdparm`
|
||||
- 查看硬盘分区情况:`df -h`,然后根据分区测试:
|
||||
- 测试硬盘分区的读取速度:`hdparm -T /dev/sda`
|
||||
- 测试硬盘分区缓存的读取速度:`hdparm -t /dev/sda`
|
||||
- 也可以以上两个参数一起测试:`hdparm -Tt /dev/sda`,结果数据如下:
|
||||
|
||||
```
|
||||
/dev/sda:
|
||||
Timing cached reads: 3462 MB in 2.00 seconds = 1731.24 MB/sec
|
||||
Timing buffered disk reads: 806 MB in 3.00 seconds = 268.52 MB/sec
|
||||
|
||||
```
|
||||
|
||||
## 查看网络
|
||||
|
||||
- 安装 iftop(需要有 EPEL 源):
|
||||
|
||||
```
|
||||
yum install -y iftop
|
||||
```
|
||||
|
||||
- 如果没有 EPEL 源:`yum install -y epel-release`
|
||||
|
||||
- 常用命令:
|
||||
|
||||
- `iftop`:默认是监控第一块网卡的流量
|
||||
- `iftop -i eth1`:监控eth1
|
||||
- `iftop -n`:直接显示IP, 不进行DNS反解析
|
||||
- `iftop -N`:直接显示连接埠编号, 不显示服务名称
|
||||
- `iftop -F 192.168.1.0/24 or 192.168.1.0/255.255.255.0`:显示某个网段进出封包流量
|
@ -1,133 +0,0 @@
|
||||
---
|
||||
title: yum 命令
|
||||
date: 2018/02/26
|
||||
categories:
|
||||
- linux
|
||||
tags:
|
||||
- linux
|
||||
- yum
|
||||
---
|
||||
|
||||
# yum 命令
|
||||
|
||||
yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
|
||||
|
||||
yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
|
||||
|
||||
## yum 用法
|
||||
|
||||
### 语法
|
||||
|
||||
```
|
||||
yum(选项)(参数)
|
||||
```
|
||||
|
||||
### 选项
|
||||
|
||||
```
|
||||
-h:显示帮助信息;
|
||||
-y:对所有的提问都回答“yes”;
|
||||
-c:指定配置文件;
|
||||
-q:安静模式;
|
||||
-v:详细模式;
|
||||
-d:设置调试等级(0-10);
|
||||
-e:设置错误等级(0-10);
|
||||
-R:设置yum处理一个命令的最大等待时间;
|
||||
-C:完全从缓存中运行,而不去下载或者更新任何头文件。
|
||||
```
|
||||
|
||||
### 参数
|
||||
|
||||
```
|
||||
install:安装rpm软件包;
|
||||
update:更新rpm软件包;
|
||||
check-update:检查是否有可用的更新rpm软件包;
|
||||
remove:删除指定的rpm软件包;
|
||||
list:显示软件包的信息;
|
||||
search:检查软件包的信息;
|
||||
info:显示指定的rpm软件包的描述信息和概要信息;
|
||||
clean:清理yum过期的缓存;
|
||||
shell:进入yum的shell提示符;
|
||||
resolvedep:显示rpm软件包的依赖关系;
|
||||
localinstall:安装本地的rpm软件包;
|
||||
localupdate:显示本地rpm软件包进行更新;
|
||||
deplist:显示rpm软件包的所有依赖关系。
|
||||
```
|
||||
|
||||
### 实例
|
||||
|
||||
部分常用的命令包括:
|
||||
|
||||
- 自动搜索最快镜像插件:`yum install yum-fastestmirror`
|
||||
- 安装yum图形窗口插件:`yum install yumex`
|
||||
- 查看可能批量安装的列表:`yum grouplist`
|
||||
|
||||
**安装**
|
||||
|
||||
```
|
||||
yum install #全部安装
|
||||
yum install package1 #安装指定的安装包package1
|
||||
yum groupinsall group1 #安装程序组group1
|
||||
```
|
||||
|
||||
**更新和升级**
|
||||
|
||||
```
|
||||
yum update #全部更新
|
||||
yum update package1 #更新指定程序包package1
|
||||
yum check-update #检查可更新的程序
|
||||
yum upgrade package1 #升级指定程序包package1
|
||||
yum groupupdate group1 #升级程序组group1
|
||||
```
|
||||
|
||||
**查找和显示**
|
||||
|
||||
```
|
||||
yum info package1 #显示安装包信息package1
|
||||
yum list #显示所有已经安装和可以安装的程序包
|
||||
yum list package1 #显示指定程序包安装情况package1
|
||||
yum groupinfo group1 #显示程序组group1信息yum search string 根据关键字string查找安装包
|
||||
yum search <keyword> #查找软件包
|
||||
```
|
||||
|
||||
**删除程序**
|
||||
|
||||
```
|
||||
yum remove <package_name> #删除程序包package_name
|
||||
yum groupremove group1 #删除程序组group1
|
||||
yum deplist package1 #查看程序package1依赖情况
|
||||
```
|
||||
|
||||
**清除缓存**
|
||||
|
||||
```
|
||||
yum clean packages #清除缓存目录下的软件包
|
||||
yum clean headers #清除缓存目录下的 headers
|
||||
yum clean oldheaders #清除缓存目录下旧的 headers
|
||||
```
|
||||
|
||||
## yum 源
|
||||
|
||||
yum 的默认源是国外的,下载速度比较慢,所以最好替换为一个国内的 yum 源。
|
||||
|
||||
| 推荐 yum 国内源 | 源地址 |
|
||||
| ---------------------------- | ---------------------------------------- |
|
||||
| <http://mirrors.163.com/> | Centos6:http://mirrors.aliyun.com/repo/Centos-6.repo<br>Centos7:http://mirrors.aliyun.com/repo/Centos-7.repo |
|
||||
| <http://mirrors.aliyun.com/> | Centos6:http://mirrors.163.com/.help/CentOS6-Base-163.repo<br>Centos7:http://mirrors.163.com/.help/CentOS7-Base-163.repo |
|
||||
|
||||
> 注意:Cento5 已废弃,只能使用 http://vault.centos.org/ 替换,但由于是国外镜像,速度较慢。
|
||||
>
|
||||
|
||||
替换方法,以 aliyun CentOS7 为例:
|
||||
|
||||
```
|
||||
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
|
||||
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
|
||||
yum clean all
|
||||
yum makecache
|
||||
```
|
||||
|
||||
## 资料
|
||||
|
||||
* http://man.linuxde.net/yum
|
||||
* http://www.runoob.com/linux/linux-yum.html
|
Loading…
Reference in New Issue
Block a user