分类目录归档:linux命令

每日一个linux命令 df

每日一个linux命令:df

linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

1.命令格式:

df [选项] [文件]

2.命令功能:

显示指定磁盘文件的可用空间。如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间将被显示。默认情况下,磁盘空间将以 1KB 为单位进行显示,除非环境变量 POSIXLY_CORRECT 被指定,那样将以512字节为单位进行显示

3.命令参数:

必要参数:

[/crayon]

选择参数:

[/crayon]

4.使用实例:

实例1:显示磁盘使用情况

命令:
df
输出:

[/crayon]

说明:

linux中df命令的输出清单的第1列是代表文件系统对应的设备文件的路径名(一般是硬盘上的分区);第2列给出分区包含的数据块(1024字节)的数目;第3,4列分别表示已用的和可用的数据块数目。用户也许会感到奇怪的是,第3,4列块数之和不等于第2列中的块数。这是因为缺省的每个分区都留了少量空间供系统管理员使用。即使遇到普通用户空间已满的情况,管理员仍能登录和留有解决问题所需的工作空间。清单中Use% 列表示普通用户空间使用的百分比,即使这一数字达到100%,分区仍然留有系统管理员使用的空间。最后,Mounted on列表示文件系统的挂载点。

实例2:以inode模式来显示磁盘使用情况

命令:
df -i
输出:

[/crayon]

说明:

实例3:显示指定类型磁盘

命令:
df -t ext3
输出:

[/crayon]

说明:

实例4:列出各文件系统的i节点使用情况

命令:
df -ia
输出:

[/crayon]

说明:

实例5:列出文件系统的类型

命令:
df -T
输出:

[/crayon]

说明:

实例6:以更易读的方式显示目前磁盘空间和使用情况

命令:

输出:

[/crayon]

说明:

-h更具目前磁盘空间和使用情况 以更易读的方式显示
-H根上面的-h参数相同,不过在根式化的时候,采用1000而不是1024进行容量转换
-k以单位显示磁盘的使用情况
-l显示本地的分区的磁盘空间使用率,如果服务器nfs了远程服务器的磁盘,那么在df上加上-l后系统显示的是过滤nsf驱动器后的结果
-i显示inode的使用情况。linux采用了类似指针的方式管理磁盘空间影射.这也是一个比较关键应用

linux下查看文件详细信息命令stat

有时候想要查看linux 文件的详细的一些时间 ls -l 出来的结果可能不是你想要的了

stat 出来的结果可能才是你想要的

说明:Access访问时间。Modify修改时间。Change状态改变时间。可以stat *查看这个目录所有文件的状态
与文件相关的3个时间:

  1、访问时间,读一次这个文件的内容,这个时间就会更新。比如对这个文件使用more命令。ls、stat命令都不会修改文件的访问时间。

  2、修改时间,对文件内容修改一次,这个时间就会更新。比如:vi后保存文件。ls -l列出的时间就是这个时间。

  3、状态改变时间。通过chmod命令更改一次文件属性,这个时间就会更新。查看文件的详细的状态、准确的修改时间等,可以通过stat命令文件名。

下面是 man stat 的详细信息解释

用法:stat [选项]… 文件…
Display file or file system status.

有效的文件格式序列(不使用 –file-system):

有效的文件系统格式序列:

linux LVM分区查看dm设备

在linux中iostat -d查看磁盘状态时,有的会有如下dm-0,dm-1的条目.

如果在分区时利用了LVM,则一般会生成dm-N 逻辑卷(LogicVolume).它类似于普通分区时的一个分区如sda0之类的.只不过它利用了Mapper Device机制,在PysicalVolume上虚拟出来的分区信息.

查找dm-N对应的挂载点

显示dev252-0,dev252-1,即主设备号为dev252(sda设备号为dev8,这是linux为设备生成的内部设备号),次设备号为0,1

 
可看到软链到 /dev/dm-N上.

可看到两者的主设备号都是252

linux命令之find

linux命令之find

find是linux下很强大的搜索工具,但速度慢且很费硬盘。但不管怎么说,此命令的使用频率依然很高。

使用选项:
find [路径] <表达式> [操作]

1、name选项,按名称查找

查找当前目录下的manage.py 文件:find . -name ‘manage.py’

2、atime/ctime/mtime选项,根据时间(24小时为单位)查找

注:a表示access,c表示create,m表示modify
查找24小时之内创建的文件: find . -ctime -1
查找24小时之前创建的文件: find . -ctime 1
注:atime和mtime用法一致

3、amin/cmin/mmin选项,根据时间查找

查找10分钟之内创建的文件: find . -cmin -10
查找10分钟之前创建的文件: find . -cmin 10
注:amin和mmin用法一致

4、anewer/cnewer/mnewer,查找比某一文件新的文件

查找在hello.py之后访问过的文件:find . -anewer hello.py

5、user

查找属于某一用户的文件:find . -user the5fire

6、type

查找所有文件:find . -type f
查找所有目录包含demo的目录:find . -type d -name ‘demo

7、exec,据说是很强大的参数

查找’setup.py’文件,然后打开: find . -name ‘setup.py’ -exec vim {} \;
另外一个最常用的,强制删除项目下面的所有.svn文件目录,find . -name ‘.svn’ -exec rm -rf {} \;

8、empty

显示所有的空白文件,并显示详细:find . -empty -ls #加ls完全画蛇添足,只是为了说明这个参数。

9、size

显示大小为10k的文件:find . -size 10k
显示所有大于10k的文件:find . -size +10k
显示所有小于10k的文件:find .-size -10k

10、or、and、not, 或、与、非查询

查找大于10k或者名称含有demo的文件:find . -size +10k -o -name ‘demo
查找大于10k且小于100k的文件:find . -size +10k -a -size -100k
查找大于10k并且名称不含有demo的文件:find . -size +10k ! -name ‘demo

11、perm,根据文件权限查找

注:如查找权限为600的文件:find . -perm 600,如果权限前面加“-”号,表示满足一位匹配即可,
如:find . -perm 007会匹配权限为007、077、777的文件

12、regex,用正则表达式查找

如: find . -regex ‘./[0-9]\w.’(匹配以数字开头的文件)

13、-maxdepth,限制目录深度查找

查找一级目录下的所有py文件:find . -name ‘*.py’ -maxdepth 1

输入find -help之后还有很多,就不一一列了,这些应该能满足日常需求了。欢迎补充^_^

linux命令之chattr

   一般Linux的文件系统都是ext2/ext3。ext文件系统的文件,目录会有一些文件系统所特有的属性。我们之前所熟知的rwx等属性是linux操作系统赋予文件的属性,和登录用户相关。而本文所说的这个特性是文件系统相关的,它不受登录用户的限制。

   ext3所包括的文件属性很多,主要涉及到文件在文件系统上的存储、是否启用日志、是否更新atime、是否采用压缩等多种高级特性,其中我们常见的一种属性就是防删除。

   使用lsattr命令可以查看文件的文件系统属性,

   lsattr

   横杠-表示未设置属性,默认情况下新建的文件是没有任何属性的,可以用chattr命令来进行修改。

   每种属性有一个代号,详细的代号及其解释可以使用man chattr查看。我们说的防删除属性代号为i。chattr  +用来增加属性,chattr  -用来去除属性。需要注意的时,执行chattr需要root权限,否则会修改失败。我们为linux这个文件增加i属性,如下:

   chattr

   此时文件linux已经被赋予了i属性,尝试删除就会错误。

   rm

   同时,此文件也不能被修改,重命名以及做硬链接。

   利用这个特性就可以实现保护系统文件的目的,防止由于误操作导致文件丢失。