当前位置: 首页 > news >正文

winserver文件备份到minio

  1. winserver开启 WSMan
    PS C:\Users\Administrator> Enable-PSRemoting -Force
    PS C:\Users\Administrator> Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.,17.1.0." -Force
    PS C:\Users\Administrator> netsh advfirewall firewall add rule name="WinRM-HTTP" dir=in localport=5985 protocol=TCP action=allow

  2. pom


4.0.0

o.h
ywyt
1.0

<artifactId>ywyt-minio</artifactId><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties><repositories><!-- 先用官方中央仓库 --><repository><id>central</id><url>https://repo.maven.apache.org/maven2</url></repository><!--        <repository>--><!--            <id>cloudsoft-releases</id>--><!--            <url>https://repository.cloudsoft.io/content/repositories/releases/</url>--><!--        </repository>--></repositories><dependencies><!-- https://mvnrepository.com/artifact/io.cloudsoft.windows/winrm4j --><dependency><groupId>io.cloudsoft.windows</groupId><artifactId>winrm4j</artifactId><version>0.12.3</version></dependency><!-- MinIO SDK -->
<dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.10</version>
</dependency></dependencies>
  1. code
    package org.hf.ywyt_minio.demo;

import io.cloudsoft.winrm4j.client.WinRmClient;
import io.cloudsoft.winrm4j.winrm.WinRmTool;
import io.cloudsoft.winrm4j.winrm.WinRmToolResponse;
import io.minio.;
import io.minio.errors.
;
import io.minio.messages.Bucket;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;

// 备份winserver关键文件到minio
public class t1 {

/* ========== 2. 上传到 MinIO ========== */
private static String endPoint  = "http://12.16.10.12:9000";
private static String accessKey = "HOscV0otja4iTy";
private static String secretKey = "7gJF4QfSKEmzHzQuCHhRWg5aWFP1Q";
private static String bucket    = "test1";
private static String objectKey = "t1.txt";public static void main(String[] args) throws Exception {String winIp      = "19.68.10.2";String winUser    = "adtor";String winPwd     = "t";String remoteFile = "d:\\ft\\t1.txt";          // WinServer 上的文件WinRmTool tool = WinRmTool.Builder.builder("http://" + winIp + ":5985/wsman",   // endpoint"",winUser,winPwd).build();String psCmd = String.format("$b=[System.IO.File]::ReadAllBytes('%s'); [Convert]::ToBase64String($b)","d:\\a.txt");WinRmToolResponse resp = tool.executePs(psCmd);String base64 = resp.getStdOut().trim();byte[] data = Base64.getDecoder().decode(base64);//System.out.println(data.toString());MinioClient minio = MinioClient.builder().endpoint(endPoint).credentials(accessKey, secretKey).build();boolean found = minio.bucketExists(BucketExistsArgs.builder().bucket(bucket).build());if (!found) {minio.makeBucket(MakeBucketArgs.builder().bucket(bucket).build());}minio.putObject(PutObjectArgs.builder().bucket(bucket).object(objectKey).stream(new ByteArrayInputStream(data), data.length, -1).contentType("text/plain")          // 按实际文件类型改.build());System.out.println("上传完成 → " + bucket + "/" + objectKey);minio.close();/* 上传本地文件MinioClient minio = MinioClient.builder().endpoint(endPoint).credentials(accessKey, secretKey).build();System.out.println(minio);if (minio.bucketExists(BucketExistsArgs.builder().bucket(bucket).build())) {System.out.println(bucket+"已存在");} else {minio.makeBucket(MakeBucketArgs.builder().bucket(bucket).build());}minio.uploadObject(UploadObjectArgs.builder().bucket(bucket).object(objectKey).filename("C:\\Users\\Administrator\\Desktop\\a1.html").contentType("text/html").build());System.out.println("上传完成 → " + bucket + "/" + objectKey);minio.close();*/}

}

http://www.hskmm.com/?act=detail&tid=32727

相关文章:

  • 特殊函数
  • 教你把未分配的磁盘合并到C盘或者D盘?如何把未分配的硬盘空间分配到另一个磁盘?Windows 11,如何将未分配的磁盘分配给 C 盘?怎么把未分配的磁盘合并到d盘
  • 项目ai拷打
  • 混合(ZR 二十联测 A + MX 炼石 ABC)
  • Qt项目作品在苹果macos上编译运行效果/视频监控系统/物联网平台等
  • 电脑硬盘中的文件怎么搜索?电脑文件搜索太慢怎么办?
  • 2025年靠谱的风机/离心风机/轴流风机生产企业排行榜-江苏中南鼓风机有限公司
  • 2025年行业内游乐设施/过山车游乐设施权威榜单厂家-河北天鸿游乐设备
  • 机器学习技术助力美国西海岸地震预警系统升级
  • 2025年口碑好的挤浆机/单螺旋挤浆机TOP品牌推荐厂家-滕州市建兴机械有限公司
  • 2025年市场课桌椅/钢塑课桌椅最新TOP排名厂家-江西华聚智能家具集团有限公司
  • 2025年口碑好的垃圾袋/医疗垃圾袋排名推荐生产厂家-厦门市万塑环保材料有限公司
  • 深入理解 PHP-FPM 的最佳配置
  • 【GitHub每日速递 251017】95k star,程序员专属!超全做饭指南,涵盖千道美食做法与进阶秘籍
  • 洛谷 P6715 [CCO 2018] Fun Palace (神秘DP)
  • AT 随机做题 I
  • moni 32
  • git 舍弃当前所有修改
  • 2025.10.17——1蓝
  • C# 使用 using 关键字间接实现只读局部变量的方法
  • 画图3D真好用 - Gon
  • 高校与某中心共建机器人技术教育项目
  • 2025年国际物流服务领域优质品牌最新推荐排行榜 —— 聚焦行业头部企业核心优势与选择参考
  • WordPress维护模式完整指南:手动实现与插件方案
  • Lean语言如何连接数学与编程
  • Github上文本切分相关的优秀项目
  • 微信机器人开发
  • 微信社群机器人开发
  • 《程序员修炼之道:从小工到专家》第三章读后感
  • 原型链污染学习