2019-11-06 17:57:41 bohu83 阅读数 71

问题:

   运营反馈某节点的树莓派起不来了。

看了下磁盘空间:df -h

还有有的。总体使用了45%。

再看df -i

Filesystem     Inodes  IUsed  IFree IUse% Mounted on
/dev/root      957712 957712      0  100% /
devtmpfs       117385    332 117053    1% /dev

已经100%。

已经排除磁盘空间不足了,再排查nodes数。(通常不是nodes满了就是删除没释放losf 查看)

find / -xdev -printf '%h\n' | sort | uniq -c | sort -k 1 -n

需要root 权限,不然会提示部分权限不足

 cannot read directory ‘./trace’: Permission denied

我们就是var/spool/下面的maildrop 文件数太多了90W。咨询了运维,是垃圾有关的,可以删除。

常规的删除文件就会卡死了,所以决定直接rm -rf maildrop.清空了在建下。

没人维护的机器就容易出现问题。

2019-09-05 20:05:40 lzf_hlh 阅读数 34
  • df

Linux df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。

  • 示例

1、直接使用df,显示文件系统的磁盘使用情况统计

$ df
Filesystem    512-blocks      Used Available Capacity iused               ifree %iused  Mounted on
/dev/disk1s1   236568496 102939576 126007032    45%  860944 9223372036853914863    0%   /
devfs                368       368         0   100%     638                   0  100%   /dev
/dev/disk1s4   236568496   6291496 126007032     5%       4 9223372036854775803    0%   /private/var/vm
map -hosts             0         0         0   100%       0                   0  100%   /net
map auto_home          0         0         0   100%       0                   0  100%   /home
BJHLdeMacBook-Pro-10:Downloads bjhl$ 

 

2、查看当前目录底下所有的具有 0 Blocks 的文件系统

$ df -a
Filesystem     Size   Used  Avail Capacity iused               ifree %iused  Mounted on
/dev/disk1s1  113Gi   49Gi   60Gi    45%  859857 9223372036853915950    0%   /
BJHLdeMacBook-Pro-10:Downloads bjhl$ df -i ideaIU-2019.1.3.dmg 
Filesystem   512-blocks      Used Available Capacity iused               ifree %iused  Mounted on
/dev/disk1s1  236568496 102739016 126207592    45%  859857 9223372036853915950    0%   /
BJHLdeMacBook-Pro-10:Downloads bjhl$ df -a
Filesystem    512-blocks      Used Available Capacity iused               ifree %iused  Mounted on
/dev/disk1s1   236568496 102795848 126150760    45%  860464 9223372036853915343    0%   /
devfs                368       368         0   100%     638                   0  100%   /dev
/dev/disk1s4   236568496   6291496 126150760     5%       4 9223372036854775803    0%   /private/var/vm
map -hosts             0         0         0   100%       0                   0  100%   /net
map auto_home          0         0         0   100%       0                   0  100%   /home

3、查看某个文件的磁盘属性,语法:df -h 文件名   或  df  -a  文件名,不同的参数,有不同的空间大小单位:

$ df -h ideaIU-2019.1.3.dmg 
Filesystem     Size   Used  Avail Capacity iused               ifree %iused  Mounted on
/dev/disk1s1  113Gi   49Gi   60Gi    45%  860576 9223372036853915231    0%   /


$ df -a ideaIU-2019.1.3.dmg 
Filesystem   512-blocks      Used Available Capacity iused               ifree %iused  Mounted on
/dev/disk1s1  236568496 102941840 126004768    45%  861029 9223372036853914778    0%   /

 

df命令
2019-05-20 13:25:21 weixin_35794878 阅读数 94

一、命令详情:

df [参数] [目录]

df -h:文件大小以GB为单位显示,易读。如果Used显示100%,说明的是有大文件的存在,硬盘被占满;

df-i:显示inode的使用情况,本人的理解是inode分配是有一定容量的,IUsed显示100%,说明inode被分配完了,说明小文件数量太多;

df -k :文件大小以KB为单位显示,其实在df 命令不加任何参数时,显示的就是KB为单位的文件大小;

df -l:显示本地的分区的磁盘空间使用率,如果服务器nfs了远程服务器的磁盘,那么在df上加上-l后系统显示的是过滤nsf驱动器后的结果;

二、解决问题的思路(df -h):

1.df -h 之后,发现某个挂载点Used100%:

2. 知道了是硬盘满了的问题,name下一步就是开始查找服务器中的大文件,从根目录开始查找,通过du -h --max-depth=1命令,发现是home文件夹占用空间较多:

cd ./home,然后 通过du -h --max-depth=1命令依次往下查找,最后发现是oracle占用空间较大:

再去仔细查找发现log文件以及listener.org占用较多,定位到了问题!

2017-08-08 22:52:38 zheshijieyouwo 阅读数 5951

1. 磁盘满了

如果一台机器磁盘满了,首先我们需要确定其位置,命令为

 df(或者df -h//显示结果
Filesystem    512-blocks      Used Available Capacity  iused    ifree %iused  Mounted on
/dev/disk0s2   488555536 124047536 363996000    26% 15569940 45499500   25%   /
devfs                361       361         0   100%      626        0  100%   /dev
map -hosts             0         0         0   100%        0        0  100%   /net

找到那一块盘满了以后,使用命令du一级一级的查找,确定最大文件。

    du -h --max-depth=1 | grep 'G' | sort -n

如果是日志文件过大需要删除时候,使用日志切割,保留最新日志。

//指定分割后文件行数
split -l 300 largelog newlog
//指定分割后文件大小
 split -b 10m largelog newlog

在有些情况下,直接删除文件并不能释放空间,比如Nginx日志文件。因为在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。这时候就需要重启nginx服务,对于某些线上服务这样做肯定不行,所以可以使用 echo “” > ./log将文件清空,优雅的删除日志。

2. 负载过高

使用uptime命令查看机器负载。

uptime
//输出
up 1 day, 23:14, 2 users, load averages: 1.69 2.21 2.09

平均负载表示1、5、15分钟进程队列中的平均进程数量。一般单核大于3的话负载就算高了。查看linux多少cpu与核的命令如下:

 #查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
#查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l

然后使用top命令查看每个进程占用CPU,内存情况。top显示时候使用“M”进程会按内存使用排序,按“P”会按CPU使用排序。

如果没有进程占用大量CPU,内存资源的话,可能就是某个进程阻塞了。使用ps -ef, 看到哪个进程会卡住,然后去/proc/中找到这个进程对应的文件,看是否能正常打开。

找到以后杀死这个进程或者重启机器。

3. can’t lock /etc/passwd;try again later

  1. 首先查看是在/etc下否存在lock文件,
$cd /etc  
$ls *.lock  
$ rm -f *.lock //删除文件锁  
  1. 没有的话,使用df -i看是否 inode满了,如果是
    查找每个文件下的文件数目
for i in ./*; do echo $i; find $i | wc -l |sort -n ; done

找到后删除没用的小文件。
建议去/var/spool/postfix/maildrop去看看。

科普一下df -i与df -h,一个是总共能创建多少文件,一个是总共能创建多大的文件。

2019-11-20 14:13:41 qq_34861139 阅读数 7

Oracle关于磁盘及修改数据文件

1、首先查看服务器磁盘占用情况(AIX小机为df -g; linux虚机为df -h)
根据客户要求或者自己选择一个足够大的磁盘卷组 本机为/kshfs

df -g

Filesystem GB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 25.00 8.75 66% 52656 3% /
/dev/hd2 20.00 14.12 30% 100914 3% /usr
/dev/hd9var 10.00 9.59 5% 8620 1% /var
/dev/hd3 15.00 6.35 58% 3527 1% /tmp
/dev/hd1 20.00 20.00 1% 13 1% /home
/dev/hd11admin 5.00 5.00 1% 5 1% /admin
/proc - - - - - /proc
/dev/hd10opt 10.00 9.29 8% 13823 1% /opt
/dev/livedump 5.00 5.00 1% 4 1% /var/adm/ras/livedump
/dev/lv00 0.25 0.24 4% 18 1% /var/adm/csd
/dev/itjklv 5.00 5.00 1% 4 1% /itjkfs
/dev/kshlv 5110.00 4409.82 14% 42827 1% /kshfs
2、登录数据库查看表空间使用情况和数据文件路径位置

su - oracle 登录Oracle用户

$ . ./dbenv ------------切环境
$ sqlplus / as sysdba ------------ 登录数据库

SQL*Plus: Release 11.2.0.3.0 Production on Wed Nov 20 10:18:24 2019

Copyright © 1982, 2011, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

---------------------------查看表空间使用情况------------------------
SQL> select df.tablespace_name “tablespace_name”,
2 totalspace - freespace “used_mb”,
3 totalspace “total_spaceM”,
4 freespace “free_spaceM”,
5 round((1 - freespace / totalspace) * 100, 2) “used%”
6 from (select tablespace_name, round(sum(bytes) / 1024 / 1024) totalspace
7 from dba_data_files
8 group by tablespace_name) df,
9 (select tablespace_name, round(sum(bytes) / 1024 / 1024) freespace
10 from dba_free_space
11 group by tablespace_name) fs
12 where df.tablespace_name = fs.tablespace_name(+) order by round((1 - freespace / totalspace) * 100, 2) desc;

---------------显示出所有表空间占用数据库所属情况--------------------
tablespace_name used_mb total_spaceM free_spaceM used%


USERS 373590 572412 198822 65.27
SYSAUX 824 1894 1070 43.51
SYSTEM 733 1764 1031 41.55
UNDOTBS1 55 1960 1905 2.81

-------------------查看数据文件路径位置----------------------------

SQL> select file#,name from v$datafile;

 FILE#

NAME

     1

/u01/app/oracle/oradata/bck/system01.dbf

     2

/u01/app/oracle/oradata/bck/sysaux01.dbf

     3

/u01/app/oracle/oradata/bck/undotbs01.dbf

     4

/kshfs/users01.dbf

     5

/kshfs/users02.dbf

3、把所需表空间offline (本次实验为users表空)
SQL> alter tablespace USERS offline;

Tablespace altered.

4、有已知目录这步可省略(本次实验需新建目录并授权Oracle)
#pwd ---------------查看目前所属目录位置
/kshfs
#mkdir datafile -------------------建立目录datafile

ls ------------------查看是否成功存在

DMDUMP cfmroot datafile

ls -g ---------查看目录权限

total 1195459520
drwxr-xr-x 2 oinstall 4096 Nov 20 10:17 DMDUMP
drwxr-x— 2 audit 256 Apr 19 2012 audit
lrwxrwxrwx 1 bin 8 Nov 05 13:00 bin
lrwxrwxrwx 1 system 20 Nov 05 13:00 cfmroot
drwxr-xr-x 3 system 256 Aug 16 03:58 csminstall
drwxr-xr-x 3 oinstall 256 Nov 18 11:56 data
drwxrwxrwx 2 system 256 Nov 20 10:21 datafile
drwxrwxr-x 5 system 20480 Nov 05 00:00 dev
drwxr-xr-x 16 system 4096 Aug 15 13:20 esa
drwxr-xr-x 2 system 256 Aug 23 21:49 lost+found
drwxr-xr-x 2 system 4096 Nov 20 10:15 sotware
-rw-r----- 1 oinstall 11855208448 Nov 14 22:25 temp01.dbf
drwxrwxr-x 4 oinstall 256 Nov 15 15:21 u01
-rw-r----- 1 oinstall 34355290112 Nov 20 10:05 users01.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users02.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users03.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users04.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users05.dbf
#chown -R oracle:oinstall datafile -----------授权目录权限Oracle:oinstall

ls -g --------检测已授权成功

total 1195459520
drwxr-xr-x 2 oinstall 4096 Nov 20 10:17 DMDUMP
drwxr-x— 2 audit 256 Apr 19 2012 audit
lrwxrwxrwx 1 bin 8 Nov 05 13:00 bin
lrwxrwxrwx 1 system 20 Nov 05 13:00 cfmroot
drwxr-xr-x 3 system 256 Aug 16 03:58 csminstall
drwxr-xr-x 3 oinstall 256 Nov 18 11:56 data
drwxrwxrwx 2 oinstall 256 Nov 20 10:21 datafile
drwxrwxr-x 5 system 20480 Nov 05 00:00 dev
drwxr-xr-x 16 system 4096 Aug 15 13:20 esa
drwxr-xr-x 2 system 256 Aug 23 21:49 lost+found
drwxr-xr-x 2 system 4096 Nov 20 10:15 sotware
-rw-r----- 1 oinstall 11855208448 Nov 14 22:25 temp01.dbf
drwxrwxr-x 4 oinstall 256 Nov 15 15:21 u01
-rw-r----- 1 oinstall 34355290112 Nov 20 10:05 users01.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users02.dbf
-rw-r----- 1 oinstall 33286004736 Nov 20 10:05 users03.dbf
5、cp/mv 数据文件到新指定位置
(空间够足建议先cp,确定完成后无用再把旧位置数据文件删除,
不过cp执行会耗时较久)
#ls -----------------查看旧目录下所有数据文件
DMDUMP cfmroot datafile lost+found u01 users03.dbf users06.dbf users09.dbf users12,dbf users15.dbf users18.dbf
audit csminstall dev sotware users01.dbf users04.dbf users07.dbf users10.dbf users13.dbf users16.dbf
bin data esa temp01.dbf users02.dbf users05.dbf users08.dbf users11.dbf users14.dbf users17.dbf

---------------------------复制所有users数据文件到新目录----------------------

cp users01.dbf /kshfs/datafile

6.修改oracle表空间指向地址
alter database rename file ‘/kshfs/users01.dbf’ to ‘/kshfs/datafile/users01.dbf’
7.修改表空间为Online
alter tablespace USERS online;

Linux的inode的理解

阅读数 16

linux系统iNode耗尽

阅读数 326

没有更多推荐了,返回首页