Confluence 安装中断报错

The SystemInformationService could not be retrieved from the container. Therefore very limited information is available in this error report.
The SystemInformationService could not be retrieved due to the following error: java.lang.IllegalStateException: Spring Application context has not been set
Cause
com.atlassian.util.concurrent.LazyReference$InitializationException: java.lang.IllegalStateException: Spring Application context has not been set
    at com.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:149)

caused by: java.lang.IllegalStateException: Spring Application context has not been set
    at com.atlassian.spring.container.SpringContainerContext.getComponent(SpringContainerContext.java:48)

卸载 /opt/atlassian/confluence/uninstall 重装依然报错

需要进入数据目录 /var/atlassian 删除里面的文件

再次安装即可成功

另,进入 /etc/init.d/ 删除多余的 confluence 开机启动项

yum update 出现的问题

出现 Found *** pre-existing rpmdb problem(s)

Error: python-devel conflicts with python-2.7.5-80.el7_6.x86_64
 You could try using --skip-broken to work around the problem
** Found 10 pre-existing rpmdb problem(s), 'yum check' output follows:
firewalld-filesystem-0.6.3-2.el7_7.1.noarch is a duplicate with firewalld-filesystem-0.5.3-5.el7.noarch
python-2.7.5-86.el7.x86_64 is a duplicate with python-2.7.5-80.el7_6.x86_64
python-firewall-0.6.3-2.el7_7.1.noarch is a duplicate with python-firewall-0.5.3-5.el7.noarch
python-libs-2.7.5-86.el7.x86_64 is a duplicate with python-libs-2.7.5-80.el7_6.x86_64
urw-base35-bookman-fonts-20170801-10.el7.noarch has installed conflicts urw-fonts < ('3', '2.4', '25'): urw-fonts-2.4-16.el7.noarch

这个主要是因为在系统upgrade的时候,残存了上一个版本的软件包,比如升级到了fc19,但是还有类似***.fc17的软件包。

解决方法

yum clean all
yum distro-sync         #使软件的版本与源里同步
yum reinstall ***  对于***出问题的包,可以使用这个重新安装适合当前操作系统版本的软件。
package-cleanup --problems    --可以列出当前RM数据库中有依赖问题的包
package-cleanup --dupes       --扫描有多个副本的包
package-cleanup --orphans   #列出在当前配置的repos中不可用的包
package-cleanup --cleandupes  #可以清除旧的副本,这个对于诸如***is a duplicate with ***比较有用。
rpm --rebuilddb
yum update

如果上面的方法仍然无法解决,就可以直接remove掉问题包了,然后在重新安装一下,或许最新发行版已经不提供对该包的支持和更新了。

via http://www.voidcn.com/article/p-ububbuhr-bt.html

默认内核无法启动

如在 yum update 时发生错误中断,可能造成新内核无法启动,先进入旧内核,然后 yum remove 新内核

#查看当前内核
[root@bigapp-slave27 ~]# uname -r
3.10.0-514.16.1.el7.x86_64
 
#修改开机时默认使用的内核
grub2-set-default 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)'
 
#查看内核修改结果
[root@bigapp-slave27 ~]# grub2-editenv list
saved_entry=CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
 
#查看系统安装了哪些内核包
[root@bigapp-slave27 ~]# rpm -qa |grep kernel
kernel-3.10.0-327.el7.x86_64
kernel-headers-3.10.0-514.6.1.el7.x86_64
kernel-tools-libs-3.10.0-327.el7.x86_64
kernel-3.10.0-514.16.1.el7.x86_64
kernel-tools-3.10.0-327.el7.x86_64
 
#使用yum remove 或rpm -e 删除无用内核
yum remove kernel-3.10.0-327.el7.x86_64

via https://www.cnblogs.com/niyeshiyoumo/p/6762193.html

Centos 7 下 yum 安装 Supervisor

Centos 7 下 yum 安装

# yum install -y epel-release
# yum install -y supervisor
# systemctl enable supervisord # 开机自启动
# systemctl start supervisord # 启动supervisord服务

# systemctl status supervisord # 查看supervisord服务状态
# ps -ef|grep supervisord # 查看是否存在supervisord进程

via:https://blog.csdn.net/Jsonxiang/article/details/87872480

创建守护进程 以 frp 守护进程为例

# cd /etc/supervisord.d/
# vim frp.ini
[program:frp]
command = /root/frp/frps -c /root/frp/frps.ini
autostart = true

然后重新加载

systemctl restart supervisord

CentOS 6 安装

# yum install -y epel-release
# yum install -y supervisor
# chkconfig --add supervisord #加入服务
# chmod 755 /etc/init.d/supervisord #设置权限
# chkconfig supervisord on #设置开机启动

CentOS 6 貌似无法在其他目录添加配置文件。在 conf 中 [include] 貌似也不行,暂时就添加在了 supervisord.conf 文件最后

[program:frp]
command = /root/frp/frps -c /root/frp/frps.ini
autostart = true

MySQL Windows 环境连接慢的问题

MySQL localhost 连接慢

在 Windows 上开发应用连接到 MySQL 数据库时,若使用本地连接需要延迟 1s 后才能打开

将服务器地址 localhost 修改为 127.0.0.1 速度就变得正常了

所以问题在于 localhost 的解析问题

使用 localhost 程序解析出来的是 ipv6 地址 ::1 ,但 MySQL 监听的是 ipv4 的地址 127.0.0.1,ipv6 连不上超时后会再去连接 ipv4 地址 127.0.0.1, 这就是这个1秒钟延迟出现的原因

解决方法,使用 127.0.0.1 代替 localhost

phpMyAdmin 配置修改方法

文件目录

phpMyAdmin\libraries\config.default.php

$cfg['Servers'][$i]['host'] = '127.0.0.1';

腾讯云 SSH 登录慢的问题

编辑 SSHD 配置

vim /etc/ssh/sshd_config

将 GSSAPIAuthentication 的设置由 yes 改为 no

将 UseDNS 设置修改为 no

重启服务:service sshd restart

核实目录下 /var/log/btmp 文件是否过大

删除它

rm -rf /var/log/btmp
# 或者
touch /var/log/btmp

PHP 依赖注入学习

依赖注入允许向类中的方法传递对象

其实依赖注入就是类型约束,可以参考官网文档,被写在方法参数中的类会被自动实例化,这就是依赖注入

http://php.net/manual/zh/language.oop5.typehinting.php

公用类 Temp

<?php
namespace app\common;
class Temp
{
    // 公用属性,可以在URL中访问,protected和private不可以在外部访问
    public $name;
    // 构造方法,调用类时自动运行
    public function __construct($name = '默认名称')
    {
        $this->name = $name;
    }
    public function set($name)
    {
        $this->name = $name;
    }
    public function get()
    {
        return '当前方法为:'.__METHOD__.'当前属性为:'.$this->name;
    }
}

在 Demo 类中使用依赖注入,为当前方法传入一个自动实例化的类,实例化后赋值给 $temp 变量

<?php
namespace app\demo\controller;
class Demo
{
    // 使用了依赖注入,给setName方法注入了一个对象,同时这个对象中需要传入一个name属性
    public function setName(\app\common\Temp $temp,$name)
    {
        // 这里的\app\common\Temp $temp相当于$temp = \app\common\Temp;
        $temp->set($name);
        return $temp->get();
    }
    public function getInfo(\app\common\Temp $temp)
    {
        return $temp->get();
    }
    public function getName(\app\common\Temp $temp)
    {
        return $temp->name;
    }
}

VirtualBox 的一些配置

外部网络访问,设置固定 IP

VirtualBox 安装好 Linux (Ubuntu)后,使用 ifconfig 或 ip addr 发现本机是10.0.2.15 这样的ip地址,物理机无法 ping 通虚拟机,

因为 VirtualBox 的网络设置的连接使用了 【NAT 网络地址转换】的方式,需要修改为【桥接网卡】,重启虚拟机即可,或

Continue reading VirtualBox 的一些配置

Ubuntu下 apt-mirror 搭建内网本地源

安装 apt-mirror

sudo apt install apt-mirror
sudo vi /etc/apt/mirror.list

参考以下配置文件:(清空原有的配置文件,直接使用以下配置文件即可)

############# config ##################
# 以下注释的内容都是默认配置,如果需要自定义,取消注释修改即可
set base_path /var/spool/apt-mirror
#
# 镜像文件下载地址
# set mirror_path $base_path/mirror
# 临时索引下载文件目录,也就是存放软件仓库的dists目录下的文件(默认即可)
# set skel_path $base_path/skel
# 配置日志(默认即可)
# set var_path $base_path/var
# clean脚本位置
# set cleanscript $var_path/clean.sh
# 架构配置,i386/amd64,默认的话会下载跟本机相同的架构的源
set defaultarch amd64
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
# 下载线程数
set nthreads 20
set _tilde 0
#
############# end config ##############
# Ali yun(这里没有添加deb-src的源)
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
 
clean http://mirrors.aliyun.com/ubuntu
Continue reading Ubuntu下 apt-mirror 搭建内网本地源