第一步: vim hahaha.txt
系统会自动生成一个.hahaha.txt.swp 交换分区文件
第二步: 如果正常保存退出 则系统会将.hahaha.txt.swp 移动成 hahaha.txt
第三步: 如果vim不正常退出 则隐藏文件不会移动成hahaha.txt
第四步: 解决方案
1)如果不需要保存之前改动的内容
直接删除.hahaha.txt.swp
2)如果需要保存改动的内容
a.先使用vim -r hahaha.txt 进入到修改后的文件内容(保存退出)
b.删除.hahaha.txt.swp
不正常退出:
1)没有保存直接关闭远程连接工具xshell
2)在编辑的过程中断电
3)自己在不同的窗口同时编辑一个文件(在企业中和同事同时编辑同一个文件)
文件作用: 软件编译安装默认的路径
yum软件默认安装的位置: 目录层级结构安装
软件的安装方法:
类似直接从软件商店直接安装
语法结构:
yum -y install package.name
参数:
-y 不提示是否继续安装
1)自动解决依赖问题
什么是依赖:- 安装一个软件必须基于另外一个软件
- 打开一个文件必须依赖于某个程序
2)必须知道软件包的名称
案例: 安装rz sz命令- 需要使用yum的参数查找命令属于哪个包 provides
[root@ahui ~]# yum provides rz Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.huaweicloud.com * extras: mirrors.huaweicloud.com * updates: mirrors.huaweicloud.com base/7/x86_64/filelists_db | 7.2 MB 00:00:00 extras/7/x86_64/filelists_db | 277 kB 00:00:00 updates/7/x86_64/filelists_db | 8.2 MB 00:00:00 lrzsz-0.12.20-36.el7.x86_64 : The lrz and lsz modem communications programs [root@ahui ~]# yum -y install lrzsz #安装查找出来的包(可以省略版本号) [root@ahui ~]# yum -y install lrzsz-0.12.20-36.el7.x86_64
上传和下载命令 需要安装lrzsz rz # 上传windows文件到linux系统的当前的路径 可以直接拖拽 sz
# 将linux系统中的文件下载到windows系统
- 使用search命令
[root@ahui ~]# yum search ifconfig Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.huaweicloud.com * extras: mirrors.huaweicloud.com * updates: mirrors.huaweicloud.com ============================================== Matched: ifconfig ============================================== net-tools.x86_64 : Basic networking tools
- 百度搜索 linux安装rz命令
-
网络问题
a.自己配置网络问题 ping www.baidu.com
b.默认的软件仓库是国外的 速度慢 修改为国内的软件仓库 -
软件包的名字不正确
-
命令错了 yum -y install 软件包名字
-
软件仓库缓存问题
可以使用yum clean all # 清空yum仓库的缓存然后尝试安装 -
软件已经安装 但是使用不正常
yum -y reinstall 软件包名称 #重新安装软件
[root@ahui ~]# yum -y remove net-tools第二种安装方式: rpm安装
类似于windows先下载.exe安装包 从windows点击安装
语法结构:
rpm -ivh package.rpm
参数:
-i install
-v verbose 显示安装过程
-h 人类可读
-e 卸载软件
-qa 查询所有已经安装过的软件
-ql 列出包中所有的文件
-qc 只列出服务相关的配置文件
- 先下载以.rpm结尾的安装包到本地
- rpm不能自动解决依赖问题 需要手动通过yum安装依赖
- rpm安装需要依赖 下载了依赖包到当前目录
例:
1.依赖1.rpm
2.依赖2.rpm
3.依赖3.rpm
4.软件.rpm
[root@ahui opt]# yum -y localinstall *.rpm #按照依赖关系安装本目录下所有rpmrpm卸载软件:
[root@ahui opt]# rpm -e wget列出系统中已经安装过的软件
[root@ahui opt]#rpm -qa httpd # 查看httpd是否安装 [root@ahui opt]# rpm -qa httpd wget httpd-2.4.6-97.el7.centos.5.x86_64 wget-1.14-18.el7_6.1.x86_64第三种安装方式: 源码编译安装
默认不配置安装在/usr/local目录下
自己选择需要的功能
1)yum安装的位置不能变 源码可以变
2)yum功能模块固定的 源码可以自己修改
3)源码安装所有都可以自定义 yum和rpm只能使用默认的
4)yum和rpm安装方便 简单 直接从仓库安装即可 源码安装复杂 时间较长
5)yum安装过的 可以使用源码重新编译
三剑客之一 过滤字符串
语法格式:
grep ‘内容’ 文件/路径文件
cat 文件|grep ‘内容’
管道| 将前面命令的输出 最为后面命令的输入
[root@ahui ~]# grep 'Failed' /var/log/secure May 7 11:43:00 ahui sshd[3240]: Failed password for root from 10.0.0.1 port 1464 ssh2 May 7 11:44:38 ahui sshd[3245]: Failed password for root from 10.0.0.1 port 1491 ssh2 May 7 11:44:43 ahui sshd[3248]: Failed password for root from 10.0.0.1 port 1492 ssh2 [root@ahui ~]# ip add|grep 10.0.0.200 inet 10.0.0.200/24 brd 10.0.0.255 scope global noprefixroute eth0tail:
显示文件的末尾10行内容
-n 显示后n行
tail -n 5 # 显示最后5行 简写 tail -5
-f 实时监控内容的变化 简写 tailf 退出监控使用ctrl+c
-F 监控文件内容变化 如果文件不存在 则会等待着文件出现
[root@ahui ~]# cp /etc/passwd . [root@ahui ~]# tail -3 passwd postfix:x:89:89::/var/spool/postfix:/sbin/nologin oldboy:x:1000:1000::/home/oldboy:/bin/bash apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologinhead:
显示头部文件10行内容 重要
-n 显示前h行 简写 head -2
[root@ahui ~]# head -n2 passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin/var
文件作用: variable 变化的 日志文件
/var/log # 存放日志文件的目录
# 系统日志
# 系统安全日志
# 服务日志 /var/log/httpd/xx.log
/var/log/messages # 存放系统运行的日志
/var/log/secure # 系统的安全日志 记录了用户登录和退出的详细情况
日志特点:a.最新的日志在文件的底部
b.大部分在系统中执行的命令都会显示在messages日志中
c.服务的日志都会记录到以服务名称命名的目录下/var/log/httpd/access.log
d.如果服务的日志查看不到错误 则需要查看messages
e.实时查看最新的日志使用tail命令
文件作用: 内存映射文件,Linux一切皆文件
/proc/cpuinfo cpu信息[root@ahui ~]# cat /proc/cpuinfo |grep 'processor' processor : 0 processor : 1 processor : 2 processor : 3 [root@ahui ~]# cat /proc/cpuinfo|grep 'physical id' physical id : 0 physical id : 0 physical id : 1 physical id : 1通过命令查看cpu信息
[root@ahui ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 # 总核心数量 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 2 # cpu的个数/proc/meminfo 内存信息
[root@ahui ~]# cat /proc/meminfo MemTotal: 2027904 kB # 总共内存大小 MemFree: 1729860 kB # 空闲内存大小 MemAvailable: 1707312 kB # 可用的内存大小 Buffers: 2076 kB # 写缓冲 Cached: 92500 kB # 读缓存查看内存的命令
[root@ahui ~]# free -h
total used free shared buff/cache available
Mem: 1.9G 178M 1.6G 9.5M 112M 1.6G
Swap: 2.0G 0B 2.0G
查看磁盘的命令
[root@ahui ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 980M 0 980M 0% /dev tmpfs 991M 0 991M 0% /dev/shm tmpfs 991M 9.5M 981M 1% /run tmpfs 991M 0 991M 0% /sys/fs/cgroup /dev/sda3 18G 2.3G 16G 13% / /dev/sda1 197M 110M 88M 56% /boot tmpfs 199M 0 199M 0% /run/user/0/proc/loadvage 系统负载
[root@ahui ~]# cat /proc/loadavg 0.00 0.03 0.05 1/133 1702什么是负载:
负载是衡量系统的繁忙程度的一个指标
当负载达到了cpu的核心数量 说明系统繁忙
核心数量4 负载3-4 说明系统非常繁忙(繁忙导致系统运行速度慢 响应速度慢 用户访问慢)
核心数量2 负载1-2 说明系统非常繁忙
注意: 做大数据处理 比如挖矿 系统繁忙正常的
导致负载高的两个硬件: cpu 磁盘(IO)
通过命令查看负载[root@ahui ~]# uptime # 静态查看cpu的负载 12:26:10 up 18 min, 1 user, load average: 0.01, 0.02, 0.05
查看三个值的后两个值: 如果负载一直高 解决问题
[root@ahui ~]# top # 动态的查看负载 使用q 退出top命令界面 #太长就不加进来了 [root@ahui ~]# w 12:29:56 up 22 min, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 10.0.0.1 12:07 4.00s 0.22s 0.01s w小结:
-
vim报错解决方法
-
/usr/local
安装软件
1).yum安装卸载
yum -y install 软件包名称(使用provides参数或者百度) #从yum库安装软件
yum -y remove 软件包名称 #删除软件和他的依赖
2).rpm安装卸载
rpm -ivh package.rpm #安装软件并显示过程
rpm -qa #查看所有安装过的软件
rpm -qc #只显示配置文件
rpm -e #卸载软件包 -
grep ‘字符串’ 文件
-
head 显示文件的前10行
-n -
tail 显示文件最后的10行
-n
-f 简写 tailf -
/var/log 存放日志
(1).存放系统日志
1)message 系统运行日志 执行命令的日志
2)secure 系统安装日志 用户登录退出的日志
(2).存放服务日志
以自身名称命名的目录 httpd
/var/log/httpd/xxx.log -
/proc
1.查看cpu lscpu
2.查看内存 free -h
3.查看磁盘 df -h
4.查看负载
uptime
top
W
B = bytes K = kilos M = megas G = gigas T = teras P = petas



