install命令的作用是备份文件和设置属性。与cp命令相似,但是install命令在复制文件时会默认把复制后的文件权限改为755(可参考:Linux文件、目录的属性)。
语法
install [选项] [参数1] [参数2]
选项
-d 所有参数都作为目录处理,并创建指定的所有目录;
-g 指定备份文件的属组;
-m 指定备份文件的权限(用法同chmod命令);
-o 指定属主(仅限超级用户使用);
-p 备份文件保持与源文件时间戳相同。
参数
参数1指的是源文件或目录;
参数2指的是备份的文件或目录。
实例
观察install命令备份后文件属性的变化(install备份文件后时间戳和权限被改变):
[root@itkaifang ~]# ll total 12 -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop [root@itkaifang ~]# install anaconda-ks.cfg a [root@itkaifang ~]# ll total 16 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop
-d选项的应用(比较有意思的一点是在备份目录时,会把源目录和备份目录的权限都改变):
[root@itkaifang ~]# mkdir b [root@itkaifang ~]# ll total 20 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop [root@itkaifang ~]# chmod 600 b [root@itkaifang ~]# ll total 20 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drw------- 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop [root@itkaifang ~]# install -d b c [root@itkaifang ~]# ll total 24 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 2 root root 4096 Oct 12 21:20 c drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop
-o、-g、-m选项的组合应用(注意观察a和d文件的权限、属主和属组):
[root@itkaifang ~]# ll total 24 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 2 root root 4096 Oct 12 21:20 c drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop [root@itkaifang ~]# install -o oracle -g oinstall -m 600 a d [root@itkaifang ~]# ll total 28 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 2 root root 4096 Oct 12 21:20 c -rw------- 1 oracle oinstall 1124 Oct 12 21:25 d drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop
-p选项的应用(注意观察anaconda-ks.cfg和e文件的时间戳):
[root@itkaifang ~]# ll total 28 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 2 root root 4096 Oct 12 21:20 c -rw------- 1 oracle oinstall 1124 Oct 12 21:25 d drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop [root@itkaifang ~]# [root@itkaifang ~]# install -p anaconda-ks.cfg e [root@itkaifang ~]# ll total 32 -rwxr-xr-x 1 root root 1124 Oct 12 21:15 a -rw------- 1 root root 1124 Sep 21 20:52 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 Oct 12 21:20 b drwxr-xr-x 2 root root 4096 Oct 12 21:20 c -rw------- 1 oracle oinstall 1124 Oct 12 21:25 d drwxr-xr-x 3 root root 4096 Sep 21 12:55 Desktop -rwxr-xr-x 1 root root 1124 Sep 21 20:52 e
---End---