rsync
rsync命令
linux rsync同步工具
-v : 详细模式输出
-r : 递归拷贝数据,但是传输数据时不保留时间戳和权限
-a : 归档模式, 归档模式总是递归拷贝,而且保留符号链接、权限、属主、属组时间戳
-z : 压缩传输
-h : human-readable
--progress: 显示传输过程
--exclude=PATTERN 指定排除传输的文件模式
--include=PATTERN 指定需要传输的文件模式
--delete 同步时,删除那些DST中有,而SRC没有的文件
--max-size:限定传输文件大小的上限
--dry-run:显示那些文件将被传输,并不会实际传输
--bwlimit:限制传输带宽
-W:拷贝文件,不进行增量检测
--daemon 后台运行
远程拷贝同步文件、目录
rsync -avz rpmpkgs/ root@192.168.0.101:/home/
通过ssh使用rsync从远程到本地
rsync -avzhe ssh root@192.168.0.100:/root/install.log /tmp/
传输R开头的文件、目录,排除其他情况的文件、目录
rsync -avze ssh --include 'R*' --exclude '*'
删除那些DST中有,而SRC没有的文件
rsync -avz --delete root@192.168.0.100:/var/lib/rpm/ .
只有≤max-size的文件才会被传输
rsync -avzhe ssh --max-size='200k' /var/lib/rpm/
nohup
ctrl+z 将一个正在前台执行的命令放到后台,并且处于暂停状态;
jobs 查看当前有多少在后台运行的命令;
fg %num 将后台中的命令调至前台继续运行
bg %num 将一个在后台暂停的命令,变成继续执行(在后台执行)
终止进程
1.jobs查看num, kill %num
2.ps查看进程id kill id
使用&后台运行程序:
结果会输出到终端
使用Ctrl + C发送SIGINT信号,程序免疫
关闭session发送SIGHUP信号,程序关闭
使用nohup运行程序:
结果默认会输出到nohup.out
使用Ctrl + C发送SIGINT信号,程序关闭
关闭session发送SIGHUP信号,程序免疫
平日经常使用nohup和&配合来启动程序:
同时免疫SIGINT和SIGHUP信号
同时,还有一个最佳实践:
不要将信息输出到终端标准输出,标准错误输出,而要用日志组件将信息记录到日志里