http://reimuwang.org/2019/11/23/Java工具-诊断工具Arthas/
量化自我和极简主义的窝藏点
技术
环境:CentOS Linux release 7.4
pip install supervisor
#加载配置,修改如下
echo_supervisord_conf > /etc/supervisord.conf
mkdir /etc/supervisord.d/
vi /etc/supervisord.conf
[include]
files = /etc/supervisord.d/*.ini
#start service
supervisord -c /etc/supervisord.conf
#write a program config
vi /etc/supervisord.d/SimpleHttp.ini
[program:SimpleHttp]
command=python2 -m SimpleHTTPServer 9000
directory=/root ;执行command之前,先切换到工作目录
user=root ;使用oxygen用户来启动该进程
autorestart=true ;程序崩溃时自动重启,重启次数是有限制的,默认为3次
stdout_logfile = /tmp/simple_http.log
loglevel=info
#roload program config, start service
supervisorctl update //配置文件修改后使用该命令加载新的配置
supervisorctl status
#配置服务报警
pip install superlance
#Supervisor 事件发送到飞书
cp feishu-alert/event.conf /etc/supervisord.d/event.ini
supervisorctl update
注意:
1. 更给任何脚本时需执行以下命令,否则更改不生效
supervisorctl reload
参考:
https://www.jianshu.com/p/0b9054b33db3
https://cloud.tencent.com/developer/article/1414822
https://github.com/cmboss/supervisor-event-to-dingtalk-alert
Excel:
随机小写字母:=CHAR(INT(RAND()*25+97))
随机大写字母:=CHAR(INT(RAND()*25+65))
随机数字:=CHAR(INT(RAND()*9+48))
随机数字大小写字母:IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97))))
混合6位:=CONCATENATE(IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))))
Python:
''.join(random.sample('abcdefghijklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789', length))
service nginx stop
certbot renew –dry-run
certbot renew
service nginx start
草料二维码 https://cli.im/
在使用mac笔记本安装软件时需要更新brew update,但一直卡住。
解决方法1: 在/usr/local/bin/brew
添加 HOMEBREW_NO_AUTO_UPDATE=1
或者 HOMEBREW_NO_AUTO_UPDATE=1 brew install somepackage
方法2: brew update –debug –verbose ,然后 brew update –force
环境:macOS, 三星galaxy s7 edge, Android File Transfer
之前使用Android File Transfer拷贝文件到手机后发现后续无法再使用此功能,目前在 https://android.stackexchange.com/questions/46315/not-all-files-are-visible-over-mtp 发现是android的bug。
解决方法: 设置->应用程序->存储(在最下端)->立即清理
安装zonetime包
apt install ztdata
选择时区的命令:
tzselect
设置timezone的时区
sudo timedatectl set-timezone ‘Asia/Shanghai’
或者
echo “Asia/Shanghai” > /etc/timezone
设置时间
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
环境: MacOS, Ubuntu, Clion
在做C语言开发的时候经常要涉及Linux中的库,因此在MacOS上用VirtualBox安装Ubuntu环境,通过terminal直接登入上去。但有时要用Ubuntu上的Clion,所以安装XQuartz这个支持图形界面的登入工具。使用登入如下:
ssh -Y jerry@192.168.56.101
(注:-Y 代表启用信任的X11 forwarding)
环境: MacOS 10.11.6, Clion 2019
由于C语言自带的ANSI lib内容库不太丰富,所以直接使用linux自带的glibc库。主程序直接引用 glibc头文件
#include <glib.h>
CMakeLists.txt如下:
cmake_minimum_required(VERSION 3.14) project(untitled C) set(CMAKE_C_STANDARD 99) add_executable(untitled main.c) find_package(PkgConfig) pkg_check_modules(GLIB2 REQUIRED glib-2.0) target_include_directories(untitled PUBLIC ${GLIB2_INCLUDE_DIRS}) target_link_libraries(untitled ${GLIB2_LIBRARIES})
但编译是老是发现无法找到libintl库,最后发现home-brew没有link到gettext,执行如下: brew link –force gettext 即可