Linux规定了四种文件类型:普通文件、目录文件,链接文件和()文件。

【答案】:答案:分析C:Linux中主要文件类型分为四种:普通文件、链接文件、目录文件、设备文件1、普通文件普通文件只是字节序列,Linux没有指定任何类型其内容的结构。
这可能包括程序源代码、可执行文件、图像、声音等。
2.目录文件目录也是文件,包含文件名和子目录名以及指向哪些文件和子文件的指针。
3.链接文件。
一个节点i可以关联多个文件。
节点i包含一个字段,其中包含与文件的关联数。
4.设备文件在类Unix操作系统下,设备是通过特殊文件来访问的。

【技术分享】Linux实体链接与符号链接

很简单,但为什么我不能硬链接到目录?这是因为当使用硬链接链接到目录时,链接的数据必须与链接目录下的所有数据链接在一起。
例如,如果您要创建一个/etc_hd目录,其中包含指向/etc的实体链接,则/etc_hd下的所有文件名应与/etc下的文件名同时硬链接,而不是链接到/etc_hd和/etc。
此外,如果将来需要在/etc_hd下创建新文件,您还需要创建指向/etc下数据的硬链接,这会使您的环境变得相当复杂。
所以目前hardlink暂时不支持目录!·SymbolicLink(符号链接,即快捷方式)符号链接比硬链接容易理解得多。
默认情况下,Symboliclink创建一个独立文件,从链接文件中读取数据。
因为我们只使用这些文件作为指导,所以,如果源文件被删除,符号链接文件将变得“无法打开”,并且您仍然会看到消息“无法打开该特定文件!”其实只是找不到原来的“文件名”而已!例如,我们首先创建并查看/etc/crontab的符号链接文件:从上表的结果可以看出,两个文件指向不同的inode号。
当然有两个独立的文件!而链接文件的重要一点是它们写入了目标文件的“文件名”。
从上表中,你能看出为什么链接文件的大小是12字节吗?箭头(-->)右侧的文件名“/etc/crontab”共有12个英文字母,每个英文字母占用1个字节,所以文件大小为12个字节!上述解释用下图来说明。
从inode1读取的链接文件的内容只是文件名。
根据文件名,它连接到正确的目录以获取目标文件的索引节点。
,最后就可以读取到正确的数据了。
我可以告诉的是,如果目标文件(/etc/crontab)被删除,整个过程将无法继续,导致链接文件无法读取的问题!这里必须特别小心。
SymbolicLink和Windows之间的快捷方式可以等同于此。
由Symboliclink创建的文件是新的、独立的文件,因此占用inode和块。