gnome硬盘分析_解决八种Linux硬盘问题的技巧

不能在Linux或者类UNIX系统的硬盘上写入数据?想解决服务器上磁盘损坏的问题吗?想知道你为什么总是在屏幕上看到“磁盘已满”的字眼吗?想学习处理这些问题的办法吗?试试一下这8个解决Linux及UNIX服务器硬盘问题的小贴士吧。

#1 - 错误: 设备上无剩余空间

当你的类UNIX系统磁盘写满了时你会在屏幕上看到这样的信息。本例中,我运行fallocate命令然后我的系统就会提示磁盘空间已经耗尽:

$ fallocate-l1Gtest4.img

fallocate:test4.img:fallocate failed:Nospace left on device

第一步是运行df命令来查看一个有分区的文件系统的总磁盘空间和可用空间的信息:

$ df

或者试试可读性比较强的输出格式:

$ df-h

部分输出内容:

FilesystemSizeUsedAvailUse%Mountedon

/dev/sda6117G54G57G49%/

udev993M4.0K993M1%/dev

tmpfs201M264K200M1%/run

none5.0M05.0M0%/run/lock

none1002M01002M0%/run/shm

/dev/sda11.8G115M1.6G7%/boot

/dev/sda74.7G145M4.4G4%/tmp

/dev/sda99.4G628M8.3G7%/var

/dev/sda894G579M89G1%/ftpusers

/dev/sda104.0G4.0G0100%/ftpusers/tmp

使用df命令输出可以清楚地发现,在 /dev/sda10 分区下总共4.0Gb的空间被全部写满了。

修复磁盘写满的问题

gzip/ftpusers/tmp/*.log

bzip2 /ftpusers/tmp/large.file.name

rm-rf/ftpusers/tmp/*.bmp

rsync--remove-source-files-azv/ftpusers/tmp/*.mov /mnt/usbdisk/

rsync --remove-source-files -azv /ftpusers/tmp/*.mov server2:/path/to/dest/dir/

du-a/ftpusers/tmp|sort-n-r|head-n10

du-cks*|sort-rn|head

5.清空指定文件。这招对日志文件很有效:

truncate-s0/ftpusers/ftp.upload.log

### bash/sh等 ##

>/ftpusers/ftp.upload.log

## perl ##

perl-e'truncate "filename", LENGTH'

6.在Linux和UNIX中找出并删除显示着但已经被删除的大文件:

## 基于Linux/Unix/OSX/BSD等系统 ##

lsof-nP|grep'(deleted)'

## 只基于Linux ##

find/proc/*/fd -ls | grep '(deleted)'

清空它:

## 基于Linux/Unix/OSX/BSD等所有系统 ##

>"/path/to/the/deleted/file.name"

## 只基于Linux ##

>"/proc/PID-HERE/fd/FD-HERE"

#2 - 文件系统是只读模式吗?

当你尝试新建或保存一个文件时,你可能最终得到诸如以下的错误:

$ cat>file

-bash:file:Read-only file system

运行mount命令来查看被挂载的文件系统是否处于只读状态:

$ mount

$ mount|grep'/ftpusers'

在基于Linux的系统中要修复这个问题,只需将这个处于只读状态的文件系统重新挂载即可:

# mount -o remount,rw /ftpusers/tmp

(LCTT 译注:如果硬盘由于硬件故障而 fallback 到只读模式,建议不要强制变回读写模式,而是赶快替换硬盘)

# mount -o rw /dev/ad0s1a /

#3 - Am I running out of inodes?

有时候,df命令能显示出磁盘有空余的空间但是系统却声称文件系统已经写满了。此时你需要用以下命令来检查能在文件系统中识别文件及其属性的索引节点:

$ df-i

$ df-i/ftpusers/

部分输出内容:

FilesystemInodesIUsedIFreeIUse%Mountedon

/dev/sda862504961156862389281%/ftpusers

如上 /ftpusers 下有总计62,50,496KB大小的索引节点但是只有11,568KB被使用。你可以在 /ftpusers 位置下另外创建62,38,928KB大小的文件。如果你的索引节点100%被使用了,试试看以下的选项:

找出不想要的文件并删除它,或者把它移动到其它服务器上。

找出不想要的大文件并删除它,或者把它移动到其它服务器上。

(LCTT 译注:如果一个分区存储了太多的小文件,会出现 inode 用完而存储扇区还有空闲的情况,这种情况下要么清除小文件或在不需要独立访问的情况下将它们打包成一个大文件;要么将数据保存好之后重新分区,并设置分区的 -t news 属性,增加 inode 分配)

#4 - 我的硬盘驱动器宕了吗?

日志文件中的输入/输出错误(例如 /var/log/messages)说明硬盘出了一些问题并且可能已经失效,你可以用smartctl命令来查看硬盘的错误,这是一个在类UNIX系统下控制和监控硬盘状态的一个命令。语法如下:

smartctl-a/dev/DEVICE

# 在Linux服务器下检查 /dev/sda

smartctl-a/dev/sda

你也可以用"Disk Utility"这个软件来获得同样的信息。

图 01: Gnome磁盘工具(Applications > System Tools > Disk Utility)

注意: 不要对S.M.A.R.T.工具期望太高,它在某些状况下无法工作,我们要定期做备份。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/406443.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML DOM console.table() 方法

HTML DOM console.table() 方法

百度之后,电子银行还安全么?

用户:百度在哪里啊?百度在哪里?***:百度就在小朋友的心里!用户:银行在哪里啊?银行在哪里?***:银行就在我家里,这里没有防盗门啦!这里没有监控啦。…

利用IDA6.6进行apk dex代码动态调试

网上公开IDA6.6已经有一段时间,这个版本有个好处就是可以动态调试java代码。正好现在需要动态调试,所以顺便练习一下。 根据android的官方文档,如果要调试一个apk里面的dex代码,必须满足以下两个条件中的任何一个: 1.a…

十大经典排序算法python_十大经典排序算法的算法描述和代码实现

这里详细讲解了十大经典算法的分类,例如交换排序、插入排序、选择排序等比较类排序,以及计数排序、桶排序和基数排序的非比较类排序,分析了各种排序算法的复杂度和稳定性,还有JAVA代码的详细实现。对冒泡排序、插入排序、选择排序…

oracle日志查看问题?

From: http://www.iteye.com/problems/34438 假如我在存储过程中有一条dbms_output.put_line(s)语句;当我执行这个存储过程的时候。是否这个打印会存储到系统日志里?如果存储到系统日志里,或者是某个表中。我该怎么查看那? 会存入系统表中.查…

[react] react是哪个公司开发的?

[react] react是哪个公司开发的? facebook 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

js执行shell命令的几种方式(Node)

js执行shell命令的几种方式(Node) nodejs 执行cmd或shell命令 Nodejs调用shell脚本 nodejs调用shell

换了一块硬盘

不知不觉T400的小黑已经伴我走过了一年的时间,终于今天要给它换一块比较快的硬盘,7200.4希捷笔记本硬盘,下面是测试的数据 在网络查了下,好像性能还不错,只是显卡性能一般了一些。。。

Linux系统安装Nodejs

Linux系统安装Nodejs

模态对话框与非模态对话的几种销毁方法与区别

From: http://renjwjx.blog.51cto.com/811549/191320/ 前几天发现自己的程序中使用非模态对话框,Debug版本有警告提示如下: Warning: calling DestroyWindow in CWnd::~CWnd OnDestroy or PostNcDestroy in derived class will not be called 由于是Warn…

处理问题的方式

1. 测试代码的时候,如果某段代码效率特别差,可以通过注释部分代码的方式以确定问题代码的位置。测试的时候一定保证只有一部分代码在执行,排除其他干扰。 2. 日志记录: 1). 要有详细的日志记录,方便出错时查找。 2). 在…

常用软件

1. vim安装wget ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2解压tar.bz2文件tar -xjf vim-7.2.tar.bz2./configure --prefix/usr/soft_install/make && make install2. src.rpm安装方法1:Redhat 9或mandrake 9以上#rpmbuild --rebuild XXXX.src.rpm方法2:#rpm --r…

jvm 堆 比例_JVM调优原则

JVM调优原则调优目标将进入老年代的对象数量降到最低减少 Full GC 的执行时间在同样场景下,采用多个机器上进行参数调整后的比较验证,将验证能够提高性能的参数应用到最终所有服务器上。一般常规满足下列不需要优化Minor GC执行时间不到50ms;…

sublime的使用

sublime text3实用教程-安装js智能提示插件 sublime text 3/2怎么卸载删除插件

Linux主机硬盘的主要规划

系统对于硬盘的需求跟刚刚提到的主机开放的服务有关,那么除了这点之外,还有没有其他的注意事项?当然有,那就是数据的分类与数据安全性的考虑,即当主机系统的硬件出现问题时,你的档案数据能否安全的保存。 前…

64位虚拟机下asm()语法_用Hyper-V在win10中创建虚拟机,简单快捷,不用安装其它软件...

运行虚拟机是使用操作系统的好方法,因为无需在电脑上安装它,例如,你可以毫无风险地试用最新的Windows 10试用版或新的Ubuntu(Linux)发行版。以下是如何在Windows 10中创建虚拟机的方法。认识Windows 10中的Hyper-V微软提供了一个称为Hyper-V的…

Eclipse快捷键大全

终结技:CtrlShiftL 显示所有快捷键Ctrl1 快速修复(最经典的快捷键,就不用多说了)CtrlD: 删除当前行 CtrlAlt↓ 复制当前行到下一行(复制增加)CtrlAlt↑ 复制当前行到上一行(复制增加)Alt↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt↑ 当前行…

判断一个Checkbox是否被选中

环境:Win XP VC2010 MFC对话框程序 在窗口添加一个checkbox,其ID为:ID_CHECK1,添加其点击事件: void CWorkHelperDlg::OnBnClickedCheck1() {CButton *pCheckbox (CButton*)GetDlgItem(IDC_CHECK1);if(pCheckbox-&…

微信公众平台 分享到朋友圈 js代码

前言:1目前必须是被微信认证过的公众平台才能使用此接口 1.绑定域名 2.引用文件 http://res.wx.qq.com/open/js/jweixin-1.0.0.js 3配置前台js配置 var url location.href.split(#)[0]; wx.config({ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端…