Finology 大数据金融

通过大数据以量化金融

安装SVN

1
yum -y install subversion

创建SVN仓库

先创建仓库目录,用来放仓库文件

1
mkdir -p /usr/local/svn/repo

在上面目录下创建SVN仓库

1
svnadmin create /usr/local/svn/repo

配置SVN

进入SVN配置目录

1
cd /usr/local/svn/repo/conf

配置svnserve.conf

至少有三个地方需要取消注释。

1
2
3
auth-access = write
password-db = passwd
authz-db = authz

配置passwd

比如增加一个admin用户

1
2
3
4
[users]
# harry = harryssecret
# sally = sallyssecret
admin = admin

配置authz

给admin用户设置根目录的读写权限

1
2
[/]
admin = rw

启动SVN服务

1
svnserve -d -r /usr/local/svn/repo/

-d参数是daemon

-r参数是root,也即是仓库的根目录

服务启动后,SVN服务在3690端口进行监听

1
2
ss -tunlp | grep 3690
tcp LISTEN 0 7 *:3690 *:*

SVN备份

全量备份

/usr/local/svn/repo仓库的内容备份到/usr/local/svn-bak/目录下。

1
2
3
4
sudo svnadmin dump /usr/local/svn/repo/ > /usr/local/svn-bak/repobak-all
\* Dumped revision 0.
\* Dumped revision 1.
\* Dumped revision 2.

增量备份

查看svn最新的版本号

1
2
svnlook youngest /usr/local/svn/repo
1

可得知svn的版本号为1。

初始备份

1
2
3
sudo svnadmin dump /usr/local/svn/repo/ -r 0:1 --incremental > /usr/local/svn-bak/repobak0-1
\* Dumped revision 0.
\* Dumped revision 1.

-r参数:<start-revision-no.>:<end-revision-no.>,上面例子是0:1,指定备份的开始与结束版本号。

--incremental参数:表示增量备份。

再次备份

下次备份时,查看最新的svn版本号:

1
2
svnlook youngest /usr/local/svn/repo
2

说明这两次备份之间,只更新了一个版本。

执行增量备份:

1
2
sudo svnadmin dump /usr/local/svn/repo/ -r 2:2 --incremental > /usr/local/svn-bak/repobak2-2
\* Dumped revision 2.

恢复

灾难过后,新建svn仓库,如:/usr/local/svn/recovery-repo/

全量恢复

1
sudo svnadmin load /usr/local/svn/recovery-repo/ < /usr/local/svn-bak/repobak

增量恢复

先恢复最早的版本。

1
2
3
4
5
6
sudo svnadmin load /usr/local/svn/recovery-repo/ < /usr/local/svn-bak/repobak0-1 
<<< Started new transaction, based on original revision 1
​ \* adding path : project1 ... done.
​ \* adding path : project1/new ... done.

------- Committed revision 1 >>>

再恢复最近的版本。

1
2
3
4
5
sudo svnadmin load /usr/local/svn/recovery-repo/ < /usr/local/svn-bak/repobak2-2 
<<< Started new transaction, based on original revision 2
​ \* editing path : project1/new ... done.

------- Committed revision 2 >>>

恢复后,设置好密码、权限等配置,启动svnserve服务,就算是恢复完成了。

1
yum clean all
1
rm -rf /var/cache/yum/*

加载光盘iso

首先在VMware里面,把CentOS-7-x86_64-Everything-1908.iso镜像文件加载到CD/DVD设备中。

加载成功后,查看状态:

1
2
ll /dev/cdrom 
lrwxrwxrwx. 1 root root 3 Jan 7 09:54 /dev/cdrom -> sr0

创建挂载目录

此目录用于显示光盘内容

1
mkdir /mnt/cdrom

挂载

查看挂载类型

1
2
3
4
5
6
7
8
cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev ramfs
...
nodev selinuxfs
xfs
iso9660

我们看到类型有iso9660

1
mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom

把参数-t省略也是可以的,即:

1
mount /dev/cdrom /mnt/cdrom/

系统会提示按只读方式挂载。

查看挂载状态:

1
2
3
4
5
df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/sr0 11G 11G 0 100% /mnt/cdrom
...

添加yum配置文件

备份CentOS-Base.repo文件

1
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

创建文件/etc/yum.repos.d/CentOS-Base-Local.repo

内容如下:

1
2
3
4
5
6
[base-local]
name=CentOS-$releasever - Base-Local
baseurl=file:///mnt/cdrom
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

清理yum缓存

1
yum clean all

查看本地yum源是否生效

1
2
3
4
5
6
yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
base-local CentOS-7 - Base-Local 10,097
repolist: 10,097

到此,我们就可以通过yum install安装软件了。

0%