python scp 备份

python 复制代码
[root@office_zabbix_9 data]# cat scp_foshan_102.100.py
import paramiko
from scp import SCPClient
from datetime import datetime

# 获取当天日期
today = datetime.now().strftime("%Y-%m-%d")

# 定义远程服务器和本地路径
print(today)
remote_path = f"/data/{today}_Config_backup/"  # 动态日期路径
local_path = "/data/foshan/"

# 创建 SSH 客户端
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())  # 自动接受主机密钥

# 连接到远程服务器
ssh.connect(hostname="192.168.102.100", username="root", password="密码啊")
print("成功连接到远程服务器!")

# 创建 SCP 客户端并执行文件拷贝
with SCPClient(ssh.get_transport()) as scp:
    scp.get(remote_path, local_path, recursive=True)
    print(f"文件已成功从 {remote_path} 拷贝到 {local_path}!")

# 关闭 SSH 连接
ssh.close()
[root@office_zabbix_9 data]#
[root@office_zabbix_9 data]#
[root@office_zabbix_9 data]#
[root@office_zabbix_9 data]# crontab  -l
30 5 * * * /usr/bin/python3.9 scp_foshan_102.100.py
  1. 获取当天日期

  2. 拼出远程服务器备份目录 /data/日期_Config_backup/

  3. 创建 SSH 连接到 192.168.102.100

  4. 使用 SCP 下载整个目录到 /data/foshan/

  5. 关闭连接

功能上没有大的问题,就是比较"初版"的写法:

  • 没有日志

  • 密码明文

相关推荐
kkeeper~8 小时前
0基础C语言积跬步之深入理解指针(5下)
c语言·开发语言
一直不明飞行9 小时前
Java的equals(),hashCode()应该在什么时候重写
java·开发语言·jvm
2301_803934619 小时前
Go语言如何做网络爬虫_Go语言爬虫开发教程【指南】
jvm·数据库·python
WL_Aurora9 小时前
Python爬虫实战(六):新发地蔬菜价格数据采集.
爬虫·python
盲敲代码的阿豪9 小时前
Python 入门基础教程(爬虫前置版)
开发语言·爬虫·python
basketball6169 小时前
C++ 构造函数完全指南:从入门到进阶
java·开发语言·c++
互联科技报9 小时前
2026超融合选型:Top5品牌与市场格局解读
开发语言·perl
weixin1997010801610 小时前
[特殊字符] 智能数据采集:数字化转型的“数据石油勘探队”(附Python实战源码)
开发语言·python
想唱rap10 小时前
IO多路转接之poll
服务器·开发语言·数据库·c++
@杰克成10 小时前
Java学习30
java·开发语言·学习