Fork me on GitHub

Linuxの磁盘知识2

swap分区


1.由于进程占用大量的内存导致系统出现oom报错信息
2.oom 内存溢出:导致系统杀死占用内存最高的进程
解决办法:增加内存
导致内存飙升的因素:
1)由于大量的用户访问 (正常现象)
2)开发写的程序错误导致(java之类),需要找开发解决问题
3)由于网络波动导致内存升高(增加 swap 解决)
总结:外部问题:增加内存
     内部问题:代码、个人操作、使用swap解决


swap:用磁盘划分的分区用来充当内存使用,在内存不够用时,临时充当内存使用,目的就是解决oom内存溢出。
swap既可以在安装操作系统时进行分区的划分,也可以在进入系统后再划分。
swap的大小:内存1-1.5倍,如果内存大于8G,最多分配8G大小的swap分区。

扩大swap分区

步骤1:查看swap分区大小:free -h

image

步骤2:创建一个大小为2G大小的文件

image

步骤3:格式化为swap分区
mkswap /tmp/swap2

image

步骤4:将格式化后的swap2分区挂载到原有swap分区上
swapon /tmp/swap2

image


步骤5:查看扩展后的swap分区大小
free -h

image

查看swap分区的组成

swapon -s

image

卸载扩展的swap分区

swapoff /tmp/swap2
free -h

image

查找文件

如何查找大文件

方法1

find / -type f -size +1000M

image

方法2

du -h  # 查找文件大小和文件名
du -h|awk `$1 ~ /G$/` # 第一列文件大小以G结尾

image

如何查找小文件

通过查找目录大小来查找小文件,目录存储的文件名越多,目录越大。

find / -type d -size +1M

image

添加新的磁盘,并添加软链接指向磁盘

1.添加一块大小为4T的新磁盘,并挂载

mount /dev/sdb /mnt  # 挂载
df -h # 查看挂载情况

image

image

2.查看磁盘/dev/sda3使用情况。

image

3.创建一个大小为5G大小文件/tmp/5G.log,并查看磁盘/dev/sda3使用情况。

image

4.移动5G.log到/dev/sdb磁盘中,并查看/dev/sda3的使用情况

image

5.创建软链接 ln -s 源文件 链接文件

ln -s /mnt/5g.log /tmp/5g.log
# 这样使得不影响代码的运行情况下,依旧保持文件路径不变,使得文件内容写到/dev/sdb硬盘空间。

image

进程调用

1.lsof命令查看文件被哪个命令调用

image


2.查看系统当前进程的状态

ps auxf # 常用组合方式查看进程、PID、占用cpu百分之、占用内存百分比、状态、执行的命令等。
-a	# 显示所有终端机下执行的进程,除了阶段作业领导者之外
-u	# 以用户为主的格式来显示进程状况
-x	# 显示所有进程,不以终端机来区分
-f	# 用ASCII 字符显示树状结构,表达进程间的相互关系

image

kill pid 号	# 杀死某个进程
killall nginx	# 杀死所有名称为nginx的进程
pkill nginx	# 杀死所有名称为nginx的进程
pkill -9 -t pts/2	# 踢掉终端pts/2用户

后台挂起命令


jobs # 显示后台运行命令。

bg %n # 将后台n号命令运行起来
fg %n # 将后台n号命令调到前台

screen 使用方法:

第一步:安装screen
yum -y install screen

第二步:进入到screen 子shell中
screen -s

第三步:在screen里面执行命令
ctrl + a + d	平滑退出子shell

第四步:screen	-list 查看后台的screen
使用 screen -r id号 或者 名字 进入

————————
nohup使用方法:
nohup 可执行命令	&
nohup	python3.5 test.py &

注意:在运行命令的目录会自动生成一个nohup.out文件
posted @ 2025-11-26 20:47  我该想点什么  阅读(0)  评论(0)    收藏  举报