/ usr/sbin/install真正做了什么?

Rob*_*öld 6 install makefile discount

我正在尝试在我的基于Solaris的VPS上安装折扣,并且在设置一些环境变量之后编译工作很好,但是安装失败了.

所以我认为我会手动安装,但install真正做到了什么?它只是一个mv跟着一个chmod?这很神奇吗?这个错误似乎表明它试图大量搜索文件?

我可以像往常一样复制二进制文件,库和头文件吗?

谷歌搜索"安装"并没有给我很多相关信息,所以我感谢我能得到的任何澄清!

Seb*_*olm 8

根据man install:

install [OPTION]... [-T] SOURCE DEST`  
install [OPTION]... SOURCE... DIRECTORY  
install [OPTION]... -t DIRECTORY SOURCE...  
install [OPTION]... -d DIRECTORY...  
Run Code Online (Sandbox Code Playgroud)

在前三种形式中,将SOURCE复制到DEST或将多个SOURCE复制到现有DIRECTORY,同时设置权限模式和所有者/组.在第4种形式中,创建给定目录的所有组件.

至于使用的区别cp,根据安装与cp; 和mmap,install取消链接现有文件,创建一个链接到同一位置的新文件.

这样做的好处是,如果您尝试覆盖的文件是当前正在运行的程序,它可以继续运行,因为正在写入的文件实际上位于新位置,并且现有程序代码仍然是旧的.

A cp只是尝试覆盖现有文件,如果文件因使用而被锁定,则会失败.

更多的信息