首页
关于
友链
Search
1
ESXI 一些功能调整
651 阅读
2
天翼云网关3.0/4.0超管密码
579 阅读
3
SoftEther 客户端篇
556 阅读
4
SoftEther 服务端篇
464 阅读
5
远程桌面rustdesk使用说明
411 阅读
奇思妙想
代码相关
软件分享
游戏分享
游戏相关
我的家庭影院
登录
Search
标签搜索
python
esxi
git
SoftEther
linux
apscheduler
在线
rclone
飞牛
list
列表
idm
激活码
Charles
pdf
免安装
鲁大师
图片查看器
蜂蜜浏览器
honeyview
哥特式
累计撰写
112
篇文章
累计收到
15
条评论
首页
栏目
奇思妙想
代码相关
软件分享
游戏分享
游戏相关
我的家庭影院
页面
关于
友链
搜索到
94
篇与
的结果
2023-09-12
Centos安装个人网盘Alist v3教程
Centos安装个人网盘Alist v3教程我是用的Alist v3搭建的个人网盘,支持挂载的网盘包括:本地挂载,阿里云盘、Onedrive、天翼云盘、谷歌云盘、123网盘、FTP协议、PikPak、对象存储、WebDAV、又拍云存储、Teambition、分秒帧、中国移动云盘、Yandex云盘、百度网盘、夸克网盘、SFTP协议、迅雷云盘等。安装教程# Install curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install /usr/local # update curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update /usr/local # Uninstall curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s uninstall /usr/local如上,将软件安装在/usr/local目录,其他目录请自行设置,也可以参考官方文档:https://alist.nn.ci/zh/guide/install/script.htmlApache反代这时,你需要创建一个网站,比如我创建了https://v.iymark.com,然后修改该网站的配置文件,配置文件中插入如下代码即可:AllowEncodedSlashes NoDecode ProxyPass "/" "http://127.0.0.1:5244/" nocanon 其他应用服务器反向代理,请参考官方文档:https://alist.nn.ci/zh/guide/install/reverse-proxy.html管理员账号密码SSH终端输入如下命令:cd /usr/local/alist ./alist admin会返回管理员账号及密码,访问你的网站,登录进去即可修改账号及密码。登录按钮在网站界面下方,也可以访问https://v.iymark.com/@login进行登录,请替换成自己的网站。挂载网盘当你完成上述操作后,没有挂载任何网盘,网站前端会提示如下代码:failed get storage: can't find storage with rawPath: /这时,我们需要开始挂载网盘,这里我只说明下如何挂载本地网盘,即你网站服务器上的目录。如上图,驱动,指的是你要挂载的网盘,这里我们选本机存储挂载路径,指的是访问网盘看到的目录,随便设置一个即可,可以理解为用户访问网盘看到的这个目录,就是你的本机存储根文件夹路径,指的是你服务器上的路径,这里我推荐选择网站所在的目录即可。设置完成后,你访问网盘,就会看到多了一个目录了。其他网盘挂载方法,参考官方文档:https://alist.nn.ci/zh/guide/drivers/common.htmlAlist功能强大之处,远超想象,自己慢慢摸索吧。挂载到本地WebDAV是一些网盘提供的协议,今天说一下如何在Ubuntu或CentOS将WebDAV挂载为本地磁盘。安装所需程序:Ubuntu:sudo apt-get install davfs2 -yCentOS:sudo yum install davfs2 -y创建挂载目录:sudo mkdir /mnt/WebDAV挂载WebDAV服务到本地目录:sudo mount -t davfs -o noexec https://example.com/webdav/ /mnt/WebDAV/ # 例如我的 mount -t davfs -o noexec http://192.168.2.20:5244/dav /www/wwwroot/Jellyfin/下载/alist/之后会要求输入账户和密码登信息。挂载成功后,即可当正常磁盘一样访问WebDAV服务了。速度快慢取决于你自身和服务商的网速。解除挂载方法:sudo umount /mnt/WebDAV
2023年09月12日
409 阅读
0 评论
0 点赞
2023-08-31
Windows命令
自定义别名的命令1.管理员打开 PowerShell 命令行,执行命令:if (!(Test-Path -Path $PROFILE)) {New-Item -ItemType File -Path $PROFILE -Force}上述命令就是在 C:\Users\<yourUserName>\Documents\WindowsPowerShell\ 目录下新建了一个名为 Microsoft.Powershell_profile.ps1 的文件。2 执行如下命令,会使用记事本打开 Microsoft.Powershell_profile.ps1:notepad $PROFILE写自定义的函数,写好之后重启一下终端/CMD/命令行function huaebcelery { d:; }上面是针对原版的powershell,新版的是另一个位置打开powershell的时候,会提示这个,按照它的下载安装之后,可以在运行里面直接输入pwsh打开新版的旧版:新版:这时候需要在下面这个地址下面,找到那个文件,没有就新建要给txt文件,后缀改成ps1C:\Program Files\PowerShell\7\Microsoft.PowerShell_profile.ps1其他就是和上面的一样,写自定义函数,之后重启pwsh
2023年08月31日
98 阅读
0 评论
0 点赞
2023-06-25
ESXI 一些功能调整
ESXI 6.7自动关机设置楼主最近配置了一台32G内存的微塔来做虚拟化服务的学习和搭建,使用esxi来跑虚拟化平台。每天定时开机可以通过wake on lan来实现,但是定时esxi的定时关机是没有直接的解决方案来实现的,因此我们只能通过连入esxi的ssh终端来实现。本质上esxi就是一台linux的,可以执行定时脚本。但是当esxi重启后配置的信息会自动丢失,因此我们需要按照如下步骤来完成设置。首先在esxi 6.7上开启ssh然后通过ssh终端登录上去,用户名root,密码就是你安装esxi设置的root密码。在/vmfs/volumes/datastore1 目录下创建一个自动关机脚本文件:poweroff.sh ,同时设置755权限在poweroff.sh文件中写入如下信息:#!/bin/sh /sbin/poweroff接着编辑/etc/rc.local.d/local.sh 文件,在其文件文本 末尾的"exit 0" 之前填入如下信息:/bin/kill $(cat /var/run/crond.pid) /bin/echo '58 12 * * * /vmfs/volumes/datastore1/poweroff.sh' >> /var/spool/cron/crontabs/root /usr/lib/vmware/busybox/bin/busybox crond最终效果如下:这里写入的三行内容是为了在esxi启动后将cron设定的信息写入到crontab的配置文件中。并重启cron进程。注意cron的时间设定,esxi的底层时间全部是utc时间,因此我们在设定时间一定不能用我们中国时区的时间,将需要设定重启的时间减去8小时才是UTC时间。例如我们完成23:00关键,那么我们的cron时间设定为“0 15 *”。7.最后我们需要执行以下 auto-backup.sh 脚本,这个是esxi自带的命令,直接执行即可。8.如果你要立即生效你的cron设定,那么就执行下/etc/rc.local.d/local.sh 脚本就好了。2.直通显卡,重启后仍然出现需要重新引导的问题服务器只有一张显卡,且没有核显,所以esxi默认显卡为这个3080,导致每次启动都提示已启用/需要重新引导解决方法:一个是ACS功能检查,默认是false,改为true,不成功,重启后还是提示之后shell登录后,设置值:# 禁止ESXI使用核显命令 esxcli system settings kernel set -s vga -v FALSE # 恢复ESXI使用核显命令 esxcli system settings kernel set -s vga -v TRUE3. 命令行导出虚拟机配置.\ovftool.exe vi://用户名:密码@esxiIP/虚拟机名称 C:\OVFTools\vmBackup\虚拟机名称.ovahttp://kedaoyun.181222.xyz/#s/_c9TUv7govftool.exe -ds=存储目录 -dm=thin -n=新主机的名字 "本地ovf文件系统" vi://用户名:密码@esxiIP-dm:thin是精简置备的意思4. ghettoVCB1. 备份项目地址下载文件到某个目录下,比如/vmfs/volumes/datastore1/backup/挂载其他存储,比如nas的(可选) 配置文件{message type="warning" content="邮箱配置我没有弄好,不会发送邮件"/}VM_BACKUP_VOLUME=/vmfs/volumes/nas/nas上的目录 # 备份的目录 DISK_BACKUP_FORMAT=thin # 备份格式 VM_BACKUP_ROTATION_COUNT=7 # 备份保留份数 POWER_VM_DOWN_BEFORE_BACKUP=0 # 备份前是否关闭VM ENABLE_HARD_POWER_OFF=0 # 强制关机 ITER_TO_WAIT_SHUTDOWN=3 POWER_DOWN_TIMEOUT=5 ENABLE_COMPRESSION=0 # 使用压缩,0false,1true VM_SNAPSHOT_MEMORY=0 VM_SNAPSHOT_QUIESCE=0 ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP=0 SNAPSHOT_TIMEOUT=15 EMAIL_ALERT=1 EMAIL_LOG=1 EMAIL_SERVER=smtp服务器 EMAIL_SERVER_PORT=smtp服务器端口 EMAIL_DELAY_INTERVAL=1 EMAIL_USER_NAME=发送者邮箱 EMAIL_USER_PASSWORD=发送者邮箱密码 EMAIL_TO=接收者邮箱 EMAIL_ERRORS_TO= EMAIL_FROM=发送者邮箱 需要和 一样 WORKDIR_DEBUG=0 VM_SHUTDOWN_ORDER= VM_STARTUP_ORDER=执行备份/vmfs/volumes/datastore1/backup/ghettoVCB.sh -g /vmfs/volumes/datastore1/backup/ghettoVCB.conf -a弄到定时任务里面编辑这个文件,在之前添加代码vi /etc/rc.local.d/local.sh在esxi前面添加代码echo '0 18 * * * /vmfs/volumes/datastore1/backup/ghettoVCB.sh -g /vmfs/volumes/datastore1/backup/ghettoVCB.conf -a > /vmfs/test/logs/backup_log_$(date +\%Y\%m\%d).log 2>&1' >> /var/spool/cron/crontabs/root /usr/lib/vmware/busybox/bin/busybox crond{message type="warning" content="使用的是utc时间,需要换算成北京时间,比如我想凌晨2点的时候执行,那我需要本地时间-8,那就是18"/}查看是否添加查看这个文件,看一下有没有添加cat /var/spool/cron/crontabs/root2.恢复echo "/vmfs/volumes/fn/esxibackup/network/虚拟机名称/虚拟机名称-2025-07-17_09-59-51.gz;/vmfs/volumes/datastore1;3 " > temp.list ./ghettoVCB-restore.sh -c temp.list 5. 虚拟机无法启动报错报错信息:Power On VM 键:haTask-17-vim.VirtualMachine.powerOn-1030991398 描述:打开该虚拟机电源 虚拟机:HA 状况:失败 - 对象类型需要托管的 I/O 错误:对象类型需要托管的 I/O 无法打开磁盘“/vmfs/volumes/648f6a09-c48a2f1f-9933-00d04c100ef0/HA/haos_ova-14.2.vmdk”或其所依赖的快照磁盘之一。 模块“Disk”打开电源失败。 无法启动虚拟机。执行的命令vmkfstools -x repair "/vmfs/volumes/648f6a09-c48a2f1f-9933-00d04c100ef0/HA/haos_ova-14.2.vmdk"
2023年06月25日
651 阅读
1 评论
0 点赞
2023-06-13
Docker 搭建 IPsec VPN 服务器
Docker 搭建 IPsec VPN 服务器ipsec-vpn-server:用于运行 IPsec VPN 服务器的 Docker 映像,具有 IPsec/L2TP、Cisco IPsec 和 IKEv2。Docker 仓库地址:https://hub.docker.com/r/hwdsl2/ipsec-vpn-serverGitHub 地址:https://github.com/hwdsl2/docker-ipsec-vpn-server容器目录: ipsec1. 首先在ipsec下新建一个vpn.env文件里面写入的东西:# Note: All the variables to this image are optional. # See README for more information. # To use, uncomment and replace with your own values. # Define IPsec PSK, VPN username and password # - DO NOT put "" or '' around values, or add space around = # - DO NOT use these special characters within values: \ " ' VPN_IPSEC_PSK=预共享密码 VPN_USER=用户名 VPN_PASSWORD=密码 # Define additional VPN users # - DO NOT put "" or '' around values, or add space around = # - DO NOT use these special characters within values: \ " ' # - Usernames and passwords must be separated by spaces # VPN_ADDL_USERS=additional_username_1 additional_username_2 # VPN_ADDL_PASSWORDS=additional_password_1 additional_password_2 # Use a DNS name for the VPN server # - The DNS name must be a fully qualified domain name (FQDN) # VPN_DNS_NAME=vpn.example.com # Specify a name for the first IKEv2 client # - Use one word only, no special characters except '-' and '_' # - The default is 'vpnclient' if not specified # VPN_CLIENT_NAME=your_client_name # Use alternative DNS servers # - By default, clients are set to use Google Public DNS # - Example below shows Cloudflare's DNS service # VPN_DNS_SRV1=10.0.0.1 # VPN_DNS_SRV2=8.8.8.8 # Protect IKEv2 client config files using a password # - By default, no password is required when importing IKEv2 client configuration # - Uncomment if you want to protect these files using a random password # VPN_PROTECT_CONFIG=yes2. 新建一个docker-compose.yml文件version: '3' services: vpn: image: hwdsl2/ipsec-vpn-server restart: always env_file: - ./vpn.env ports: - "500:500/udp" - "4500:4500/udp" privileged: true hostname: ipsec-vpn-server container_name: ipsec volumes: - ./ikev2-vpn-data:/etc/ipsec.d - /lib/modules:/lib/modules:ro 启动之后,出现这个表示成功手机操作设置--更多连接--VPN--添加名称随便类型:L2TP/IPSec PSK服务器地址:。。。。L2TP密钥:上面vpn.env里面的预共享密码IPsec标识符:不填点击保存出来之后点击你刚刚新建的那个vpn填写用户名和密码,连接电脑操作刚开始说一直连不上,但是在某次我重启服务器的docker服务之后,错误变成了“不能建立到远程计算机的连接。你可能需要更改此连接的网络设置”首先说不能连上这个管理员运行cmd,运行:REG ADD HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 0x2 /f控制面板修改创建的vpn,安全里面修改这个连不上大概就是这些,记得重启电脑第二个错误,更改网络设置那个修改注册表,路径在下面,把DriveDesc删掉计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\0001再在设备管理器中重新安装下 WAN Miniport(IP) 的驱动首先把驱动先装错一次(先选个蓝牙设备驱动装下,然后会提示设备启动不了的报错的),然后再重新执行此步骤安装正确的驱动才可以
2023年06月13日
72 阅读
0 评论
0 点赞
2023-06-09
ESXi厚置备转换为精简置备
1. 打开ESXi的shell开始前最好把快照删了,以及虚拟机关机切换到那个虚拟机所在的目录# 查看文件,主要是两个比如Centos.vmdk和Centos-flat.vmdk ls -lh *.vmdk2. 开始转换使用命令-d thin,如新的名字加上_newvmkfstools -i Centos.vmdk -d thin Centos._new.vmdk转换之后得到两个带_new的vmdk文件,将原来的两个文件删掉或者备份都可以,新生成的两个文件重命名为原来的名字这里直接覆盖,如有提示,按y确定mv Centos._new-flat.vmdk Centos-flat.vmdk mv Centos._new.vmdk Centos.vmdk3. 编辑配置vi Centos.vmdk把里面的Centos._new-flat.vmdk改成Centos-flat.vmdk4. 开机测试开机前,需要把原来的虚拟机取消注册,右键原本的虚拟机,取消注册然后新建虚拟机,注册现有虚拟机,选择一个或多个虚拟机完成后可以编辑查看,已经变成精简置备了,之后开机,大功告成
2023年06月09日
150 阅读
0 评论
0 点赞
2023-06-08
pycrypto安装报错
pip安装的时候报错,提示有个语法错误{collapse}{collapse-item label="报错信息" open}error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [179 lines of output] running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-cpython-37 creating build\lib.win-amd64-cpython-37\Crypto copying lib\Crypto\pct_warnings.py -> build\lib.win-amd64-cpython-37\Crypto copying lib\Crypto\__init__.py -> build\lib.win-amd64-cpython-37\Crypto creating build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\hashalgo.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\HMAC.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD2.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD4.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD5.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\RIPEMD.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA224.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA256.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA384.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA512.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Hash creating build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\AES.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\ARC2.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\ARC4.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\blockalgo.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\Blowfish.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\CAST.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\DES.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\DES3.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_OAEP.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_v1_5.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\XOR.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher creating build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\asn1.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\Counter.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\number.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\py3compat.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\randpool.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\RFC1751.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\_number_new.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Util creating build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\random.py -> build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\_UserFriendlyRNG.py -> build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random creating build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaAccumulator.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaGenerator.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\SHAd256.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna creating build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\fallback.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\nt.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\posix.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\rng_base.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG creating build\lib.win-amd64-cpython-37\Crypto\SelfTest copying lib\Crypto\SelfTest\st_common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest copying lib\Crypto\SelfTest\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_AES.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC2.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC4.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_Blowfish.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_CAST.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES3.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_15.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_oaep.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_XOR.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_HMAC.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD2.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD4.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD5.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_RIPEMD.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA224.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA256.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA384.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA512.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_AllOrNothing.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_chaffing.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_KDF.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_rfc1751.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_DSA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_ElGamal.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_importKey.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_RSA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_random.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_rpoolcompat.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test__UserFriendlyRNG.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaAccumulator.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaGenerator.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_SHAd256.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_fallback.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_generic.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_nt.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_posix.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_asn1.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_Counter.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_number.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_15.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_pss.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature creating build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\AllOrNothing.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\Chaffing.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\KDF.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol creating build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\DSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\ElGamal.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\pubkey.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\RSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_DSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_RSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_slowmath.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey creating build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\PKCS1_PSS.py -> build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\PKCS1_v1_5.py -> build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Signature running build_ext warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath. building 'Crypto.Random.OSRNG.winrandom' extension creating build\temp.win-amd64-cpython-37 creating build\temp.win-amd64-cpython-37\Release creating build\temp.win-amd64-cpython-37\Release\src "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -Isrc/ -Isrc/inc-msvc/ - ID:\python-venv\yinruan\alipay\include -IG:\python377\include -IG:\python377\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\inc lude" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /Tcs rc/winrand.c /Fobuild\temp.win-amd64-cpython-37\Release\src/winrand.obj winrand.c C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(31): error C2061: 语法错误: 标识符“intmax_t” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(32): error C2061: 语法错误: 标识符“rem” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(32): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(33): error C2059: 语法错误:“}” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(35): error C2061: 语法错误: 标识符“imaxdiv_t” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(35): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(45): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2146: 语法错误: 缺少“)”(在标识符“_Number”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2061: 语法错误: 标识符“_Number” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(47): error C2059: 语法错误:“)” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(50): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2146: 语法错误: 缺少“)”(在标识符“_Numerator”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2061: 语法错误: 标识符“_Numerator” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2059: 语法错误:“,” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(53): error C2059: 语法错误:“)” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(55): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(61): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(68): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(74): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(81): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(87): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(94): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(100): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pycrypto Running setup.py clean for pycrypto Failed to build pycrypto Installing collected packages: pycrypto, ptyprocess, pbus, onetable, oneimage, kafka-python, cached-property, billiard, zipp, wechat-sdk, vine, urllib3, uniapi, typing_extensions, traitlets, tornado, sqlparse, qiniu, PyYAML, PyMySQL, pycparser, pyasn1, pmongo, Pillow, pika, lxml, jmespath, et-xmlfile, Auto-Python-2014, aliyunsdkcore, rsa, openpyxl, Naked, im portlib-metadata, cffi, async-timeout, asgiref, amqp, redis, kombu, Django, cryptography, crypto, click, alipay-sdk-python, django-redis, click-repl, click-plugins, click-didyoumea n, aliyun-python-sdk-core, celery, aliyun-python-sdk-dysmsapi Running setup.py install for pycrypto ... error error: subprocess-exited-with-error × Running setup.py install for pycrypto did not run successfully. │ exit code: 1 ╰─> [181 lines of output] running install D:\python-venv\yinruan\alipay\lib\site-packages\setuptools\command\install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other st andards-based tools. setuptools.SetuptoolsDeprecationWarning, running build running build_py creating build creating build\lib.win-amd64-cpython-37 creating build\lib.win-amd64-cpython-37\Crypto copying lib\Crypto\pct_warnings.py -> build\lib.win-amd64-cpython-37\Crypto copying lib\Crypto\__init__.py -> build\lib.win-amd64-cpython-37\Crypto creating build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\hashalgo.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\HMAC.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD2.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD4.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\MD5.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\RIPEMD.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA224.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA256.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA384.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\SHA512.py -> build\lib.win-amd64-cpython-37\Crypto\Hash copying lib\Crypto\Hash\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Hash creating build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\AES.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\ARC2.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\ARC4.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\blockalgo.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\Blowfish.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\CAST.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\DES.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\DES3.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_OAEP.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_v1_5.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\XOR.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher copying lib\Crypto\Cipher\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Cipher creating build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\asn1.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\Counter.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\number.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\py3compat.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\randpool.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\RFC1751.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\_number_new.py -> build\lib.win-amd64-cpython-37\Crypto\Util copying lib\Crypto\Util\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Util creating build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\random.py -> build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\_UserFriendlyRNG.py -> build\lib.win-amd64-cpython-37\Crypto\Random copying lib\Crypto\Random\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random creating build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaAccumulator.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaGenerator.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\SHAd256.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random\Fortuna creating build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\fallback.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\nt.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\posix.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\rng_base.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Random\OSRNG creating build\lib.win-amd64-cpython-37\Crypto\SelfTest copying lib\Crypto\SelfTest\st_common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest copying lib\Crypto\SelfTest\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_AES.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC2.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC4.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_Blowfish.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_CAST.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES3.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_15.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_oaep.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_XOR.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Cipher creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\common.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_HMAC.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD2.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD4.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD5.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_RIPEMD.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA224.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA256.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA384.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA512.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Hash creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_AllOrNothing.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_chaffing.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_KDF.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_rfc1751.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Protocol creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_DSA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_ElGamal.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_importKey.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_RSA.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\PublicKey creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_random.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_rpoolcompat.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test__UserFriendlyRNG.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaAccumulator.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaGenerator.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_SHAd256.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\Fortuna creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_fallback.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_generic.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_nt.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_posix.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Random\OSRNG creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_asn1.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_Counter.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_number.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_winrandom.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Util creating build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_15.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_pss.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\SelfTest\Signature creating build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\AllOrNothing.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\Chaffing.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\KDF.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol copying lib\Crypto\Protocol\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Protocol creating build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\DSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\ElGamal.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\pubkey.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\RSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_DSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_RSA.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\_slowmath.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey copying lib\Crypto\PublicKey\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\PublicKey creating build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\PKCS1_PSS.py -> build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\PKCS1_v1_5.py -> build\lib.win-amd64-cpython-37\Crypto\Signature copying lib\Crypto\Signature\__init__.py -> build\lib.win-amd64-cpython-37\Crypto\Signature running build_ext warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath. building 'Crypto.Random.OSRNG.winrandom' extension creating build\temp.win-amd64-cpython-37 creating build\temp.win-amd64-cpython-37\Release creating build\temp.win-amd64-cpython-37\Release\src "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -Isrc/ -Isrc/inc-msvc/ - ID:\python-venv\yinruan\alipay\include -IG:\python377\include -IG:\python377\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\inc lude" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /Tcs rc/winrand.c /Fobuild\temp.win-amd64-cpython-37\Release\src/winrand.obj winrand.c C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(31): error C2061: 语法错误: 标识符“intmax_t” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(32): error C2061: 语法错误: 标识符“rem” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(32): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(33): error C2059: 语法错误:“}” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(35): error C2061: 语法错误: 标识符“imaxdiv_t” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(35): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(45): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2146: 语法错误: 缺少“)”(在标识符“_Number”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2061: 语法错误: 标识符“_Number” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(46): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(47): error C2059: 语法错误:“)” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(50): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2146: 语法错误: 缺少“)”(在标识符“_Numerator”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2061: 语法错误: 标识符“_Numerator” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2059: 语法错误:“;” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(51): error C2059: 语法错误:“,” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(53): error C2059: 语法错误:“)” C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(55): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(61): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(68): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(74): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(81): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(87): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h(100): error C2143: 语法错误: 缺少“{”(在“__cdecl”的前面) error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure {/collapse-item}{/collapse}解决方案主要是提示C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h有个语法错误打开相应的文件C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt\inttypes.h在顶部写入#define intmax_t long long #define uintmax_t unsigned long long错误信息:error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27安装包:VCForPython27.msi参考内容: 参考内容
2023年06月08日
198 阅读
0 评论
0 点赞
2023-05-15
密码管理器Bitwarden
docker-compose 安装保留好data文件,以后都可以恢复version: '3.3' services: server: container_name: bitwardenrs restart: unless-stopped environment: - WEBSOCKET_ENABLED=true # 第一次创建的时候不要这个,等创建好容易,注册你自己的账号之后,再禁用注册 - SIGNUPS_ALLOWED=false volumes: - './data:/data/' ports: - '4000:80' # 这个必须指定版本,latest不知道为什么指向了1.21.0,会出问题 image: 'vaultwarden/server:1.28.1'
2023年05月15日
25 阅读
0 评论
1 点赞
2023-05-14
ESXi安装黑群晖
Esxi安装黑群晖[TOC]1. 下载国内大佬编译的镜像文件https://github.com/RROrg/rr2. 下载StarWind Converter因为提供的镜像是img格式的,esxi不认,通过这软件转换一下http://kedaoyun.181222.xyz/#s/9Q85Z38g1. 选择img文件2. 选择esxi server3. 点击finish完成,生成两个文件虽然有两个,但是上传到esxi之后只显示一个3.创建虚拟机1. Linux--其他64位更高2. 选择硬盘,先把原先的删除3. 添加硬盘,现有硬盘选择刚刚上传的那个4. 控制器位置修改改为sata,0:0表示引导盘5. 添加硬盘,新标准盘改为sata,0:16. 虚拟机选项--引导方式不勾选这个4. 进行配置1. 到这个界面引导成功2. 到上面提示的网址修改语言选择型号(这里以DS920+为例)选择版本(64551)选择SN(随机生成)因为我的是黑群晖,所以随机生成,如果是洗白的,可以在这里输入内核版本修改需要修改成custom插件,模块不用管,直接编译引导编译引导完成之后是这个界面之后到新的端口界面这里忘记截图了,选择安装,然后到群晖的官网下载相应的文件,上传上去安装之后会进入重启,好了之后到这个界面点击开始,输入设备名称等信息因为是黑裙,所以就不勾选下面的这里因为是黑群晖,所以手动安装账户就不创建了,跳过识别用户身份信息,不同意群晖配置网上搜吧,没有什么好说的了问题记录1. 手机备份的时候提示需要处于同一局域网经过查询,出现该问题的原因是,华为手机在向NAS进行备份时,使用的协议为SMB1.0。群晖系统的“控制面板”——“文件服务”设置里虽然能开启SMB服务,但是在SMB服务的高级设置里有一个“最小SMB协议”的设置,如图:此时我们只需要将最小SMB设置为SMB1,然后点击应用,稍等两分钟就好。
2023年05月14日
231 阅读
0 评论
0 点赞
2023-05-08
Centos7命令
1. 修改IPvi /etc/sysconfig/network-scripts/ifcfg-ens192里面的参数:BOOTPROTO="static" IPADDR=本机ip NETMASK=掩码 GATEWAY=网关 DNS1=dns服务器重启网关systemctl restart network2. 设置自启systemctl daemon-reload # 设置自启 systemctl enable ** # 启动服务 systemctl start ** # 查看运行状态 systemctl status **3. lastb相关# 提取出IP地址并去重 lastb | awk '{print $3}' | sort | uniq # 查看最近10条 lastb -10 # 清空lastb echo > /var/log/btmp4. 重新获取网络信息ip addr flush dev ens192 && dhclient -r ens192 && dhclient ens192 && systemctl restart network
2023年05月08日
146 阅读
0 评论
0 点赞
2023-05-06
宝塔面板开心版
# Centos安装脚本: yum install -y wget && wget -O install.sh http://bt.cxinyun.com/install/install_6.0.sh && sh install.sh # Ubuntu/Debian安装脚本: wget -O install.sh http://bt.cxinyun.com/install/install_6.0.sh && bash install.sh # Linux面板7.9.9升级命令: curl https://bt.cxinyun.com/install/update6.sh|bash
2023年05月06日
94 阅读
1 评论
0 点赞
2023-04-30
docker的一些操作
重建容器docker-compose build -no--cache rabbitmq创建容器docker-compose up -d查看容器日志命令docker logs -f <容器名字>进入容器内部docker exec -it <容器名字> bash更新用Docker-compose部署的应用很简单,只要三步。第一步进入到你docker-compose所在的文件夹下,执行docker-compose pull第二步重启你的容器docker-compose up -d --remove-orphans第三步(可选)删除掉旧的镜像docker image prune docker 配置 hosts1、在这个文件里面修改下面的配置/etc/docker/daemon.json{"hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"], "dns": ["192.168.2.10", "8.8.8.8"], "registry-mirrors": ["https://docker.io"]}会提示无法启动,这时候需要修改东西2、/usr/lib/systemd/system/docker.service修改如下:# ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock ExecStart=/usr/bin/dockerd3、重启划重点:一定要执行,否则服务读取之前配置systemctl daemon-reload 然后重启dockersystemctl reset-failed docker.service && systemctl restart docker;docker配置网络docker会有33个网络的限制,所以在设置容器的时候,一定要配置容器的网络1. 创建一个网络,桥接docker network create <网络名称> --subnet 172.40.1.0/242.加入网络和同一个网段下容器的互通在docker-compose.yml里面,增加配置services: rsshub: environment: CACHE_TYPE: Redis REDIS_URL: 'redis://Redis:6379/' external_links: # 这个参数是用来连接其他容器的,后面就可以直接用,像上面一样,Redis是那个容器的名称 - Redis networks: dockerweb: # 和下面networks里面的名称一样 ipv4_address: x.x.x.x # ipv4地址 networks: dockerweb: external: true name: web
2023年04月30日
104 阅读
1 评论
0 点赞
2023-04-04
idea接入chatGPT
在文件,设置,插件直接搜索Tabnine AI,然后安装,需要用邮箱注册一下
2023年04月04日
51 阅读
0 评论
0 点赞
2023-02-01
Windows终端
1. 自定义别名需求:因为有时候需要某个python的虚拟环境做我的测试,比如我需要到G:\python\venv\这个虚拟环境下面进行测试实现:echo $profile输出一个文件路径,根据文件路径创建这个文件,之后在创建的文件里面输入函数,例如:function 别名 {需要替代的命令,可以包含空格}function python-test {cd G:\python; .\venv\Scripts\activate; ipython}2. pip全局修改win + r输入%appdata%新建一个pip文件夹新建一个pip.ini文件写入下面的内容[global] index-url = https://mirror.nju.edu.cn/pypi/web/simple/
2023年02月01日
51 阅读
0 评论
0 点赞
2023-01-11
MySQL主从复制
MySQL主从复制配置信息MySQL 8.0centos7.9主:192.168.2.20从:192.168.2.12开始配置1. 配置主服务器首先在/etc/my.cnf进行配置,同步多个就放多个binlog-go-db2. 创建一个同步的用户Create user 'rep'@'192.168.2.%' identified by '123'; grant replication slave on *.* to 'rep'@'192.168.2.%'; flush privileges;3. 查看主服务器的状态我只同步huaeb这个库,记住file和position这两个值从服务器配置搭建MySQL那些就不说了,和上面一样,配置/etc/my.cnf进行配置,同步多个就放多个binlog-go-db1. 配置文件这里server-id不能一样,最好用IP的后缀,以防重复2. 把主服务器的数据库复制过来这里我只同步huaeb这个数据库,所以只把这个库的数据弄过去3. 创建同步信息# 最开始不用关闭 stop slave; # 创建同步信息 CHANGE MASTER TO MASTER_HOST='192.168.2.20', # 主服务器的IP MASTER_USER='rep', # 主服务器创建的同步用户 MASTER_PORT=3306, # 主服务器端口 MASTER_PASSWORD='123', # 用户密码 MASTER_LOG_FILE='mysql-bin.000015', # 主服务器上刚刚记住的file MASTER_LOG_POS=17674; # 主服务器刚刚记住的position # 开始同步 start slave; # 查看同步状态 show slave status\G;两个都为yes则为成功TIP从服务器配置前最好用命令登录一下主服务器的数据库,看能否登录如果从服务器没有这个数据库也会同步失败
2023年01月11日
26 阅读
1 评论
0 点赞
2023-01-07
gitlab自建
进入容器docker exec -it gitlab-gitlab-1 bash进入到容器,然后切换到目录cd /opt/gitlab/embedded/service/gitlab-rails/config编辑文件vi gitlab.ymlhost就是克隆http的时候的地址,例如www.baicu.comssh_host就是ssh的地址,和上面一样,不要端口编辑好之后重启gitlab-ctl restart测试邮箱邮箱配置gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.qq.com" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "QQ邮箱@qq.com" gitlab_rails['smtp_password'] = "*****授权码" gitlab_rails['smtp_domain'] = "qq.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = false gitlab_rails['smtp_tls'] = true # 以下的配置是优化性能的,看自己的需求修改 # Terraform gitlab_rails['terraform_state_enabled'] = false # Usage Statistics gitlab_rails['usage_ping_enabled'] = false gitlab_rails['sentry_enabled'] = false grafana['reporting_enabled'] = false # 关闭容器仓库功能 gitlab_rails['gitlab_default_projects_features_container_registry'] = false gitlab_rails['registry_enabled'] = false registry['enable'] = false registry_nginx['enable'] = false # 包仓库 gitlab_rails['packages_enabled'] = false gitlab_rails['dependency_proxy_enabled'] = false # GitLab KAS gitlab_kas['enable'] = false gitlab_rails['gitlab_kas_enabled'] = false # Mattermost mattermost['enable'] = false mattermost_nginx['enable'] = false # Kerberos gitlab_rails['kerberos_enabled'] = false sentinel['enable'] = false # GitLab Pages gitlab_pages['enable'] = false pages_nginx['enable'] = false # 禁用 PUMA 集群模式 puma['worker_processes'] = 0 puma['min_threads'] = 1 puma['max_threads'] = 2 # 降低后台守护进程并发数 sidekiq['concurrency'] = 5 gitlab_ci['gitlab_ci_all_broken_builds'] = false gitlab_ci['gitlab_ci_add_pusher'] = false # 关闭监控 prometheus_monitoring['enable'] = false alertmanager['enable'] = false node_exporter['enable'] = false redis_exporter['enable'] = false postgres_exporter['enable'] = false pgbouncer_exporter['enable'] = false gitlab_exporter['enable'] = false grafana['enable'] = false sidekiq['metrics_enabled'] = false初始密码位置:/etc/gitlab/initial_root_password修改gitlab.rd文件之后,使用一下命令重启gitlab-ctl reconfigure还可以进入到创建的gitlab 容器内docker exec -it gitlab bash去执行gitlab-rails consoleNotify.test_email('收件人邮箱地址', '邮箱主题', '邮箱内容').deliver_now去测试发送邮箱问题汇总权限问题:保存信息:Unable to access log file. Please ensure that /opt/gitlab/embedded/service/gitlab-rails/log/production.log exists and is writable (i.e. make it writable for user and group: chmod 0664 /opt/gitlab/embedded/service/gitlab-rails/log/production.log). The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.尝试使用命令解决,先运行容器,然后使用命令:sudo docker exec gitlab update-permissions sudo docker restart gitlabgitlab-runner搭建version: '3.3' services: gitlab-runner: container_name: gitlab-runner restart: always volumes: - './config:/etc/gitlab-runner' - './ssh:/ssh' - '/temp:/temp' - '/var/run/docker.sock:/var/run/docker.sock' image: gitlab/gitlab-runner注册进入到容器内部docker exec -it gitlab-runner base在gitlab上创建一个作业在容器里面输入这些注册gitlab-runner register --url http://172.16.1.50:84 --token glrt-2AKySoNaWBdeBDjVD2HB取消注册gitlab-runner unregister --url https://gitlab.org/ --token {TOKEN}破解gitlab-ee破解等待gitlab运行起来后,进入docker容器sudo docker exec -it gitlab /bin/bash安装依赖· ruby>=2.7.0 · gitlab-licensesudo apt install ruby sudo gem install gitlab-license创建文件vi license.rb填入以下内容require "openssl" require "gitlab/license" key_pair = OpenSSL::PKey::RSA.generate(2048) File.open("license_key", "w") { |f| f.write(key_pair.to_pem) } public_key = key_pair.public_key File.open("license_key.pub", "w") { |f| f.write(public_key.to_pem) } private_key = OpenSSL::PKey::RSA.new File.read("license_key") Gitlab::License.encryption_key = private_key license = Gitlab::License.new license.licensee = { "Name" => "用户名", "Company" => "公司", "Email" => "邮箱", } license.starts_at = Date.new(2024, 1, 1) # 开始时间 license.expires_at = Date.new(2099, 1, 1) # 结束时间 license.notify_admins_at = Date.new(2098, 12, 1) license.notify_users_at = Date.new(2098, 12, 1) license.block_changes_at = Date.new(2099, 1, 1) license.restrictions = { active_user_count: 100000, } puts "License:" puts license data = license.export puts "Exported license:" puts data File.open("GitLabBV.gitlab-license", "w") { |f| f.write(data) } public_key = OpenSSL::PKey::RSA.new File.read("license_key.pub") Gitlab::License.encryption_key = public_key data = File.read("GitLabBV.gitlab-license") $license = Gitlab::License.import(data) puts "Imported license:" puts $license unless $license raise "The license is invalid." end if $license.restricted?(:active_user_count) active_user_count = 100000 if active_user_count > $license.restrictions[:active_user_count] raise "The active user count exceeds the allowed amount!" end end if $license.notify_admins? puts "The license is due to expire on #{$license.expires_at}." end if $license.notify_users? puts "The license is due to expire on #{$license.expires_at}." end module Gitlab class GitAccess def check(cmd, changes = nil) if $license.block_changes? return build_status_object(false, "License expired") end end end end puts "This instance of GitLab Enterprise Edition is licensed to:" $license.licensee.each do |key, value| puts "#{key}: #{value}" end if $license.expired? puts "The license expired on #{$license.expires_at}" elsif $license.will_expire? puts "The license will expire on #{$license.expires_at}" else puts "The license will never expire." end 生成证书最好在映射出来的目录里面生成这个证书ruby license.rb安装依赖到生成这一步可以在docker容器中进行也可以在宿主机上进行,在宿主机上进行的话需要将生成后的文件copy到容器中去。我这里演示是在容器中进行的。替换默认公钥最好把对应的目录映射出来,要不然以后系统重启之后又需要重新破解 volumes: - **** - ./config/license/license_key.pub:/opt/gitlab/embedded/service/gitlab-rails/.license_encryption_key.pub - ./config/license/selflicense.rb:/opt/gitlab/embedded/service/gitlab-rails/ee/app/models/license.rbcp -f license_key.pub /opt/gitlab/embedded/service/gitlab-rails/.license_encryption_key.pub升级到 ULTIMATE 版本修改文件 /opt/gitlab/embedded/service/gitlab-rails/ee/app/models/license.rb --- /opt/gitlab/embedded/service/gitlab-rails/ee/app/models/license.rb +++ /opt/gitlab/embedded/service/gitlab-rails/ee/app/models/license.rb @@ -367,7 +367,7 @@ end def plan - restricted_attr(:plan).presence || STARTER_PLAN + restricted_attr(:plan).presence || ULTIMATE_PLAN end def edition -表示删除,+表示添加重启配置gitlabgitlab-ctl reconfigure gitlab-ctl restart导入许可证登录 gitlab 后台,管理中心 -> 通用 -> 许可证 (/admin/license),导入 GitLabBV.gitlab-license 可以选择 cat GitLabBV.gitlab-license 打印出文件内容后,把密钥复制后使用密钥文本,而不是上传文件
2023年01月07日
299 阅读
0 评论
0 点赞
1
...
4
5
6
7