软链接和硬链接:
软链接,又称符号链接,它的原理是通过一个文本文件记录真实文件在系统中的位置,然后在文件操作的时候通过该地址查找原文件然后对其操作。类似于Windows里面的快捷方式。软链接可以链接不同文件系统中的文件。
硬链接,实际上是多个文件名指向同一个索引节点(在Linux文件系统中,磁盘中的任何文件都有一个编号——Inode Index索引节点)。也就是说Linux允许多个有效路径名对应同一个索引节点。这有点类似于多个引用指向同一个内存对象。只有在删除最后一个指向该索引节点的文件的时候,这个文件才真正从系统中被删除,否则只是仅仅移除指向这个索引节点的路径名。就像Java虚拟机只能释放引用计数为0的内存对象一样。硬链接的好处是,能够保护系统中的重要文件不被轻易删除,但是硬链接只能链接本文件系统中的文件。
例子:
$ln [-s]study /home/learn
加上-s选项是软链接(符号链接),不加是硬链接。
umask命令:
改变默认权限掩码,umask的目的实际上是在新文件创建设置该新文件权限的时候屏蔽一些权限。
例子:
umasku=rwx,g=rx,o=
Umask 027
注意这两个命令实际上是等效的,容易搞混淆:
第一个命令是设置新文件的默认权限。
第二个命令是屏蔽新文件的权限,这两条命令产生的新文件默认权限都是:rwxr-x---
chown命令:
改变文件的拥有者,命令格式:
Chown[-R]用户名[:组名] [文件名|文件夹名]
加上-R递归选项,表示将该文件夹下所有的文件的所有者都更改。
chgrp命令:
更改文件或目录所属的组,命令格式:
Chgrp[-R]新文件属组文件或目录名
-R参数,递归的将该文件夹下所有的文件和子目录进行权限变更。