bcp linux?ubuntu grub
老铁们,大家好,相信还有很多朋友对于bcp linux和ubuntu grub的相关问题不太懂,没关系,今天就由我来为大家分享分享bcp linux以及ubuntu grub的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
Linux系统中用于复制的cp和scp命令使用解析
cp命令
用法:cp [选项]... [-T]源文件目标文件
或:cp [选项]...源文件...目录
或:cp [选项]...-t目录源文件...
将源文件复制至目标文件,或将多个源文件复制至目标目录。
长选项必须使用的参数对于短选项时也是必需使用的。
-a,--archive等于-dR--preserve=all
--backup[=CONTROL为每个已存在的目标文件创建备份
-b类似--backup但不接受参数
--copy-contents在递归处理是复制特殊文件内容
-d等于--no-dereference--preserve=links
-f,--force如果目标文件无法打开则将其移除并重试(当-n选项
存在时则不需再选此项)
-i,--interactive覆盖前询问(使前面的-n选项失效)
-H跟随源文件中的命令行符号链接
-l,--link链接文件而不复制
-L,--dereference总是跟随符号链接
-n,--no-clobber不要覆盖已存在的文件(使前面的-i选项失效)
-P,--no-dereference不跟随源文件中的符号链接
-p等于--preserve=模式,所有权,时间戳
--preserve[=属性列表保持指定的属性(默认:模式,所有权,时间戳),如果
可能保持附加属性:环境、链接、xattr等
-c same as--preserve=context
--sno-preserve=属性列表不保留指定的文件属性
--parents复制前在目标目录创建来源文件路径中的所有目录
-R,-r,--recursive递归复制目录及其子目录内的所有内容
--reflink[=WHEN]控制克隆/CoW副本。请查看下面的内如。
--remove-destination尝试打开目标文件前先删除已存在的目的地
文件(相对于--force选项)
--sparse=WHEN控制创建稀疏文件的方式
--strip-trailing-slashes删除参数中所有源文件/目录末端的斜杠
-s,--symbolic-link只创建符号链接而不复制文件
-S,--suffix=后缀自行指定备份文件的后缀
-t,--target-directory=目录将所有参数指定的源文件/目录
复制至目标目录
-T,--no-target-directory将目标目录视作普通文件
-u,--update copy only when the SOURCE file is newer
than the destination file or when the
destination file is missing
-v,--verbose explain what is being done
-x,--one-file-system stay on this file system
-Z,--context=CONTEXT set security context of copy to CONTEXT
--help显示此帮助信息并退出
--version显示版本信息并退出
默认情况下,源文件的稀疏性仅仅通过简单的方法判断,对应的目标文件目标文件也
被为稀疏。这是因为默认情况下使用了--sparse=auto参数。如果明确使用
--sparse=always参数则不论源文件是否包含足够长的0序列也将目标文件创文
建为稀疏件。
使用--sparse=never参数禁止创建稀疏文件。
当指定了--reflink[=always]参数时执行轻量化的复制,即只在数据块被修改的
情况下才复制。如果复制失败或者同时指定了--reflink=auto,则返回标准复制模式。
备份文件的后缀为"~",除非以--suffix选项或是SIMPLE_BACKUP_SUFFIX
环境变量指定。版本控制的方式可通过--backup选项或VERSION_CONTROL环境
变量来选择。以下是可用的变量值:
none, off不进行备份(即使使用了--backup选项)
numbered, t备份文件加上数字进行排序
existing, nil若有数字的备份文件已经存在则使用数字,否则使用普通方式备份
simple, never永远使用普通方式备份
有一个特别情况:如果同时指定--force和--backup选项,而源文件和目标文件
是同一个已存在的一般文件的话,cp会将源文件备份。
例:
复制代码代码如下:
[root@localhost www]# cp-p test.rb/home/test#将test.rb copy到test目录,并且保留原文件的属性
[root@localhost www]# cp-r Dir//home/test#将Dir目录copy到test目录下
[root@localhost www]# cp-fr Dir/*/home/test#将Dir下面的所有文件强制copy到test目录下
[root@localhost www]# cp test.rb{,.bak}#备份test.rb,并在尾部加上.bak后缀
scp命令
SCP命令语法
scp [-1245BCpqrv] [-c cipher] [F ssh_config] [-I identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:] file1 […] [[suer@]host2:]file2
SCP命令说明
Scp在主机间复制文件。他使用 ssh(1)作为数据传输。而且用同样认证和安全性。 scp将在认证中请求输入密码所有的文件可能需要服务器和用户的特别描述来指明文件将被复制到/从某台服务器。两个远程登录的服务器间的文件复制是允许的。
SCP命令选项
-1强制scp用协议1
-2强制scp用协议2
-4强制scp用IPV4的网址
-6强制scp用IPV6的网址
-B选择批处理模式(防止输入密码)
-C允许压缩。标注-C到ssh(1)来允许压缩
-c cipher选择cipher来加密数据传输。这个选项直接传递到ssh(1)
-F ssh_config设定一个可变动的用户配置给ssh.这个选项直接会被传递到ssh(1)
-i identity_file选择被RSA认证读取私有密码的文件。这个选项可以直接被传递到ssh(1)
-l limit限制传输带宽,也就是速度用Kbit/s的速度
-o ssh_option可以把ssh_config中的配置格式传到ssh中。这种模式对于说明没有独立的scp文件中断符的scp很有帮助。关于选项的如下。而他们的值请参看ssh_config(5)
-P port指定连接远程连接端口。注意这个选项需要写成大写的模式。因为-p已经早保留了次数和模式
-S program指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-p指定修改次数,连接次数,还有对于原文件的模式
-q把进度参数关掉
-r递归的复制整个文件夹
-S program指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-V冗余模式。让 scp和 ssh(1)打印他们的排错信息,这个在排错连接,认证,和配置中非常有用。
例:
复制代码代码如下:
[root@localhost www]# scp-r tank@192.16.1.108:/var/www/blog/home/www/blog#以tank用户登录并将服务器文件夹copy到本地
[root@localhost www]# scp/home/www/blog/index.php 192.16.1.108:/var/www/blog#将本地文件copy到服务器,添填写用户,默认当前用户
使用指定端口从本地拷到远程服务器
复制代码代码如下:
[root@localhost test]# scp-P 20022-r../vhost/ zhuqiang@192.168.0.200:/home/test/
linux系统中scp命令的使用介绍
scp命令的用处:
scp在网络上不同的主机之间复制文件,它使用ssh安全协议传输数据,具有和ssh一样的验证机制,从而安全的远程拷贝文件。
scp命令基本格式:
scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2
scp命令的参数说明:
-1
强制scp命令使用协议ssh1
-2
强制scp命令使用协议ssh2
-4
强制scp命令只使用IPv4寻址
-6
强制scp命令只使用IPv6寻址
-B
使用批处理模式(传输过程中不询问传输口令或短语)
-C
允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p保留原文件的修改时间,访问时间和访问权限。
-q
不显示传输进度条。
-r
递归复制整个目录。
-v详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher
以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config
指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file
从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit
限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option
如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program
指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
scp命令的实际应用
1从本地服务器复制到远程服务器
(1)复制文件:
命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要输入用户密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名
实例:
scp/home/linux/soft/scp.zip root@www.mydomain.com:/home/linux/others/soft
scp/home/linux/soft/scp.zip root@www.mydomain.com:/home/linux/others/soft/scp2.zip
scp/home/linux/soft/scp.zip www.mydomain.com:/home/linux/others/soft
scp/home/linux/soft/scp.zip www.mydomain.com:/home/linux/others/soft/scp2.zip
(2)复制目录:
命令格式:
scp-r local_folder remote_username@remote_ip:remote_folder
或者
scp-r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要输入用户密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
例子:
scp-r/home/linux/soft/ root@www.mydomain.com:/home/linux/others/
scp-r/home/linux/soft/ www.mydomain.com:/home/linux/others/
上面命令将本地 soft目录复制到远程 others目录下,即复制后远程服务器上会有/home/linux/others/soft/目录
2从远程服务器复制到本地服务器
从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。
例如:
scp root@www.mydomain.com:/home/linux/soft/scp.zip/home/linux/others/scp.zip
scp www.mydomain.com:/home/linux/soft/-r/home/linux/others/
linux系统下scp命令中很多参数都和 ssh1有关,还需要看到更原汁原味的参数信息,可以运行man scp看到更细致的英文说明.
scp命令在两台服务器直接进行文件传输的方法
假设有两台机器,均为局域网,两机可相互通信无问题,中间无防火墙。
两机IP分别为:A:192.168.8.232 B:192.168.8.232
假设A,B机的SSH都允许root登录
设要把 A上的/root/abc.zip传到 B机并放到/abc目录,可以在A机上用命令:
复制代码
代码如下:
scp/root/abc.zip root@192.168.8.232:/abc/
若 SSH端口不是默认的22,比如,是端口1234则加-P参数:
复制代码
代码如下:
scp-P 1234/root/abc.zip root@192.168.8.232:/abc/
也可以在B机上用命令:
复制代码
代码如下:
scp root@192.168.8.232:/root/abc.zip/abc/
若获取服务器SSH端口不是默认的22,比如,是端口 1234则加-P参数:
复制代码
代码如下:
scp-P 1234 root@192.168.8.232:/root/abc.zip
Linux使用scp命令进行文件远程的上传或下载
我们知道Linux系统的操作大部分要通过命令来实现,想要进行文件远程的上传或下载的话,可选择使用scp命令,小编给大家简单的讲解下Linux使用scp命令进行远程上传下载文件的方法,不了解的朋友可以来了解下。
命令:scp
不同的Linux之间copy文件常用有3种方法:
第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。
第二种方法就是采用samba服务,类似Windows文件copy的方式来操作,比较简洁方便。
第三种就是利用scp命令来进行文件复制。
scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。
scp/home/daisy/full.tar.gz root@172.19.2.75:/home/root
然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了。
如果想反过来操作,把文件从远程主机copy到当前系统,也很简单。
scp root@/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz
linux的 scp命令可以在 linux之间复制文件和目录;
例子
scp[-1246BCpqrv][-c cipher][-F ssh_config][-i identity_file][-l limit][-o ssh_option][-P port][-S program][[user@]host1:]file1。。.[[user@]host2:]file2
DESCRIPTION:scp copies files between hosts on a network.
利用scp传输文件
1、从服务器下载文件
scp username@servername:/path/filename/tmp/local_destination
例如scp codinglog@192.168.0.101:/home/kimi/test.txt把192.168.0.101上的/home/kimi/test.txt
的文件下载到/tmp/local_destination
2、上传本地文件到服务器
scp/path/local_filename username@servername:/path
例如scp/var/www/test.php codinglog@192.168.0.101:/var/www/把本机/var/www/目录下的test.php文件
上传到192.168.0.101这台服务器上的/var/www/目录中
3、从服务器下载整个目录
scp-r username@servername:remote_dir//tmp/local_dir
例如:scp-r codinglog@192.168.0.101/home/kimi/test/tmp/local_dir
4、上传目录到服务器
scp-r/tmp/local_dir username@servername:remote_dir
例如:
scp-r test codinglog@192.168.0.101:/var/www/把当前目录下的test目录上传到服务器的/var/www/目录
上面就是Linux通过scp命令实现远程上传下载文件的方法介绍了,除了scp命令外,也可通过工具远程上传下载文件。