02.08 补充

软连接Symbolic Link & 硬链接 Hard Link

further explaination: https://blog.csdn.net/u013982161/article/details/52434309

INODE

理解inode,要从文件储存说起。

文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。

操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。

文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。

每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。

*INODE 的内容

inode包含文件的元信息,具体来说有以下内容:

  * 文件的字节数

  * 文件拥有者的User ID

  * 文件的Group ID

  * 文件的读、写、执行权限

  * 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。

  * 链接数,即有多少文件名指向这个inode

  * 文件数据block的位置

*INODE 的大小

inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。

每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。假定在一块1GB的硬盘中,每个inode节点的大小为128字节,每1KB就设置一个inode,那么inode table的大小就会达到128MB,占整块硬盘的12.8%。

查看每个硬盘分区的inode总数和已经使用的数量,可以使用df命令。

 

 

 

软连接

是指一个文件里面存了另一个文件的路径/目录同理(节省空间)

eg. /bin 就是一个软连接文件,他应该在usr/bin下面

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/B49E5C2AAB6540339267E8C1E246CC5B/1626

如何做软链接

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/4B8FAF8A365F4D5FA9D50246A1F89B2C/1634

也可以为目录做软链接

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/39F16096DF88449FA0D70D6715BAFA49/1638

以下软链接(相对路径的软链接)仅仅是在当前目录下,(不推荐)

**假如你把所有文件拷贝到另一个文件夹里,你会发现文件不存在。 改了一个名字就会导致软链接初见问题,所以软链接尽量使用绝对路径

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/34F1763BEAFD4A9AA8D2BF11D3F42072/1642

如何解决服务占用磁盘空间的问题

随着文写的写入/boot下面某文件会越来越大,解决方法是先把文件拷贝到剩余空间大的分区中去,并做软链接到/boot 下面,路径为原路径

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/5E4963EAEBA842C59B8DA73677A3E32E/1655

硬链接

硬链接不支持对目录做硬链接,只支持对文件做硬链接,不能跨分区

创建了一个文件,新文件与源文件共用一个inode并且相互为硬链接,硬链接删除源文件无影响,软链接会报错,*硬链接并不会占用多余空间

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/7F7A9FF0445841A580E3B6DF980D5268/1675

软链接和硬链接比较

硬链接:其实就是同一个文件具有多个别名,具有相同inode,而dentry不同。

              1. 文件具有相同的inode和data block;

              2. 只能对已存在的文件进行创建;

              3. 不能交叉文件系统进行硬链接的创建

              4. 不能对目录进行创建,只能对文件创建硬链接

              5. 删除一个硬链接并不影响其他具有相同inode号的文件;

软链接:软链接具有自己的inode,即具有自己的文件,只是这个文件中存放的内容是另一个文件的路径名。因此软链接具有自己的inode号以及用户数据块。

              1. 软链接有自己的文件属性及权限等;

              2. 软链接可以对不存在的文件或目录创建;

              3. 软链接可以交叉文件系统;

              4. 软链接可以对文件或目录创建;

              5. 创建软链接时,链接计数i_nlink不会增加;

              6. 删除软链接不会影响被指向的文件,但若指向的原文件被删除,则成死链接,但重新创建指向 的路径即可恢复为正常的软链接,只是源文件的内容可能变了。

Find 命令

其他搜索文件命令: which/ whereis(只有更新后的文件才能找到)/ locate(未安装, yum install -y mlocate-需要每天生成 updatedb手动生成)

Please input text here

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/FEE0C476C03143C1B12514EAEE51481C/1707

option 选项:

-name   filename             #查找名为filename的文件

-perm                        #执行权限来查找

-user    username             #按文件属主来查找

-group groupname            #组来查找

-mtime   -n +n                #按文件更改时间来查找文件,-nn天以内,+nn天以前

-atime    -n +n               #按文件访问时间来查GIN: 0px">

-ctime    -n +n              #按文件创建时间来查找文件,-nn天以内,+nn天以前

-size      n[c]               #查长度为n块[或n字节]的文件

 

 

文件种类有很多: d, f, l, s, c and b

find / -mtime(modify), -ctime(change) and -atime(access)

mtime 是指更改文件内容,ctime,是指更改权限。 更改文件内容mtime,ctime一定会随之变化

cat 1.txt 访问1.txt内容

state + file 查看文件3个time

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/6D9E127941E24C64BCF3F5B4E9A06BDA/1732

+1/_1 表示文件更改时间一天以外/以内,同时也可以尝试按分钟搜索(同理+—10k 也是按文件大小搜索)

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/253CB89E39EB4BFD8E644F93D772961C/1754

 

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/164A1E883DF74BE49FA044B774B9B29D/1740

通过inode搜索硬链接文件

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/C3AA2FED1ED947118F0C25191F80A57A/1746

搜索某文件目录并list 出来(针对于某种需求就是要某文件)

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/E9720C916D19408EBF9C8D1D335139F0/1760

Fine总结

(1)Find工具-name参数案列:

find /data/ -name "*.txt" #查找/data/目录以.txt结尾的文件;

find /data/ -name "[A-Z]*" #查找/data/目录以大写字母开头的文件;

find /data/ -name "test*" #查找/data/目录以test开头的文件;

(2)Find工具-type参数案列:

find /data/ -type d #查找/data/目录下的文件夹;

find /data/ ! -type d #查找/data/目录下的非文件夹;

find /data/ -type l #查找/data/目录下的链接文件。

find /data/ -type d|xargs chmod 755 -R #查目录类型并将权限设置为755;

find /data/ -type f|xargs chmod 644 -R #查文件类型并将权限设置为644;

(3)Find工具-size参数案列:

find /data/ -size +1M #查文件大小大于1Mb的文件;

find /data/ -size 10M #查文件大小为10M的文件;

find /data/ -size -1M #查文件大小小于1Mb的文件;

(4)Find工具-perm参数案列:

find /data/ -perm 755 #查找/data/目录权限为755的文件或者目录;

find /data/ -perm -007 #与-perm 777相同,表示所有权限;

find /data/ -perm +644 #文件权限在644以上;

(5)Find工具-mtime参数案列:

atime,access time 文件被读取或者执行的时间;

ctime,change time 文件状态改变时间;

mtime,modify time 文件内容被修改的时间;

find /data/ -mtime +30 -name "*.log" #查找30天以前的log文件;

find /data/ -mtime +30 -name "*.log" #查找30天以前的log文件;

find /data/ -mtime 30 -name "*.txt"#查找第30天的log文件;

find /data/ -mmin +30-name "*.log" #查找30分钟以前修改的log文件;

find /data/ -

 -30 -name "*.txt" #查找30分钟以内被访问的log文件;

find /data/ -cmin 30 -name "*.txt"#查找第30分钟改变的log文件。

(6)Find工具参数综合案列:

#查找/data目录以.log结尾,文件大于10k的文件,同时cp到/tmp目录;

find /data/ -name "*.log" –type f -size +10k -exec cp {} /tmp/ /;

#查找/data目录以.txt结尾,文件大于10k的文件,权限为644并删除该文件;

find /data/ -name "*.log" –type f -size +10k -m perm 644 -exec rm –rf {} /;

#查找/data目录以.log结尾,30天以前的文件,大小大于10M并移动到/tmp目录;

find /data/ -name "*.log" –type f -mtime +30 –size +10M -exec mv {} /tmp/ /;

Shutcut Key Consolidate

CTRL-L 清屏

CTRL-D 退出终端=log out=EXIT

CTRL-C 撤销当前命令

CTRL-U 删掉前面的全部输入

CTRL-E 会把光标移动到最后面去

CTRL-A 把光标移动到最开始

Linux 和window 文件互传

普通Linux和Windows之间的文件共享方法,主要有建立nfs实现文件共享,和tftp之类的方法,但是都很麻烦,而如果只是小文件(几十 K,几百K),那么直接用rz/sz,就显得极其地方便了

注意要在xshell的环境下

yum install -y lrzsz

如下图显示SZ 和RZ 的区别:

 

SZ:将选定文件发送到本地及其

RZ: 运行命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive)

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/EFAC79BF201B42D0A5A424DAD1BCC8EB/1774

注意:单独用rz会有两个问题:上传中断、上传文件变化(md5不同),解决办法是上传是用rz -be,并且去掉弹出的对话框中“Upload files as ASCII”前的勾选。 

http://note.youdao.com/yws/public/resource/fd43f5e5c4b3dd64213b841055d8818a/xmlnote/352141B45451410F8BD0A085BBD532AA/2193

 

 

猜你喜欢

转载自blog.csdn.net/nongfuchui/article/details/81409482