rsync通过服务同步、linux系统日志、screen工具

简介:

rsync 通过服务同步

在使用该方法进行同步之前,需要开启rsync服务并且监听一个端口,默认为873端口。开启服务之前编辑rsync配置文件“/etc/rsyncd.conf”(将服务添加进去)然后直接使用命令:“rsync --daemon(服务名称)”进行同步。或者将配置文件写到一个自定义文件中,则需要使用参数“rsync--configfile=路径”进行同步。配置完成后客户端可以通过指定端口无服务端进行通信。

一、编辑 /etc/rsyncd.conf 文件,将一下内容添加到该文件中。(服务端)

port=873
# 指定哪个端口启动rsync服务,默认是873端口。
log file=/var/log/rsync.log
# 指定日志文件
pid file=/var/run/rsyncd.pid
# 指定pid文件,这个文件的作用涉及服务的启动、停止等进程管理操作。
address=192.168.133.130
# 指定启动rsync服务的IP。假如你的机器有多个IP,就可以指定由其中一个启动rsyncd服务,如果不指定该参数,默认是在全部IP上启动。
[test]
# []指定模块名,里面内容为自定义的
path=/tmp/rsync
# 指定数据存放的路径
use chroot=true
# 表示在传输文件前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但缺点是需要以roots权限,并且不能备份指向外部的符号连接所指向的目录文件。默认情况下chroot值为true,如果你的数据当中有软连接文件,建议设置成false
max connections=4
# 指定最大的同时连接数,默认是0,即没有限制。
read only=no
# 是否只读,如果是yes ,则不能上传到该模块指定的路径下。
list=true
# 表示当用户查询该服务器上的可用模块时,该模块是否被列出来。true是列出,false是隐藏。
uid=root
gid=root
# uid gid 指定传输文件时以哪个用户/组的身份传输。
auth users=test
# 指定传输时要使用的用户名
secrets file=/etc/rsyncd.passwd
# 指定密码文件,该参数连同上面的参数如果不指定,则不使用密码验证。注意:密码文件的权限一定要是600.格式: 用户名:密码 
hosts allow=192.168.133.132
# 表示被允许连接该模块的主机,可以是IP或者网段(192.168.100.0/24),如果是多个,中间用空格隔开。
  • 修改端口之后需要重新启动服务(先killall rsync,然后再rsync --daemon),然后同步数据的时候需要加上参数 --port 新端口号。

    [root@localhost ~]# rsync -avP --port 8730 /tmp/a.txt 192.168.159.130::test/aaa.txt

  • 当list为true时,rsync avP --port 873 192.168.159.128:: 就可以把模块名列出来。当list为false时,输入那条命令则不列出来。这是一个安全选项,建议不显示。

  • 当设置了auth users和secrets file后,客户端连服务端也需要用用户名密码了,如想在命令行中带上密码,可以在客户端设定一个密码文件。rsync -avL test@192.168.159.128::test/test1/ /tmp/test8/ --password-file =/etc/pass。 其中/etc/pass内容就是一个密码,权限要改为600。

    密码文件在客户端上创建!客户端上的密码文件的密码要和secreats定义的密码文件的密码一致。

二、 启动服务

使用命令 rsync --daemon 启动服务(服务端)

[root@localhost ~]# rsync --daemon
[root@localhost ~]# ps aux | grep rsync
root       2843  0.0  0.0 114656   524 ?        Ss   15:02   0:00 rsync --daemon
root       2845  0.0  0.0 112676   972 pts/0    S+   15:03   0:00 grep --color=auto rsync
[root@localhost ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
......      
tcp        0      0 192.168.159.128:873     0.0.0.0:*               LISTEN      2843/rsync          
......      

三、在远程机器上同步文件(客户端)

[root@localhost ~]# rsync -avP /tmp/20171206.txt 192.168.159.128::test/06.txt
rsync: failed to connect to 192.168.159.128 (192.168.159.128): No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(122) [sender=3.0.9]

报错!这时候需要检测网络连通性和端口是否有问题。防火墙规则是否限制(systemctl stop firewalld 暂时关闭防火墙)

[root@localhost ~]# rsync -avP /tmp/20171206.txt 192.168.159.128::test/06.txt
sending incremental file list
20171206.txt
    1128 100%    0.00kB/s    0:00:00 (xfer#1, to-check=0/1)

sent 1204 bytes  received 27 bytes  2462.00 bytes/sec
total size is 1128  speedup is 0.92

同步成功之后会在目标服务器上的path路径中找到同步的文件。

linux系统日志

  • /var/log/messages

    除非服务有单独定义日志,否则所有日志都在这个文件里面。

  • /etc/logrotate.conf

    日志切割配置文件

  • /var/log/dmesg

    系统启动日志

  • /var/log/scure

    安全日志,会显示用户登录的信息。

dmesg 命令

dmesg 命令用于显示开机信息。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。

  • dmesg -c:清除日志(日志在系统重启会重新生成)
  • dmesg -n:指定记录信息的层级

  • /var/log/dmesg 记录系统启动的信息。

last 命令

last命令用于显示用户最近登录信息。单独执行last命令,它会读取/var/log/wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。/var/log/wtmp 文件是一个二进制文件,不能cat。

lastb 命令

lastb命令用于显示用户错误的登录列表,此指令可以发现系统的登录异常。单独执行lastb命令,它会读取/var/log/btmp文件,并把该文件内容记录的登入失败的用户名单,全部显示出来。
服务器被暴力破解,这个日志中就会有很多记录。

screen 工具 (虚拟终端)

系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。

  • 安装screen工具:yum install -y screen
  • 将一个任务在后台

    nohup 命令 >[日志文件] 2>[日志文件] &

    将命令放到后台执行,正确输出和错误输出放到不通的日志文件中。

  • screen 直接回车进入虚拟终端
  • ctral a组合键再按d退出虚拟终端,但不是结束
  • screen -ls查看虚拟终端列表
  • screen -r id或别名进入指定的终端
  • screen -S 给虚拟终端起个别名

本文转自 豆渣锅 51CTO博客,原文链接:http://blog.51cto.com/754599082/2048146
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
11月前
|
运维 安全 数据可视化
日志审查安排工具实战攻略:中小团队如何通过日志审查安排工具建立可控、安全的审查机制?
在审计敏感时代,日志审查安排工具成为安全运维与合规管理的关键利器。它实现审查任务的流程化、周期化与可视化,支持多系统协作、责任到人,确保“可控、可查、可追”的日志治理。工具如板栗看板、Asana、Monday 等提供任务调度、问题闭环与合规对接能力,助力企业构建高效、透明的日志审查体系,提升安全与合规水平。
|
11月前
|
监控 Linux 应用服务中间件
linux查看日志文件tail -f用法
在 Linux 中,查看和监控日志文件是系统管理员和开发者常用的操作之一。tail 命令就是用来查看文件内容的,它默认显示文件的最后部分。tail -f 是 tail 命令的一个非常有用的选项,用于实时查看和跟踪日志文件的更新,尤其是在监控运行中的服务时非常有用。
1292 0
|
12月前
|
JavaScript API 开发工具
HarmonyOS NEXT实战:日志工具
本文介绍了在HarmonyOS Next应用开发中,如何封装一个简单易用的日志工具LoggerKit。通过使用系统提供的HiLog API,开发者可以灵活输出不同级别的日志信息(DEBUG、INFO、WARN、ERROR、FATAL),用于分析应用运行状态和调试逻辑问题。文章详细说明了日志级别、参数配置及使用注意事项,并提供了完整的TypeScript封装示例代码,便于实际项目集成与应用调试。
270 0
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
10271 2
|
存储 人工智能 JSON
RAG Logger:专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、性能监控
RAG Logger 是一款专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、检索结果记录、LLM 交互记录和性能监控等功能。
705 7
RAG Logger:专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、性能监控
|
存储 运维 监控
Linux--深入理与解linux文件系统与日志文件分析
深入理解 Linux 文件系统和日志文件分析,对于系统管理员和运维工程师来说至关重要。文件系统管理涉及到文件的组织、存储和检索,而日志文件则记录了系统和应用的运行状态,是排查故障和维护系统的重要依据。通过掌握文件系统和日志文件的管理和分析技能,可以有效提升系统的稳定性和安全性。
433 7
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
592 1
|
存储 数据采集 监控
阿里云DTS踩坑经验分享系列|SLS同步至ClickHouse集群
作为强大的日志服务引擎,SLS 积累了用户海量的数据。为了实现数据的自由流通,DTS 开发了以 SLS 为源的数据同步插件。目前,该插件已经支持将数据从 SLS 同步到 ClickHouse。通过这条高效的同步链路,客户不仅能够利用 SLS 卓越的数据采集和处理能力,还能够充分发挥 ClickHouse 在数据分析和查询性能方面的优势,帮助企业显著提高数据查询速度,同时有效降低存储成本,从而在数据驱动决策和资源优化配置上取得更大成效。
906 9
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
602 9