linux命令学习-第三天

3.1 Linux文件信息

inode和目录项

1,什么是inode和目录项

文件在硬盘上的最小存储单位叫做扇区,每个扇区存储512字节。操作系统读取硬盘的时候,不会一个个扇区读取,而是一次性连续读取多个扇区,即一次性读取一个块,块的大小最常见的就是4K,即连续八个扇区组成一个块。

文件数据都存储在块中,那么和显然,还必须有一个地方存储文件的元信息。比如文件的创建者,文件的创建日期,文件的长度等,这种存储文件元信息的区域就叫做inode(索引节点)。

文件名不是保存在inode中,而是保存在目录项中,文件名把文件的名称和对应的inode关联在一起。

2,inode大小

inode也会占用磁盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分为两个区域,一个是数据区,存放文件数据,另一个是inode区,存放inode所包含的信息。

每个inode节点的大小,一般是128字节或256字节,inode字节的总数,在格式化时就给指定了,一般是每1KB或每2KB就设置一个inode.假设在一块1GB的硬盘中,每个inode节点大大小为128字节,每1KB

就设置一个inode,那么inode表的大小就会达到128MB,占整个硬盘的12.8%。使用df命令可以查看每个硬盘分区的inode总数和已经适应的数量。

# df -i

文件系统              Inode  已用(I)  可用(I) 已用(I)%% 挂载点

/dev/mapper/vg_server-lv_root

3276800   94445 3182355    3% /

tmpfs                 256881       5  256876    1% /dev/shm

/dev/sda1             128016      43  127973    1% /boot

/dev/mapper/vg_server-lv_home

2990080      12 2990068    1% /home

---------------------------------------------------------------------

查看每个inode的大小,可以使用以下命令:

# dumpe2fs -h /dev/sda1 |grep "Inode size"

dumpe2fs 1.41.12 (17-May-2010)

Inode size:               128

---------------------------------------------------------------------

由于每个文件都必须有一个inode,因此有可能发生inode已经用光,但是硬盘还未存满的情况,这时就无法再硬盘上创建新文件。

3,inode号码:

每个inode都有一个号码,Linux系统用inode号码来识别不同的文件,Linux系统内部不使用文件名,而使用inode号码来识别文件,对系统来说,文件名只是inode号码便于识别的别名。表面上用户通过文件名打开文件,实际上系统内部这个过程分为三步:首先系统找到这个文件名对应的 inode号码,其次通过inode号码获取inode信息,最后根据信息找到文件数据所在的块,然后读取数据。

使用ls -i 命令可以查看文件名对应的inode号码:

# ls -i test.log

3019507 test.log

---------------------------------------------------------------------

3.2 使用stat命令查看文件信息。

使用stat命令可以查看文件信息,比如文件的inode,权限,时间属性,文件大小,所有者,链接数量以及文件类型等。

#stat kkk

File: "kkk"

Size: 4096            Blocks: 8          IO Block: 4096   目录

Device: fc02h/64514d    Inode: 2228225     Links: 2

Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2017-07-17 20:07:20.463000814 +0800

Modify: 2017-07-17 20:06:49.095997672 +0800

Change: 2017-07-17 20:06:49.095997672 +0800

cd 更改工作目录路径

绝对路径从/(根)开始,然后循环所需的目录下

相对路径从当前目录开始

cd ~       :进入用户主目录

--------------------------------------------------------------------

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

--------------------------------------------------------------------

cd ..      :返回上级目录

--------------------------------------------------------------------

cd ../..   :返回上两级目录

---------------------------------------------------------------------

touch:创建空文件,更改文件时间。

---------------------------------------------------------------------

mkdir:创建目录:

-p :一次创建多个目录。

---------------------------------------------------------------------

#du -a /boot|sort -rn|head -5

45791   /boot

16124   /boot/initramfs-2.6.32-358.el6.x86_64.img

15816   /boot/initramfs-2.6.39-400.17.1.el6uek.x86_64.img

4011    /boot/vmlinuz-2.6.39-400.17.1.el6uek.x86_64

3951    /boot/vmlinuz-2.6.32-358.el6.x86_64

---------------------------------------------------------------------

sort:

-n 依据数值的大小排序。

-r 以相反的顺序来排序。

---------------------------------------------------------------------

head:

head用来显示档案的开头至标准输出当中,默认head命令打印其相应文件的开头10行。

head -n 显示的行数。

---------------------------------------------------------------------

tail:

默认查看文件的最后10行。

tail -5 查看文档的最后5行

---------------------------------------------------------------------

ls 列出目录和文件信息

文件属性    文件数 拥有者  所属的group  文件大小     建档日期   文件名  

drwx------    2    Guest     users         1024       21
21:05   Mail

-rwx--x—x    1    root     root           89080     7 22:41    tar 

-rwxr-xr-x    1    root     bin            5013       15 9:32    uname

-rwxr-xr-x    1    root     bin            308364     29 7:43    zsh 

-rwsr-x---    1    root     bin            9853       15
5:46    su

例,一文件的最后一次访问时间(最近时间为后),对/root目录中的文件和子目录进行排序显示

#ls -ltr /root

总用量 32

drwxr-xr-x. 2 root root 4096
7月  17
13:29 桌面

drwxr-xr-x. 2 root root 4096
7月  17
13:29 音乐

drwxr-xr-x. 2 root root 4096
7月  17
13:29 下载

drwxr-xr-x. 2 root root 4096
7月  17
13:29 文档

drwxr-xr-x. 2 root root 4096
7月  17
13:29 图片

drwxr-xr-x. 2 root root 4096
7月  17
13:29 视频

drwxr-xr-x. 2 root root 4096
7月  17
13:29 模板

drwxr-xr-x. 2 root root 4096
7月  17
13:29 公共的

-rw-r--r--  1 root root   
0 7月  18 19:49 oracle-release

3.3链接文件的简介:

Linux系统下提供ln指令来进行文件链接。文件链接主要分为硬链接和软链接。

1,硬链接:由于linux下的文件是通过索引节点(inode)来识别文件,硬链接可以认为是一个指针,指向文件索引节点的指针,系统并不为它重新分配inode。每添加一个一个硬链接,文件的链接数就加1。

可以用:ln命令来建立硬链接

例如:

ln file01 hardfile01  建立file01的硬链接

不足:

尽管硬链接节省空间,也是Linux系统整合文件系统的传统方式,但是存在一下不足之处:

(1)不可以在不同文件系统的文件间建立链接

(2)只有超级用户才可以为目录创建硬链接。

取消硬链接时可以使用unlink取消任何一个,对其他文件没有影响

例如:unlink file01

2,软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号链接。

ln -s abc cde 建立abc 的软连接

时间: 2025-01-31 08:43:21

linux命令学习-第三天的相关文章

Linux命令学习笔记目录

Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 2.linux命令学习笔记(2):cd命令 3.linux命令学习笔记(3):pwd命令 4.linux命令学习笔记(4):mkdir命令 5.linux命令学习笔记(5):rm 命令 6.linux命令学习笔记(6):rmdir 命令 7.linux命令学习笔记(7):mv命令 8.linux命

linux命令学习之文件目录命令-mv命令

mv命令可以用来移动文件或者将文件改名(move (rename) files),经常用来备份文件或者目录 命令学习 命令格式:mv [选项] 源文件或目录 目标文件或目录命令功能:根据mv命令中第二个参数类型(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中.当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名.当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各

Linux命令学习之—每天发一个命令—mkdir

Linux命令学习之-每天发一个命令-mkdir mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录. 1.命令格式: mkdir [选项] 目录... 2.命令功能: 通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录.要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限.并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能

Linux命令学习Day1

一直想学习Linux命令行,但是总是没有坚持.[Linux命令学习]系列博客将会记录我学习命令行的点点滴滴. 今天自己学习的4个命令: uname -- 查看系统信息 find -- 查找命令 dos2unix – Dos文件转换成Unix文件 cat -- 显示命令 下面简要描述下这几个命令. uname常用的几个选项: -a(打印所有信息) -s(内核名字) -r(内核版本) find功能强大,常用的语法格式: 路径 -- 在find命令后开始搜索的路径,若未指定则默认从当前路径开始搜索 -

linux命令学习-首篇

在home目录的.bashrc 添加了如下逻辑,目的是可以"每日"学习或复习linux命令 # 学习linux命令 # echo "Did you know that:"; whatis $(ls /bin | shuf -n 1) cowsay -f $(ls /usr/share/cowsay/cows | shuf -n 1 | cut -d. -f1) $(whatis $(ls /bin) 2>/dev/null | shuf -n 1) 效果图:

Linux命令学习总结: file命令

http://www.cnblogs.com/kerrycode/p/3806618.html Linux命令学习总结: file命令 命令简介: 该命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的. 执行权限 :All User 指令所在路径:/usr/bin/file 命令语法: file [ -bchikLnNprsvz ] [ -f namefile ] [ -F separator ] [

每日linux命令学习-引用符号(反斜杠\,单引号'',双引号"")

引用符号在解析器中保护特殊元字符和参数扩展,其使用方法有3种:反斜杠(\),单引号(''),双引号(""). 单引号和双引号必须匹配使用,均可在解析器中保护特殊元字符和通配符,但是单引号(硬转义)主要用于信息的原样输出,防止任何变量的扩展,双引号(软转义)允许变量扩展.转义符和命令替换.单引号保护双引号,双引号保护单引号. 1. 反斜杠 反斜杠通过解析器将1个字符转化为引用符号或转义. 1)在单引号内使用反斜杠,反斜杠不会被解析,保持原样输出. 2)在双引号内使用反斜杠,主要用于美元符

Linux命令学习总结:rm命令

命令简介: 该命令用来删除Linux系统中的文件或目录.通常情况下rm不会删除目录,你必须通过指定参数-r或-R来删除目录.另外rm通常可以将该文件或目录恢复(注意,rm删除文件其实只是将指向数据块的索引点(information nodes)释放,只要不被覆盖,数据其实还在硬盘上.如果想要保证文件的内容无法复原,可以使用命令shred . 另外一般还是要慎用rm -rf *这样的命令. 执行权限 :All User 指令所在路径:/bin/rm 命令语法: rm [OPTION]... FIL

Linux命令学习总结:reboot命令

命令简介: 该命令用来重启Linux系统.相当于Windows系统中的restart命令. 命令语法: /sbin/reboot [-n] [-w] [-d] [-f] [-i] 或 reboot [-n] [-w] [-d] [-f] [-i] 命令参数: 参数 长参数 描叙 -d 重新启动时不把数据写入记录文件/var/tmp/wtmp -f 强制重新开机,不调用shutdown指令的功能. -h 在系统关机或poweroff之前,将所有的硬盘处于待机模式 -i 关闭网络设置之后再重新启动系