在Linux和国产化系统日常运维中,很多人复制文件只会使用cp。但实际上,在统信UOS、银河麒麟、Debian、Ubuntu等系统里,真正适合“安装文件”、“创建目录”、“批量部署脚本”的命令,其实是install,别看它名字叫install,它并不是安装软件包的命令!它真正的作用是:
复制文件
自动修改权限
自动修改属主
自动创建目录
保持规范化部署
一、什么是install命令?
install是Linux中用于“复制文件并同时设置权限、属主、目录结构”的专业部署命令,它比cp更适合系统部署、程序安装、服务初始化、自动化运维、软件打包。
二、install和cp有什么区别?
功能 | cp | install |
复制文件 | √ | √ |
自动设置权限 | × | √ |
自动修改属主 | × | √ |
自动创建目录 | × | √ |
适合部署程序 | 一般 | 非常适合 |
常用于 Makefile | 少 | 非常多 |
常用于系统初始化 | 少 | 非常多 |
三、查看install命令版本
1.先确认系统存在install
pdsyw@pdsyw1024:~/Desktop$ which install
/usr/bin/install
2.查看版本:
pdsyw@pdsyw1024:~/Desktop$ install --version
四、install最基础用法
1、复制文件
效果:复制文件,如果目标是目录,则保留原文件名,相当于:
cp com.qihoo.360safe_12.0.0.7600_amd64.deb /home/pdsyw/Desktop/但install更偏向“部署”。
root@pdsyw1024:/var/cache/apt/archives# install com.qihoo.360safe_12.0.0.7600_amd64.deb /home/pdsyw/Desktop/
五、最核心功能:自动设置权限
这是install最重要的价值。含义:
参数 | 作用 |
-m | 设置权限 |
755 | rwxr-xr-x |
root@pdsyw1024:/home/pdsyw/Desktop# install -m 755 pdsyw1024.sh /usr/local/bin/
root@pdsyw1024:/home/pdsyw/Desktop# ls -l /usr/local/bin/pdsyw1024.sh
-rwxr-xr-x 1 root staff 0 5月 21 19:33 /usr/local/bin/pdsyw1024.sh
六、为什么install比chmod+cp更专业?
很多人会这样写:
root@pdsyw1024:/home/pdsyw/Desktop# cp pdsyw1024.sh /usr/local/bin/
root@pdsyw1024:/home/pdsyw/Desktop# chmod 755 /usr/local/bin/pdsyw1024.sh
而专业写法:
root@pdsyw1024:/home/pdsyw/Desktop# install -m 755 pdsyw1024.sh /usr/local/bin/
优势:一步完成、更规范、不容易遗漏权限、适合自动化脚本、适合批量部署,所以很多Makefile里都会看到:
install -m 755而不是:
cp + chmod七、install自动修改属主
1、修改owner
root@pdsyw1024:/home/pdsyw/Desktop# install -o root pdsyw1024.sh /usr/local/bin/
2、修改group
root@pdsyw1024:/home/pdsyw/Desktop# install -g root pdsyw1024.sh /usr/local/bin/
3、同时修改
root@pdsyw1024:/home/pdsyw/Desktop# install -o root -g root pdsyw1024.sh /usr/local/bin/
八、企业里最常见写法
含义:复制程序、权限755、属主root、属组root,这是Linux软件部署标准写法之一。
root@pdsyw1024:/home/pdsyw/Desktop# install -m 755 -o root -g root app /usr/local/bin/
九、install自动创建目录(非常实用)
1、创建目录
效果:自动创建/data/app/logs,相当于
mkdir -p /data/app/logsroot@pdsyw1024:/home/pdsyw/Desktop# install -d /data/app/logs
root@pdsyw1024:/home/pdsyw/Desktop# ls -ltr /data/app/logs/
2、创建目录并设置权限
root@pdsyw1024:/home/pdsyw/Desktop# install -d -m 755 /data/app/logs
root@pdsyw1024:/home/pdsyw/Desktop# ls -ltrd /data/app/logs/
drwxr-xr-x 2 root root 4096 5月 21 19:37 /data/app/logs/
3、创建目录并设置属主
这在Web服务、Docker数据目录、应用初始化、日志目录创建中特别常见。
root@pdsyw1024:/home/pdsyw/Desktop# install -d -o pdsyw -g pdsyw /data/app
十、install在运维中的经典场景
场景1:部署shell脚本
root@pdsyw1024:/home/pdsyw/Desktop# install -m 755 backup.sh /usr/local/bin/
场景2:部署systemd服务
root@pdsyw1024:/home/pdsyw/Desktop# install -m 644 app.service /etc/systemd/system/
场景3:部署配置文件
root@pdsyw1024:/home/pdsyw/Desktop# install -m 644 nginx.conf /etc/nginx/
场景4:部署二进制程序
root@pdsyw1024:/home/pdsyw/Desktop# install -m 755 myapp /usr/bin/
十一、install常用参数详解
参数 | 作用 |
-m | 设置权限 |
-o | 设置属主 |
-g | 设置属组 |
-d | 创建目录 |
-v | 显示详细过程 |
-b | 覆盖前备份 |
-D | 自动创建目标路径 |
十二、-D参数非常强大
如果/opt/app/bin/不存在,install会自动创建目录,这是cp做不到的。
root@pdsyw1024:/home/pdsyw/Desktop# install -D pdsyw1024.sh /opt/app/bin/pdsyw1024.sh
root@pdsyw1024:/home/pdsyw/Desktop# ls -ltr /opt/app/bin/
总用量 0
-rwxr-xr-x 1 root root 0 5月 21 19:41 pdsyw1024.sh
十三、查看详细安装过程
适合调试脚本、查看部署过程。
root@pdsyw1024:/home/pdsyw/Desktop# install -v -m 755 pdsyw1024.sh /usr/local/bin/
'pdsyw1024.sh' -> '/usr/local/bin/pdsyw1024.sh'
十四、覆盖前自动备份
会生成pdsyw1024.sh~防止误覆盖。
root@pdsyw1024:/home/pdsyw/Desktop# install -b pdsyw1024.sh /usr/local/bin/
root@pdsyw1024:/home/pdsyw/Desktop# ls -ltr /usr/local/bin/pdsyw*
-rwxr-xr-x 1 root staff 0 5月 21 19:43 /usr/local/bin/pdsyw1024.sh~
-rwxr-xr-x 1 root staff 0 5月 21 19:43 /usr/local/bin/pdsyw1024.sh
十五、install不会保留原时间
很多人会忽略这一点,默认install会重新生成文件时间。如果需要保留可加参数-p。
root@pdsyw1024:/home/pdsyw/Desktop# install -b -p pdsyw1024.sh /usr/local/bin/
root@pdsyw1024:/home/pdsyw/Desktop# ls -ltr /usr/local/bin/pdsyw*
-rwxr-xr-x 1 root staff 0 5月 21 19:32 /usr/local/bin/pdsyw1024.sh
-rwxr-xr-x 1 root staff 0 5月 21 19:43 /usr/local/bin/pdsyw1024.sh~
十六、install与chmod、chown的关系
很多人容易混,install不是权限命令,权限本质还是chmod;install不是属主命令,属主本质还是chown,install是“部署整合命令”,它把cp、chmod、chown、mkdir整合到了一起。
在统信UOS、麒麟、Linux、服务器运维中,很多人只会cp,但真正专业的部署方式其实是install,因为它不仅能复制文件,还能自动设置权限、自动设置属主、自动创建目录、自动完成规范化部署,尤其在自动化运维、Shell脚本、RPM/DEB打包、Makefile、systemd服务部署里,几乎随处可见。如果你想从“会用Linux”真正进阶到“专业Linux运维工程师”,install命令一定要掌握。
更新时间:2026-05-28
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight All Rights Reserved.
Powered By 61893.com 闽ICP备11008920号
闽公网安备35020302035593号