从Confluence 7.9.0 以下版本升级到 7.11.0 的方法

最近一边做测试,一边把步骤写在了QQ群里,今天有空总结一下:

首先,从confluence 7.9.0 以下版本无法直接升级到 7.11.0,这是因为7.11.0 引进了一个新的RMI端口 8000 (当然因为是跨版本升级,是否7.10版本就引进了,这里不做描述,因为也没有测试过)

其次,从升级程序测试来看,对跨版本升级也不友好,感觉没有经过严谨测试,就把程序放上来了(疫情以后的这几版程序都有这个问题)

所以我们还是新安装一个环境,然后将老环境下的数据迁移到新环境即可。

安装过程如下,使用虚拟机会比较友好

1、虚拟出一台和线上系统一模一样的confluence 7.9.0,IP不同,可访问即可。这样老业务也不用停止。先删除老的7.9.0,再安装新的7.11.0


chmod +x /opt/atlassian/confluence/uninstall
/opt/atlassian/confluence/uninstall
chmod +x atlassian-confluence-7.11.0-x64.bin.bin
./atlassian-confluence-7.11.0-x64.bin

注意安装完成后系统提示是否启动,选择No

2、替换K文件和增加 mysql driver


cd /opt/atlassian/confluence/confluence/WEB-INF/lib
mv atlassian-extras-decoder-v2-3.4.1.jar atlassian-extras-decoder-v2-3.4.1.jar.bak

同时需要上传mysql-connector-java-8.0.22.jar驱动到/opt/atlassian/confluence/confluence/WEB-INF/lib目录下

3、启动新安装的confluence 7.11.0


/opt/atlassian/confluence/bin/startup.sh

4、访问 http://IP:8090 进行安装

这里会报错

解决需要在数据库里增加一个语句


mysql -p
> set global log_bin_trust_function_creators = 1;

然后继续安装

去旧的confluence 7.9.0 里把数据备份出来

完成后进入找到授权码,证明K文件依旧正常有效(K文件仅限研究,拒绝商用)

关于7.11.0的插件

照例无法打开应用市场,可以把插件下载下来使用,用下面这个插件做测试

插件部分到此结束,继续 One file all done。

浪潮NF5270M3型号服务器安装CentOS8.3

由于CentOS8.3删除了一些RAID卡驱动,导致安装的时候找不到硬盘,下面就来详细讲解一下如何安装CentOS8.3

一、查找浪潮服务器的RAID卡信息

https://www.inspur.com/eportal/ui?pageId=2317460&type=0
可以通过序列号查找
NF5270M3的RAID卡型号是SAS2018

二、查找CentOS8.3 移除的硬件信息
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/considerations_in_adopting_rhel_8/hardware-enablement_considerations-in-adopting-rhel-8#removed-adapters_hardware-enablement

可以看到SAS2108驱动已经被移除

三、下载被移除的驱动(ISO格式)
https://elrepo.org/linux/dud/el8/x86_64/

其中文件最后的0,1,2,3代表的是CentOS8的版本号,比如我们安装CentOS8.3,那么就应该下载对应的dd-megaraid_sas-07.714.04.00-1.el8_3.elrepo.iso文件。

四、安装CentOS8.3
正常使用安装盘引导到安装引导界面,按“TAB”键进入编辑,在quiet 后面增加liunx dd,然后弹出系统安装盘,挂入驱动盘后回车,待出现以下提示:
to select, ‘r’-refresh, or ‘c’-continue:
按r,然后选择1,会出现需要安装的驱动文件,然后再选择1确定,这时选择的驱动文件前面会显示[x]表示被选中,提示
to toggle selection, or ‘c’-continue: (输入c,回车)
驱动安装完成后,提示
to select, ‘r’-refresh, or ‘c’-continue:
这个时候需要弹出驱动盘,然后挂载系统安装盘,按c,就会进入安装程序,就可以正常安装CentOS8.3了。

Mount出错,提示you might need a /sbin/mount. helper program的解决方法

mount: XXX: bad option; for several filesystems (e.g. nfs, cifs) you might need a /sbin/mount. helper program.的解决方法

其实是因为没安装nfs-utils导致的

因为我们安装的 CentOS8.2 使用的是国外的软件源,所以需要先换国内的软件源,这里选择相对稳定的阿里源


rm -rf CentOS-Base.repo CentOS-Extras.repo CentOS-AppStream.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
yum makecache

更换源站后继续安装nfs-utils


dnf install nfs-utils

然后再重新执行mount操作即可。

CentOS8.2.2004安装Python3.8.5通过runlike查看容器的docker run启动参数

一、更新yum源


yum update

二、安装依赖项


yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make

三、yum源只有3.8.0版本,所以还是使用源码安装


cd Your_dir
wget https://cdn.npm.taobao.org/dist/python/3.8.5/Python-3.8.5.tgz
tar -zxvf Python-3.8.5.tgz
cd Python-3.8.5
mkdir /usr/local/python3.8.5
./configure --prefix=/usr/local/python385 --enable-optimizations;make;make install
ln -s /usr/local/python385/bin/python3 /usr/bin/python3  
ln -s /usr/local/python385/bin/pip3 /usr/bin/pip3

四、安装runlike


pip3 install runlike

五、查看容器启动参数
runlike -p <容器名>|<容器ID>


runlike -p bind

docker run \
–name=bind \
–hostname=a788eba0353d \
–mac-address=02:42:ac:11:00:02 \
–env=WEBMIN_ENABLED=false \
–env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
–env=BIND_USER=bind \
–env=BIND_VERSION=9.16.1 \
–env=WEBMIN_VERSION=1.941 \
–env=DATA_DIR=/data \
–volume=/named:/data \
–expose=10000 \
–expose=53 \
-p 53:53/udp \
–restart=no \
–label=’maintainer=sameer@damagehead.com’ \
–detach=true \
sameersbn/bind:latest \
/usr/sbin/named

使用IDM下载YOUTUBE视频(用v2ray fq)

外网有一些好的视频,看到了想保存下来,因为我使用v2ray和idm,所以研究了一会儿,其实很简单。

打开idm界面,选择下载-选项,找到代理服务器TAB,我们看到默认是不使用代理/socks;这里注意了,我们要点击使用系统设置,然后呢,点击右上方从IE获取,就会自动变到使用自动脚本那里,地址也自动写好了,然后我们只要在youtube上下载想要的视频及相应的分辨率就可以了。

关于CentOS 8.2.2004 Docker环境下应用sameersbn/bind镜像的若干需要问题

背景:
前期用pyhon写的一个软件来做dns域名劫持,dig响应正常,解析正常,但同事监控机经常报警,dns响应时间占比在四分之三,经过一番折腾,还是这个软件的事情,所以单独给同事搭建了一台dns私网服务器,为了便捷快速搭建完成,选择了sameersbn/bind镜像。
服务器:CentOS 8.2.2004
Docker引擎版本:19.03.12(使用非root用户运行)

搭建过程:


docker pull sameersbn/bind

启动过程


docker run --name='bind' -d -p 53:53/udp -e WEBMIN_ENABLED=false -v /named:/data sameersbn/bind:latest

我不用WEB来配置bind,所以就把WEB服务关了,/named目录(也可为其它目录)为数据目录,新建容器后将在该目录下生成bind/ect和bind/lib目录,其中etc目录下为DNS的相关配置文件。配置和配置其他bind服务器一致,就不在这里表述了。下面主要说说碰到的问题。

碰到的问题(很重要,说的人很少,但是能节省你的大部分时间,因为我已经以身试法了)
1、需要提前在主机上建立工作目录 /named
2、不需要关闭主机防火墙,docker启动镜像的时候会自动开通防火墙访问规则
3、报chcon: can’t apply partial context to unlabeled file 错误是因为我们关闭了selinux,需要恢复原状,即修改/etc/selinux/config文件,修改为SELINUX=enforcing,修改后必须重启服务器
4、很多人没说过的docker加载目录权限问题,我们第一次使用


docker ps -a

发现容器竟然自动退出了,然后我们要知道发生了什么,使用


docker logs bind

报错如下
mkdir: cannot create directory ‘/named/bind’: Permission denied
找了很多教程,没有人说过原因,在github上找到了问题的原因
https://github.com/sameersbn/docker-bind/issues/15
在执行docker run命令之前,需要做如下操作


chcon -Rt svirt_sandbox_file_t /named

执行后就可以正常启动容器了。