一、查看文件夹大小du

du -h -d1 2>/dev/null

解释:

  • h表示以可读性较好的方式显示,即带单位显示
  • d表示深度depth,为1表示只显示当前目录下文件的大小
  • 2>/dev/null,表示跳过那些不可读的文件

使用find命令也能够查看文件大小,但是比较复杂

find / -size +100M |xargs ls -lh 列出系统内大于100M的文件,这个命令比较耗时

du -h --max-depth=1 查看当前目录内文件夹的大小。这种方式最好了。在最近做出更改的目录下使用此命令可以快速定位大文件的位置。

二、查看磁盘大小df

df -h 查看磁盘空间占用,实际上是查看磁盘块占用的文件(block)

df -i 查看索引节点的占用(Inodes)

磁盘块和索引节点其中之一满,都会导致无法创建文件,提示磁盘空间已满。

所以请注意,查看磁盘还有空间,但是创建文件提示空间满,可能是inodes节点已满

三、查看内存使用情况free

watch free:查看每时每刻内存变化情况

三、创建交换区makeswap

问题:virtual memory exhausted: Cannot allocate memory

内存太小的解决办法:使用硬盘替代内存,交换区的存在使得内存空间可以和硬盘空间一样大。

free先查看一下,可以发现交换区大小为0

~$free
total used free shared buffers cached
Mem: 1017832 784328 233504 356 12844 14692
-/+ buffers/cache: 756792 261040
Swap: 0 0 0

使用dd命令从/dev/zero中读取全0初始化一个文件,这个文件名可以名叫swap,相当于一个交换区的名字。使用free显示的空间大小单位都是kB,也就是block的个数,一个磁盘块的大小默认是1024B。正常情况下,4G内存才够用,所以建议减缓区大小为4096000。

~$dd if=/dev/zero of=swap bs=1024 count=1024000
1024000+0 records in
1024000+0 records out
1048576000 bytes (1.0 GB) copied, 6.30189 s, 166 MB/s

查看一下swap空间的大小

~$ll swap
-rw-rw-r-- 1 ubuntu ubuntu 1048576000 Oct 18 02:48 swap

交换区已经准备好了,下一步就等着让它生效了。首先要在这块空间上建立分块。

~$mkswap swap
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=1372d681-b265-469b-8d9d-d637cbedbef7

交换区终于可以投入使用了。

~$sudo swapon swap
~$free -h
total used free shared buffers cached
Mem: 1017832 947088 70744 356 1692 189112
-/+ buffers/cache: 756284 261548
Swap: 1023996 0 1023996

运行着发现交换区太小了,需要进一步扩大,一方面可以重复以上步骤重建另一个交换区,另一方面可以在当前这个交换区的基础上先shutdown然后在重复上述步骤。

~$sudo swapoff swap
~$free
total used free shared buffers cached
Mem: 1017832 947844 69988 356 1744 189728
-/+ buffers/cache: 756372 261460
Swap: 0 0 0

综上,创建一个名为swap的文件作为交换区。首先要设置该文件的大小,使用dd文件复制命令从if复制到of,复制count次,每次复制bs大小的空间。然后将swap文件格式化为交换区,使用"mkswap 文件名"命令,该命令会是swap文件腾出4*1024B(即为4页)的空间专门作为交换区头部。最后"swapon 文件名"命令打开交换区,此时查看内存就能够看见swap区的大小了。不想用交换区之后,用swapoff关闭交换区,关闭之后就可"rm swap"删除交换区了.

linux磁盘相关命令的更多相关文章

  1. Linux进程相关命令使用场景

    Linux进程相关命令使用场景 在Linux系统上工作时,我们常常会碰到很多和进程相关的查询场景,今天在这里进行详细的讲解,进程相关的对象包括以下几个: 端口:Port 进程号:PId 执行文件所在路 ...

  2. Linux性能相关命令

    Linux性能相关命令 目录 Linux性能相关命令 1. 查看硬盘相关信息 2. 查看CPU相关信息 3. 查看内存相关信息 4. 查看进程运行的信息 1. 查看硬盘相关信息 cat /proc/s ...

  3. Linux文件管理相关命令

    Linux文件管理相关命令   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...

  4. Linux 网络相关命令 Cheat Sheet

    以下漫画形式呈现的常用 Linux 网络相关命令速查表来自 twitter -

  5. Linux解压缩相关命令

    Linux解压缩相关命令 运行级别: 0:关机 1:单用户 2:多用户无网络连接 3:多用户有网络连接 4:系统保留 5:图形界面 6:系统重启 通过init[0123456]来切换不同的运行级别 g ...

  6. Linux 文本相关命令(1)

    Linux 文本相关命令(1) 前言 最近线上环境(Windows Server)出现了一些问题,需要分析一下日志.感觉 Windows 下缺少了一些 Linux 系统中的小工具,像在这波操作中用到的 ...

  7. Linux文本相关命令

    Linux文本相关命令 目录 Linux文本相关命令 文本排序命令 文本去重命令 基础命令cut 文本三剑客 sed awk grep 文本排序命令 sort 常用参数: -n:以数值大小进行排序 - ...

  8. linux 硬盘相关命令学习

    summary: 查看硬盘信息:几块硬盘,品牌,容量 查看分区信息 参考资料: Linux下查看磁盘分区命令详解: http://blog.chinaunix.net/uid-26119273-id- ...

  9. Linux - 系统信息相关命令

    系统信息相关命令 本节内容主要是为了方便通过远程终端维护服务器时,查看服务器上当前 系统日期和时间 / 磁盘空间占用情况 / 程序执行情况 本小结学习的终端命令基本都是查询命令,通过这些命令对系统资源 ...

随机推荐

  1. AngulerJS学习(五)按需动态载入文件

    在此之前我么年首先要先了解几个东西: $q 简单介绍: $q:主要解决的是异步编程的问题,是指描写叙述通过一个承诺行为与对象代表的异步运行的行动结果的交互.可能会也可能不会再不论什么时候完毕. 我们通 ...

  2. 【使用JSOUP实现网络爬虫】修改数据-设置属性的值

    问题 在你解析一个Document之后可能想修改其中的某些属性值,然后再保存到磁盘或都输出到前台页面. 方法 可以使用属性设置方法 Element.attr(String key, String va ...

  3. Linq-Contains查询

    customers.Where(c => c.Name.Contains("john"));

  4. Eclipse关掉项目SVN的链接

    有时候 svn 会导致 eclipse 反应很慢,可以关掉 svn项目信息展现. 1. 点击项目文件夹,右键出现项目信息 2. 选择team项 3. Disconnect.

  5. 深入理解FFM原理与实践

    原文:http://tech.meituan.com/deep-understanding-of-ffm-principles-and-practices.html 深入理解FFM原理与实践 del2 ...

  6. 如何将.NET 4.0写的Windows service和Web API部署到docker上面

    Web API. 看这篇文章: https://docs.microsoft.com/en-us/aspnet/mvc/overview/deployment/docker-aspnetmvc Win ...

  7. Mongo = get size of single document

      Object.bsonsize(db.test.findOne({type:"auto"}))

  8. 比特币 Bitcoin 是什么,我勒个去,哈耶克果然超前——货币的非国有化,容我思量一下【转载+整理】

    原文地址 比特币矿业史(上):故事的开始,CPU 时代 比特币矿业史(中):群众的觉醒 ,GPU 时代 比特币矿业史(下):巨头的诞生 ,ASIC 时代 本文内容 引子 0 序 1 故事的开始 : C ...

  9. LintCode: Triangle

    C++ 逆推 class Solution { public: /** * @param triangle: a list of lists of integers. * @return: An in ...

  10. Windows Service 之 Bug 记录

    1.未能将“obj\x86\Debug\**.exe”复制到“bin\Debug\**.exe”.超出了重试计数 10.失败. 解决方案:关闭 VS 程序,到上述下,把 **.exe 删掉,然后重新打 ...