CentOS 一条命令即可查看各目录占用的硬盘空间大小

CentOS 一条命令即可查看各目录占用的硬盘空间大小,第1张

我的 VPS 用的是 CentOS 系统,一段时间后发现 VPS 的硬盘就占用非常大,但是自己网站数据并不多,那么是什么占用了我的 VPS 硬盘空间呢?我们可以通过命令 du -sh 来分析一下。

登陆vps的ssh后,输入下面的命令: du -sh /*

可以列出你整个VPS所有文件夹的大小。其中“/ ”是控制分析哪个目录的,你根据上面的结果,然后灵活变化后面的路径就行了,例如: du -sh /usr/

用这个命令来分析usr目录下的文件夹大小,最后定位到大文件,直接删除就行了。

直白说,就是文件/文件夹总数限制。一般VPS限制为最大是1,000,000,具体还要看主机商的设置

也有不少虚拟主机管理面板中可以看到,比如CPanel。

前段时间我的vps莫名奇妙的,mysql数据读不出来,但只是wordpress列表分类无法读取,一直显示No Categories

开始不知道原因,删除部分日志后正常了,但是过不了几分钟又无法读取了,于是开始找原因。

其中一次分析的时候,把mysql停止再启动发现,无法启动,提示 touch: cannot touch `/var/lock/subsys/mysqld’: Disk quota exceeded

google找到的解决办法有人说是空间满了换个地方存储,但是我空间明显只用了50%不到,所以不是空间问题,

后来发现时inodes满了,运行df -i命令可以查看当前inodes使用情况。

这个问题影响比较大,先不说ftp上传不了,

首先还是日志文件,无法新建日志文件会导致程序无法启动,或者运行中挂起,就会出现我上面提到的mysql问题

linux下日志是很重要的块,日志无法创建和更新将会影响很多程序的正常运行。

1、连续vps厂商客服来提高上限

一般的厂商默认安装的系统硬件上的配置一般都是给的低配,也就是说在免费配额内都还能提升。

但也有上限,可以提交一个ticket问清楚这些设置

2、确实已达上限,但是又不想升级package,自己清理文件的办法

主要是用到几个常见find、rm、grep、xargs举例:(1)删除当前目录下的所有空目录:cd /tmpfind ./ -type d -empty -delete

(2)查找当前目录下所有文件名为 *.tmp 的文件,直接删除 (慎用)cd /tmpfind ./ -name *.tmp -type f -exec rm -f {} \

(3)查找当前目录下所有文件内容,凡是包含指定字符串的文件,直接删除 (慎用)

find ./ -type f -exec grep -li file not found {} \|xargs rm

3、查看各个目录分别占了多少inodescd / #可以切换到任意你想查看的目录

目录操作:

rm -rf mydir /*删除mydir目录,不需要确认,直接删除*/

mkdir dirname /*创建名为dirname的目录*/

cd mydir /*进入mydir目录*/

cd - /*返回进入此目录之前所在的目录*/

cd .. /*返回上一级目录,中间有空格*/

cd ~ /*回当前用户家目录*/

mv tools tool /*把tools目录改名为tool */

ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/

cp -a tool /home/vps.zzidc/www /*把tool目录,复制到www目录下 */

ls /* 列出当前目录下的内容 */

文件操作:

rm go.tar/* 删除go.tar文件 */

find mt.cgi/* 查找文件名为mt.cgi的文件 */

df -h /* 查看磁盘剩余空间 */

解压缩:

tar xvf wordpress.tar /* 解压tar格式的文件 */

tar tvf myfile.tar /* 查看tar文件中包含的文件 */

tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */

tar zcf vps.zzidc.tar.gz tool /* 把tool目录打包且压缩为vps.zzidc.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB */

tar jcvf /var/bak/www.tar.bz2 /var/www//*创建.tar.bz2文件,压缩率高*/

tar xjf www.tar.bz2 /*解压tar.bz2格式*/

gzip -d ge.tar.gz/* 解压.tar.gz文件为.tar文件 */

unzip phpbb.zip /* 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 */

下载:

wget http://vps.zzidc.com/

/*下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 */

wget -c http://vps.zzidc.com//* 继续下载上次未下载完的文件 */

进程管理:

ps -aux /*ps 进程状态查询命令*/

ps命令输出字段的含义:

[list]

[*]USER,进程所有者的用户名。

[*]PID,进程号,可以唯一标识该进程。

[*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。

[*]%MEM,进程使用内存的百分比。

[*]VSZ,进程使用的虚拟内存大小,以K为单位。

[*]RSS,进程占用的物理内存的总数量,以K为单位。

[*]TTY,进程相关的终端名。

[*]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。

[*]START,进程开始运行时间。

[*]TIME,进程使用的总CPU时间。

[*]COMMAND,被执行的命令行。

[/list]

ps -aux | grep nginx /*在所有进程中,查找nginx的进程*/

kill 1234/*1234为进程ID,即ps -aux 中的PID*/

killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/

资源占用查询:

df -sh /home/wwwroot/* /* 查看/home/wwwroot/下各个目录的占用大小 */

free -m /* 查看内存核swap使用情况 */

top /* 查看程序的cpu、内存使用情况 */

netstat -ntl /* 查看端口占用情况 */

用户管理:

adduser /*添加用户,如adduser vps.zzidc */

deluser /*删除用户,如deluser vps.zzidc */

passwd /*修改密码,按提示输入密码,密码不显示*/

Vim操作:

移动类的:

h/j/k/l: 左/下/上/右 移一格

w : 向后词移动 (前面加数字移动多少个词)

b : 向前词移动 (前面加数字移动多少个词)

e : 向后移到词末

ge : 向前移到词末

$ <End>: 行末

0 <Home>: 行首

tx : 向右查找本行的x并移到那儿(大写时向左)

33G : 移到文件的第33行

gg : 文件首行

G : 文件尾行

33% : 文件的33%处

H/M/L : 屏幕的首/中/尾行

zt/zz/zb : 当前行移到屏幕的首/中/底部

跳转:

" : 回到跳转来的地方

CTRL-O : 跳到一个 “较老” 的地方

CTRL-I <Tab>: 则跳到一个 “较新” 的地方

查找:

/ : 向下查找(后加关键字)

? : 向上查找(后加关键字)

n : 下一条符合的记录

编辑:

i : 转换到插入模式

x : 删除当前字符

. : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜)

u : 撤销操作

CTRL-R : 重做

p : 将删除的字符插入到当前位置(put)

退出保存:

:q : 退出

:q! : 不保存退出

ZZ : 保存后退出

:e! : 放弃修改重新编辑


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/419128.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-24
下一篇2023-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存