e2fsprogs包降级

近日用了第三方的源升级了e2fsprogs(1.45.6.wc1-0)但是在 virt-resize的时候supermin错误退出.

如果编译升级 libguestfs和supermin又一堆麻烦问题.

回滚rpm包的时候卡在了libcom_err因系统依赖无法卸载,

搜索和测试后得出的解决办法是先下载好旧版本的包用rpm强制安装, 然后卸载新的版本所有包,最后安装回去涉及的依赖包,

阅读剩余部分...

php扩展mailparse安装

git clone https://github.com/php/pecl-mail-mailparse.git mailparse
cd mailparse
phpize
./configure
sed -i 's/#if\s!HAVE_MBSTRING/#ifndef MBFL_MBFILTER_H/' ./mailparse.c
make
make install 
 echo "extension=mailparse.so" | sudo tee   $(php-config --ini-dir)/mailparse.ini

开源项目地址 https://github.com/php-mime-mail-parser/php-mime-mail-parser

老人与坏人

曾几何时出现了一种说法, “老人变坏了”和“坏人变老了”,
这事根本的原因还是因为做一个正常人和好人的成本太高了, 道德/财力/时间/精力/法律等等大山压在好人的身上.
结果就是年轻人变得冷漠, 老年人变得趋利.

whmcs程序压缩包下载地址

https://s3.amazonaws.com/releases.whmcs.com/v2/pkgs/whmcs-8.4.1-release.1.zip

observium和librenms常用配置

librenms.conf  nginx配置

server {
 listen      80;
 server_name librenms.XXX.com;
 root        /opt/librenms/html/;
 index       index.php;

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {expires 30d;}
        location ~ .*\.(js|css)?$ { expires 12h;}

 location / { try_files $uri $uri/ /index.php?$query_string; }
 location /api/v0 { try_files $uri $uri/ /api_v0.php?$query_string; }
 location ~ \.php {
  include fastcgi.conf;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/dev/shm/librenms.sock;
  fastcgi_param SCRIPT_FILENAME $request_filename;
}
 location ~ /\.ht { deny all; }
}

 

observium.conf nginx配置

server {
    listen 80;
    root /opt/observium/html/;
    index index.php;
    server_name   observium.XXX.com;
    error_log /var/log/nginx/observium.error.log ;
    access_log /var/log/nginx/observium.log ;

 location / { try_files $uri $uri/ /index.php?$query_string; }
 location /api/v0 { try_files $uri $uri/ /api_v0.php?$query_string; }
 location ~ \.php {
  include fastcgi.conf;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/dev/shm/php-fpm.sock;
  fastcgi_param SCRIPT_FILENAME $request_filename;
 }
}

 

observium.sh  升级迭代版本

cd /opt
mv observium observium_old
wget  http://www.observium.org/observium-community-latest.tar.gz -O -|tar xz
mv /opt/observium_old/{rrd,logs,config.php} /opt/observium/
/opt/observium/discovery.php -u
/opt/observium/discovery.php -h all
rm -rf observium_old

Centos8切换到Stream版本

大致先更换vault源,然后执行切换升级。

# CentOS 8 
minorver=8.5.2111
sudo sed -e "s|^mirrorlist=|#mirrorlist=|g" \
         -e "s|^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever|baseurl=https://mirrors.aliyun.com/centos-vault/$minorver|g" \
         -i.bak \
         /etc/yum.repos.d/CentOS-*.repo

然后dnf更新系统。

dnf install centos-release-stream -y
dnf swap centos-linux-repos centos-stream-repos -y
dnf distro-sync -y

可能有一些第三方包不能升级, 也有可能遇上centos-release-stream安装失败的情况。

导出google的个人数据以及恢复邮件数据

https://takeout.google.com/

从takeout导出需要的数据, 在邮件目录里面找到mbox文件, 借助mb2md 把mbox转换成maildir.

mb2md -s /.mbox文目录/   -d   /home/user/存放邮件目录/
chown  -R mail.mail   /home/user/存放邮件目录/.kvm_mbox

.kvm_mbox目录下的cur目录内就是原来邮件内容.

另外Roundcube的webmail也能直接导入mbox的数据.

MacOS安装mtr pkg包

用brew安装的mtr安装或多或少的会有一些问题,直接下载pkg来安装来的方便一些。

http://rudix.org

https://github.com/rudix-mac/packages/

Linux的dns使用tcp协议解析

因为攻击原因UDP协议禁用了后影响到DNS解析了.

echo "options use-vc" >> /etc/resolv.conf

 

 

use-vc (since glibc 2.14)
                     Sets RES_USEVC in _res.options.  This option forces
                     the use of TCP for DNS resolutions.

https://man7.org/linux/man-pages/man5/resolv.conf.5.html

dnsdist.conf

# cat /etc/dnsdist/dnsdist.conf
newServer({address="8.8.8.8:53",useClientSubnet=true,maxCheckFailures=30,qps=10000})
newServer({address="1.1.1.1:53",useClientSubnet=true,maxCheckFailures=30,qps=10000})
setACL({'0.0.0.0/0', '::/0'})

addLocal('0.0.0.0:53')
setServerPolicy(firstAvailable)
setECSSourcePrefixV4(24)
setECSSourcePrefixV6(56)

fedora35从nmcli更改网络回network-scripts管理配置

为了兼容老旧的solusvm进行系统管理, 最近更新fedora的系统模版发现官方已经抛弃原来的配置方式了.

解决方案如下

dnf remove NetworkManager -y
dnf install network-scripts -y
systemctl enable network

然后重新写入/etc/sysconfig/network-scripts/ifcfg-eth0的配置内容.

另外nmcli的网卡配置文件目录/etc/NetworkManager/system-connections/下面有eth0.nmconnection之类的文件保存着IP配置信息.

小孩子沉迷的快乐

小朋友玩电脑/平板/游戏/视频的时候是快乐状态的, 沉迷状态的快乐。
用另外一种快乐的事物进行覆盖替代解决沉迷或者是脱敏训练。

或另有办法欲擒故纵,将爱好变成职业化或考核任务化,小孩反其道开始厌恶。
最后:需要很多很多的时间和精力长期战斗,一次两次三天五天是不可能解决问题的。

时间飞逝

有这种感觉的时候可以回想一下,  这段时间状态处于非常“空闲”或者是“非常忙”的状态, 除开着两个状态外只会感觉时间度日如年.

mikrotik baud rate 115200

Serial Console - RouterOS  routeros Console baud-rate 115200

ipxe编译安装

ipxe默认ZLIB GZIP IMAGE_COMBOOT所以自己编译一下, 编译EFI版本的时候要去掉IMAGE_COMBOOT.

还有通过EMBED预置脚本编译成iso后, 在没有dhcp的机器上也可以进行ipxe引导.

 cat>/opt/tftp/boot.ipxe<<EOF
#!ipxe
isset ${ip} || dhcp || config
ifopen
show mac
route
chain --autofree http://你的pxe服务器地址/ipxe.php
EOF

cd /tmp
yum install git mkisofs gcc make  xz-devel  -y
git clone git://git.ipxe.org/ipxe.git
cd ipxe/src
cat>config/local/general.h<<EOF
#define DOWNLOAD_PROTO_HTTPS
#define IMAGE_COMBOOT
#define CONSOLE_CMD
#define VLAN_CMD
#define IMAGE_ZLIB
#define IMAGE_GZIP
EOF
make EMBED=/opt/tftp/boot.ipxe 

cat>config/local/general.h<<EOF
#define DOWNLOAD_PROTO_HTTPS
#define CONSOLE_CMD
#define VLAN_CMD
#define IMAGE_ZLIB
#define IMAGE_GZIP
EOF
make bin-x86_64-efi/{ipxe.efi,snponly.efi} EMBED=/opt/tftp/boot.ipxe 

install -p -D -m 0644  bin/{undionly.kpxe,undionly.kkpxe} /opt/tftp/
install -p -D -m 0644  bin-x86_64-efi/{ipxe.efi,snponly.efi} /opt/tftp/

还有 bin/ipxe.iso  bin/ipxe.lkrn bin/ipxe.pxe bin/ipxe.usb可以复制一下, 做ipxe网络启动只要一个ipxe.efi和snponly.efi 以及ipxe.kkpxe就够了