Linux相关

A collection of 13 posts

Linux相关

mac unzip Illegal byte sequence

mac解压文件: 直接双击,即命令行的 open,失败了,报错: 无法将"xxx.zip"解压到"xx" (错误22 - 无效的参数) 命令行unzip,失败,报错: ➜ unzip Interface.zip Archive:  Interface.zip checkdir error:  cannot create i-�++��+ Illegal byte sequence unable to process i-�+/�𦷦��-����_+�+��-�_i-�+�_+�+��+���+����_V1.2_2018120411.xlsx. 该用ditto # 后面两个参数,

  • zhuanghd
    zhuanghd
Linux相关

supervisor 安装部署

supervisor管理进程,Python开发的进程管理工具,通过fork/exec的方式将这些被管理的进程当作supervisor的子进程来启动,所以我们只需要将要管理进程的可执行文件的路径添加到supervisor的配置文件中就好了。此时被管理进程被视为supervisor的子进程,若该子进程异常中断,则父进程可以准确的获取子进程异常中断的信息,通过在配置文件中设置autostart=ture,可以实现对异常中断的子进程的自动重启 sudo apt-get install supervisor 或者 pip install supervisor 或者 easy_install supervisor 如果使用pip或者easy_install 安装的supervisor需要自己创建配置文件目录和文件,如下 cd /etc mkdir supervisor cd supervisor mkdir conf.d sudo echo_supervisord_conf > /etc/supervisor/supervisord.

  • zhuanghd
    zhuanghd
Linux相关

base64加密原理探究

BASE64是一种编码方式,通常用于把二进制数据编码为可写的字符形式的数据。 这是一种可逆的编码方式,从编码的方式即可逆推出解码的方式。 编码后的数据是一个字符串,其中包含的字符为: A-Z、a-z、0-9、+、/ 共64个字符:26 + 26 + 10 + 1 + 1 = 64。【注:其实是65个字符,“=”是填充字符】。 大体流程是这样的 1.字符 通过ascii码表转化 成数字 2.数字转化成二进制编码 然后参考如下: 64个字符需要6位来表示,表示成数值为0~63。 这样,长度为3个字节的数据经过Base64编码后就变为4个字节。 例:字符串“Xue”经过Base64编码后变为“WHVl”。 长度为3个字节的数据位数是83=24,可以精确地分成64。 如果数据的字节数不是3的倍数,则其位数就不是6的倍数,那么需要就不能精确地划分成6位的块,此时,

  • zhuanghd
    zhuanghd
Linux相关

安装CoreSeek 3.2.14 && 配置mysql数据源

Sphinx 0.9.9/Coreseek 3.2 安装使用说明 Sphinx--强大的开源全文检索引擎,Coreseek--免费开源的中文全文检索引擎 环境准备: ##系统依赖环境要求: m4 >= 1.4.13 autoconf >= 2.65 automake >= 1.11 libtool >= 2.2.6b coreseek安装需要预装的软件: apt-get install make gcc g++ automake libtool mysql-client libmysqlclient15-dev libxml2-dev libexpat1-dev 中文测试环境检查: 
$  locale

  • zhuanghd
    zhuanghd
Linux相关

Zabbix 编译安装相关参数记录

./configure --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config_editor --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc --prefix=/apps/svr/zabbix zabbix安装时 编译安装php ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-iconv=/usr/local/php/libiconv --with-mysql --with-mysqli --with-pdo-mysql --with-pear --with-zlib --with-libxml --with-iconv --with-xmlrpc --with-mhash

  • zhuanghd
    zhuanghd
Linux相关

./configure 常用参数浅析

--prefix=PREFIX 把所有文件安装在PREFIX中而不是默认的路径(如 /usr/local/xxx 中)。默认是"/"或者是"/usr/local"等等。。 以下还有部分参数细化 PREFIX 的其它目录 --exec-prefix=EXEC-PREFIX 制定体系相关的文件的安装位置,默认是PREFIX --bindir=DIRECTORY --sbindir=SBINDIR 可执行文件的安装位置。默认是PREFIX/bin和PREFIX/sbin --datadir=DIRECTORY 指定所安装的只读文件的目录,默认是PREFIX/share --sysconfdir=SYS-CONFDIR 用于各种配置文件,默认是PREFIX/etc,也可能是PREFIX/var

  • zhuanghd
    zhuanghd
Linux相关

AMQP error while attempting pushRaw: fwrite(): send of 3517 bytes failed with errno=11

场景:laravel + laravel-queue-rabbitmq + php-amqplib 实现laravel rabbimq中间件相关功能。 现象:之前很长一段时间正常运行相关业务,最近在同一台服务器上部署了另外一个laravel项目,该项目也需要用到rabbimq,两天后出现异常,查看日志报错如下: local.ERROR: AMQP error while attempting pushRaw: fwrite(): send of 3517 bytes failed with errno=11 资源暂时不可用 解决1:看到报错,第一时间想法是rabbimq这边的问题, 考虑会不会是这边单个messge的大小超了。 后面通过在 测试环境、开发环境 测试都正常,所以确定不是rabbitmq这边的问题。 解决2:找到业务逻辑代码,修改进入队列的单个数据大小,发现可以正常进入队列 不报错了。后面观察了一段时间发现这个报错还是会偶发,

  • zhuanghd
    zhuanghd