首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

利用python socket管理服务器

os.setsid() #该方法做一系列的事:首先它使得该进程成为一个新会话的领导者,接下来它将进程转变一个新进程组的领导者,最后该进程不再控制终端, 运行的时候,建立一个进程,linux会分配个进程号。然后调用os.fork()创建子进程。若pid>0就是自己,自杀。子进程跳过if语句, 通过os.setsid()成为linux中的独立于终端的进程(不响应sigint,sighup等) umask的作用:#默认情况下的 umask值是022(可以用umask命令查看),此时你建立的文件默认权限是644(6-0,6-2,6-2),建立的目录的默认 权限是755(7-0,7-2,7-2),可以用ls -l验证一下哦 现在应该知道umask的用途了,它是为了控制默认权限,不要使默认的文件和目录具有全权而设的

02

Rsync+Linux客户端+Windows客户端配置

rsync是一个功能非常强大的工具,Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]... [USER@]HOST:SRC DEST rsync [OPTION]... [USER@]HOST::SRC DEST   rsync [OPTION]... SRC [USER@]HOST::DEST   rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]   对应于以上六种命令格式,rsync有六种不同的工作模式:   1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup   2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src   3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data   4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av root@172.17.5.13::www /databack   5)从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack root@172.17.5.13::www   6)列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.17.5.13/www rsync参数的具体解释如下: -v, --verbose 详细模式输出 -q, --quiet 精简输出模式 -c, --checksum 打开校验开关,强制对文件传输进行校验 -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD -r, --recursive 对子目录以递归模式处理 -R, --relative 使用相对路径信息 -b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。 --backup-dir 将备份文件(如~filename)存放在在目录下。 -suffix=SUFFIX 定义备份文件前缀 -u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件) -l, --links 保留软链结 -L, --copy-links 想对待常规文件一样处理软链结 --copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结 --safe-links 忽略指向SRC路径目录树以外的链结 -H, --hard-links 保留硬链结 -p, --perms 保持文件权限 -o, --owner 保持文件属主信息 -g, --group 保持文件属组信息 -D, --devices 保持设备文件信息 -t, --times 保持文件时间信息 -S, --sparse 对稀疏文件进行特殊处理以节省DST的空间 -n, --dry-run现实哪些文件将被传输 -W, --whole-file 拷贝文件,不进行增量检测 -x, --one-file-system 不要跨越文件系统边界 -B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节 -e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步 --rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息 -C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件 --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件 --delete 删除那些DST中SRC没有的文件 --delete-excluded 同样删除接收端那些被该选项指定排除的文件 --delete-after 传输结束以后再删除 --ignore-errors 及时出现IO错误也进行删除 --max-delete=NUM 最多删除NUM个文件 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 --force 强制删除目

01

Rsync 的简单应用与配置

1 什么是rsync?(理论) 简而言之主要特点就是实现全量与增量,本地和远程的数据备份工具,同样适用于indows。 官网http://www.samba.org/ftp/rsync/rsync.html rsync 在本地目录之间还能实现rm删除的功能 他根据文件和修改时间大小来同步 也可以根据权限不同来备份,需指定参数 2 特点(理论) 能有排除功能 能保持源目录和文件的时间权限和软连接属主等属性 能配合ssh通道来加密 可以作为服务,让客户端来连 支持匿名和支持认证 3 工作方式(理论) 本地之间传 类似cpmingl 借助ssh 守护进程方式(重要) 4实例用途(操作) (1)客户端模式 本地环境:     传文件 rsync /etc/hosts /opt     传目录  rsync -avz /opt /mnt  <==相当于 cp -ap /opt /mnt ##注意/opt后的/加和不加的区别,很重要加了/只是把下面的文件过去,不加的话连自己opt都过去了,如果记不住就自己测试下 远程环境:     推送(传过去):rsync -avz /etc/hosts -e “ssh -p 22000” root@64.78.172.119:~     拉取(从远端主机传过来):rsync –avz root@64.78.172.119:~/test.txt  /etc/ -e “ssh -p 22000”     ##记忆命令方法:本地目录 ---》》远程 ----》通过什么方式 -e “ssh -p22000” (2)守护进程模式 配置服务端rysnc     Vi /etc/rsyncd.conf里的内容 uid = rsync gid = rsync use chroot = no max connections = 200 timeout = 100 pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file  = /var/log/rsyncd.log [oldboy] path = /oldboy/ ignore errors read only = false list =  false hosts allow = 199.101.117.0/24 hosts deny = 0.0.0.0/32 auth users = rsync_backup secrets file = /etc/rsync.password ##如果在windows下编辑或者复制的编码到linux下就最好用这个命令处理下Dos2unix /etc/rsyncd.conf mkdir /oldboy useradd rsync -s /bin/nologin –M                            ## 新建个账户(和配置文件的uid-gid对应,此账户属性不能登录并且没目录) chown -R rsync.rsync /oldboy                                ##(重要) echo “rsync_backup:oldboy”> /etc/rsync.password  ##rsync_backup是虚拟账户,到时候客户端连接就用这个账户和密码oldboy。 chmod 600 /etc/rsyncd.conf                                  ##设置成别人都不能看到,因为里面有密码 rsync --daemon  #启动进程 ##以上配置结束,下面是辅助的管理rsync的操作命令 lsof -i :873                                                          ##查看rsync服务是否起来 pkill  rsync                                                          ##杀掉进程 killall rsync                                                          ##但不一定杀掉 判断杀掉否就再执行一次,提示no programs killed就说明对了 ps -ef |grep rsync ##客户端配置:只要这两步即可 echo “oldboy”>/etc/rsync.password                        #这个路径和服务端路径没任何关系,为了规范而已,密码必须和服务那相同 chmod 600 /etc/rsync.password ##当配

02

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券