连结档

连结档

连结档有点类似 Windows 底下的『快捷方式』!也就是很多的连结档案( link file )其实都指向同一个来源档案( source file )。

连结档还分成 Hard link 与 symbolic link 两种

[[email protected] ~]# ln [-sf] 来源文件 目标文件
参数:
-s :如果 ln 不加任何参数就进行连结,那就是 hard link,至于 -s 就是 symbolic link
-f :如果 目标文件 存在时,就主动的将目标文件直接移除后再建立!
范例:
范例一:将 /etc/passwd 复制到 /tmp 底下,并且观察 inode 与 block
[[email protected] ~]# cd /tmp
[[email protected] tmp]# cp -a /etc/passwd .
[[email protected] tmp]# du -sb ; df -i .
26948 . <== 先注意一下,这里的容量是多少!
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda1 1537088 144016 1393072 10% /
# 利用 du 与 df 来检查一下目前的参数~那个 du -sb
# 是计算整个 /tmp 底下有多少 bytes 的容量啦!
范例二:将 /tmp/passwd 制作 hard link 成为 passwd-hd 档案
[[email protected] tmp]# ln passwd passwd-hd
[[email protected] tmp]# du -sb ; df -i .
26948 .
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda1 1537088 144016 1393072 10% /
# 仔细看,即使多了一个档案在 /tmp 底下,整个 inode 与 block 的容量并没有改变!
[[email protected] tmp]# ls -il passwd*
1242760 -rw-r--r-- 2 root root 1746 Jun 29 01:03 passwd
1242760 -rw-r--r-- 2 root root 1746 Jun 29 01:03 passwd-hd
# 原来是指向同一个 inode 啊!这是个重点啊!另外,那个第二栏的连结数也会增加!
范例三:将 /tmp/passwd 建立一个符号连结
[[email protected] tmp]# ln -s passwd passwd-so
[[email protected] tmp]# ls -li passwd*
1242760 -rw-r--r-- 2 root root 1746 Jun 29 01:03 passwd
1242760 -rw-r--r-- 2 root root 1746 Jun 29 01:03 passwd-hd
1242806 lrwxrwxrwx 1 root root 6 Jul 23 20:02 passwd-so -> passwd
# 仔细看喔,这个 passwd-so 指向的 inode number 不同了!这是一个新的档案~
# 这个档案的内容是指向 passwd 的,你可以看到这个档案的大小,是 6bytes ,
# 怎么来的?因为 passwd 共有六个字符啊!哈哈!没错~这个连结档的内容只是填写
# 连结的目标档案文件名而已!所以,你的连结档档名 (有时候含路径) 有多长,档案就多大!
[[email protected] tmp]# du -sb ; df -i .
26954 .
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda1 1537088 144017 1393071 10% /
# 呼呼!整个容量与 inode 使用数都改变啰~确实如此啊!
范例四:删除源文件 passwd ,其它两个档案是否能够开启?
[[email protected] tmp]# rm passwd
[[email protected] tmp]# cat passwd-hd
......正常显示完毕!
[[email protected] tmp]# cat passwd-so
cat: passwd-so: No such file or directory
# 怕了吧?!竟然无法正常的开启这个档案呢~ 

使用 ln 如果不加任何参数的话,那么就是 Hard Link

如果 ln 使用 -s 的参数时,就做成差不多是 Windows 底下的『快捷方式』的意思( Symbolic Link,较常用! )。当你修改 Linux 下的 link 档案时,则更动的其实是『原始档』, 所以不论你的这
个原始档被连结到哪里去,只要你修改了连结档,原始档就跟着变啰!

[email protected]:/usr/local# ln -s /usr/local/mysql-5.6.11-linux-glibc2.5-i686/ mysql

时间: 2024-11-03 02:35:22

连结档的相关文章

删除vi编辑异常生成.test.java.swp文档的方法

删除vi编辑异常生成.test.java.swp文档的方法 在linux下用vi或vim打开Test.java文件时 [[email protected] tmp]# vi Test.java 出现了如下信息: E325: ATTENTION Found a swap file by the name ".Test.java.swp" owned by: root   dated: Wed Dec  713:52:562011 file name: /var/tmp/Test.java

第八章、Linux 磁盘与文件系统管理

第八章.Linux 磁盘与文件系统管理 1. 认识 EXT2 文件系统 1.1 硬盘组成与分割的复习 1.2 文件系统特性: 索引式文件系统 1.3 Linux 的 EXT2 文件系统(inode): data block, inode table, superblock, dumpe2fs 1.4 与目录树的关系 1.5 EXT2/EXT3 文件的存取与日志式文件系统的功能 1.6 Linux 文件系统的运行 1.7 挂载点的意义 (mount point) 1.8 其他 Linux 支持的文

Linux命令(13):cp命令

Linux系统中cp(copy)命令是用来复制文件或者目录的. man cp可以获得cp的详细描述 命令格式: cp [OPTION]... [-T] SOURCE DEST      //cp [选项]-[-T]源目的 cp [OPTION]... SOURCE... DIRECTORY   // cp [选项]-源-目录 cp [OPTION]... -t DIRECTORY SOURCE...  // cp [选项]--t 目录 源- 功能: Copy SOURCE to DEST, or

CentOS目录结构超详细版

 linux 目录结构 /: 根目录,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区中/bin:/usr/bin: 可执行二进制文件的目录,如常用的命令ls.tar.mv.cat等./boot: 放置linux系统启动时用到的一些文件./boot/vmlinuz为linux的内核文件,以及/boot/grub.建议单独分区,分区大小100M即可/dev: 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,

centos启动流程[转]

启动流程概览 在硬件驱动成功后,Kernel 会主动呼叫 init 程序,而 init 会取得 run-level 资讯: init 运行 /etc/rc.d/rc.sysinit 文件来准备软件运行的作业环境 (如网络.时区等): init 运行 run-level 的各个服务之启动 (script 方式): init 运行 /etc/rc.d/rc.local 文件: init 运行终端机模拟程序 mingetty 来启动 login 程序,最后就等待使用者登陆啦:    init,/etc

硬链接与软连接[转自vbird]

前言 在 Linux 底下的连结档有两种,一种是类似 Windows 的快捷方式功能的文件,可以让你快速的链接到目标文件(或目录),这种是软链接: 另一种则是透过文件系统的 inode 连结来产生新档名,而不是产生新文件!这种称为硬链接 (hard link). 这两种玩意儿是完全不一样的东西呢!现在就分别来谈谈. Hard Link (实体链接, 硬式连结或实际连结) 在前一小节当中,我们知道几件重要的信息,包括: 每个文件都会占用一个 inode ,文件内容由 inode 的记录来指向:想要

linux杂记(六)档案权限

[[email protected] ~]$ ls -al 总用量 192 drwx------. 35 KANO KANO 4096 10月 7 21:58 . drwxr-xr-x. 4 root root 4096 9月 29 17:26 .. drwxrwxr-x. 2 KANO KANO 4096 10月 1 20:05 .aliedit -rw-------. 1 KANO KANO 16384 10月 6 22:32 .bash_history -rw-r--r--. 1 KANO

Linux文件与目录管理 - ls, cp, mv

[[email protected] ~]# ls [-aAdfFhilnrRSt] 目录名称 [[email protected] ~]# ls [--color={never,auto,always}] 目录名称 [[email protected] ~]# ls [--full-time] 目录名称 选项与参数: -a :全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用) -A :全部的文件,连同隐藏档,但不包括 . 与 .. 这两个目录 -d :仅列出目录本身,而不是列出

cp 命令(转)

原文:http://www.cnblogs.com/peida/archive/2012/10/29/2744185.html cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖.这说明命令行和shell脚本的执行方式有些不同. 1.命令格式: 用法: cp [选项]... [-T] 源