博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
install 命令用法详解
阅读量:5973 次
发布时间:2019-06-19

本文共 2710 字,大约阅读时间需要 9 分钟。

install 命令用法详解

http://man.linuxde.net/install

 

install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。install命令和cp命令类似,都可以将文件/目录拷贝到指定的地点

但是,install允许你控制目标文件的属性

install通常用于程序的makefile,使用它来将程序拷贝到目标(安装)目录  make install

语法

install [OPTION]... [-T] SOURCE DESTinstall [OPTION]... SOURCE... DIRECTORYinstall [OPTION]... -t DIRECTORY SOURCE...install [OPTION]... -d DIRECTORY...

在前两种格式中,会将<来源>复制至<目的地>或将多个<来源>文件复制至已存在的<目录>,同时设定权限模式及所有者/所属组。

在第三种格式中,会创建所有指定的目录及它们的主目录。

长选项必须用的参数在使用短选项时也是必须的。

选项

--backup[=CONTROL]:为每个已存在的目的地文件进行备份。-b:类似 --backup,但不接受任何参数。-c:(此选项不作处理)。-d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。-D:创建
<目的地>
前的所有主目录,然后将
<来源>
复制至
<目的地>
;在第一种使用格式中有用。-g,--group=组:自行设定所属组,而不是进程目前的所属组。-m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。-o,--owner=所有者:自行设定所有者 (只适用于超级用户)。-p,--preserve-timestamps:以
<来源>
文件的访问/修改时间作为相应的目的地文件的时间属性。-s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。-S,--suffix=后缀:自行指定备份文件的
<后缀>
。-v,--verbose:处理每个文件/目录时印出名称。--help:显示此帮助信息并离开。--version:显示版本信息并离开。

 

 

 

实例

install -d [option] DIRECTORY [DIRECTORY...]

支持多个,类似mkdir -p支持递归。

例如:install -d a/b/c e/f结果和mkdir -p a/b/c e/f一样。

install [option] SOURCE DEST

复制SOURCE文件(测试不能是目录)到DEST file(文件):

install a/e c 结果类似: cp a/e c #注意c必须是文件。

有用选项-D:

install -D x a/b/c 效果类似: mkdir -p a/b && cp x a/b/c

install [option] SOURCE [SOURCE...] DIRECTORY

 

复制多个SOURCE文件到目的目录:

install a/* d 其中d是目录。

 

 


另一个实例

#!/bin/sh

# by yangkun - -
passwd=`date +%s|sha256sum|head -c 16`
yum install -y vsftpd db4-utils
echo -e "ftpuser\n$passwd" > /etc/vsftpd/vuser
db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db
cat > /etc/pam.d/vsftpd.vu << 'EOF'
auth required     /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser
EOF
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/g' /etc/vsftpd/vsftpd.conf
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/g' /etc/vsftpd/vsftpd.conf
sed -i 's/pam_service_name=vsftpd/pam_service_name=vsftpd.vu/g' /etc/vsftpd/vsftpd.conf
cat >> /etc/vsftpd/vsftpd.conf << 'EOF'
guest_enable=YES
guest_username=www
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vconf
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
EOF
install -m755 -o www -g www -d /etc/vsftpd/vconf
##判断www用户的家目录是否创建,如果不创建的话,ftp账号无法登陆
if [ ! -d /home/www ];then
    install -m755 -o www -g www -d /home/www/
fi
cat > /etc/vsftpd/vconf/ftpuser << 'EOF'
local_root=/data/www
local_umask=022
idle_session_timeout=600
data_connection_timeout=120
EOF
service vsftpd start
echo -e "The FTP username is ftpuser\nThe FTP password is $passwd"

 

install -m755 -o www -g www -d /etc/vsftpd/vconf设置权限为755  ,属主和属组都是www  ,创建 /etc/vsftpd/vconf

 

 

 

 

 

f

转载地址:http://kabox.baihongyu.com/

你可能感兴趣的文章
通过jsp请求Servlet来操作HBASE
查看>>
Shell编程基础
查看>>
Shell之Sed常用用法
查看>>
Centos下基于Hadoop安装Spark(分布式)
查看>>
mysql开启binlog
查看>>
设置Eclipse编码方式
查看>>
分布式系统唯一ID生成方案汇总【转】
查看>>
并查集hdu1232
查看>>
Mysql 监视工具
查看>>
Linux Namespace系列(09):利用Namespace创建一个简单可用的容器
查看>>
博客搬家了
查看>>
Python中使用ElementTree解析xml
查看>>
jquery 操作iframe、frameset
查看>>
解决vim中不能使用小键盘
查看>>
Eclipse Java @Override 报错
查看>>
linux的日志服务器关于屏蔽一些关键字的方法
查看>>
mysql多实例实例化数据库
查看>>
javascript 操作DOM元素样式
查看>>
HBase 笔记3
查看>>
【Linux】Linux 在线安装yum
查看>>