标签 运维 下的文章

python 虚拟环境的重要性已经无需多言了, 目前所有支持 python 虚拟环境的工具中最好用的应该就是 conda 了, 最重要的一点是可以一键创建不同版本的 python 环境以适应不同的需求.

Anaconda 比较臃肿, 本文使用无 GUI 的 miniconda。

Minicanda安装

下载
进入清华大学开源软件镜像站网址:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/

建议下载最新版本:
Miniconda3-latest-Windows-x86_64.exe

安装
一路Next即可

设置环境变量
自行将Miniconda的路径(第二步所选择的安装位置)添加到系统的环境变量中,确保你可以在任何位置运行conda命令。这一步非常关键,它将为你在Windows系统上使用conda提供便利。

建议增加的路径

path\to\your\miniconda
path\to\your\miniconda\Library\bin
path\to\your\miniconda\Scripts

- 阅读剩余部分 -

基本概念

lftp是一个功能强大的命令行文件传输工具,支持多种协议,如 FTP、SFTP、HTTP 等。mirror命令是lftp中用于目录同步的一个重要命令。它可以递归地下载或上传整个目录结构,并且能够根据源目录和目标目录之间的差异,智能地增量更新文件。

命令语法

mirror 命令的基本语法形如:

mirror [options] [source] [destination]

source:指定要同步的源目录。例如,如果是从 FTP 服务器下载,这就是服务器上的目录路径;如果是上传,这就是本地要上传的目录路径。
destination:指定同步的目标目录。对于下载操作,这是本地文件系统的目录路径;对于上传操作,这是远程服务器上的目录路径。
options:有许多选项可以控制mirror命令的行为。例如:
-R:用于反转操作方向,通常用于上传。默认情况下,mirror是用于下载的,使用-R后,就会将本地目录上传到远程服务器,将源目录作为本地目录,目标目录作为远程目录。
-c:这个选项用于继续被中断的传输。如果在同步过程中由于网络问题或其他原因导致传输中断,使用-c选项可以从中断的地方继续进行传输,而不是重新开始整个同步过程。
-n:这个选项用于进行模拟运行。当使用-n时,mirror命令不会实际传输文件,而是会显示将要进行的操作,包括哪些文件将被下载或上传、目录结构如何创建等信息,这对于在执行实际同步操作之前检查命令的正确性非常有用。
--delete:这个选项用于删除目标目录中在源目录中不存在的文件和目录。例如,在同步两个目录时,如果源目录中的某个文件被删除了,使用--delete选项可以确保目标目录中的相应文件也被删除,从而保持两个目录的严格同步。

- 阅读剩余部分 -

svn备份的三种方法

  1. svnadmin dump
  2. svnadmin hotcopy
  3. svnsync

注意:svn备份不宜采用普通的文件拷贝方式(除非你备份的时候将库暂停),如copy命令、rsync命令。

优缺点

第一种svnadmin dump是官方推荐的备份方式,优点是比较灵活,可以全量备份也可以增量备份,并提供了版本恢复机制。
缺点是:如果版本比较大,如版本数增长到数万、数十万,那么dump的过程将非常慢;备份耗时,恢复更耗时;不利于快速进行灾难恢复。
个人建议在版本数比较小的情况下使用这种备份方式。

第二种svnadmin hotcopy原设计目的估计不是用来备份的,只能进行全量拷贝,不能进行增量备份;
优点是:备份过程较快,灾难恢复也很快;如果备份机上已经搭建了svn服务,甚至不需要恢复,只需要进行简单配置即可切换到备份库上工作。
缺点是:比较耗费硬盘,需要有较大的硬盘支持

第三种svnsync实际上是制作2个镜像库,当一个坏了的时候,可以迅速切换到另一个。不过,必须svn1.4版本以上才支持这个功能。
优点是:当制作成2个镜像库的时候起到双机实时备份的作用;
缺点是:当作为2个镜像库使用时,没办法做到“想完全抛弃今天的修改恢复到昨晚的样子”;而当作为普通备份机制每日备份时,操作又较前2种方法麻烦。

- 阅读剩余部分 -