Code
Linux 下使用 swap file
Linux 下至少有两种方法可以配置系统的 swap. 一种是直接格式化一个分区, 用这个分区作为swap区. 另一种是创建一个文件, swap 的内容都丢到文件里面去.
Code
CentOS 下 Nginx 代理被 SELinux 阻断的一个解决参考
nginx若打算对某个server做中转,一个简单的方法是在/etc/nginx/conf.d/目录下添加一个.conf文件,内容如下: (more…)
Code
重载中括号操作符, 执行复杂操作
C++可以重载运算符, 其中中括号 "[]", 通常在其它地方用于表示下标的操作符, 重载自然也是用于"获得或者设置某个属性"这么个功能.
最简单的莫过于返回一个地址, 做的操作自然都被看光了.
class Opol { public: Opol() { memset(a,0,10); } int & operator [] (int k) { return a[k]; } private: int a[10]; }
Code
修改普通用户的最大文件打开数
使用到mongo,redis等数据库的时候,往往会遇到这样一个坑。某mongo跑着跑着突然没了,某redis启动先给个warning,仔细一看log说最大文件打开数不够..
# You requested maxclients of 10000 requiring at least 10032 # max file descriptors. # Redis can't set maximum open files to 10032 because of OS error: # Operation not permitted. # Current maximum open files is 1024. # maxclients has been reduced to 4064 # to compensate for low ulimit. # If you need higher maxclients increase 'ulimit -n'.
Code
格式化MongoDB的输出
通过mongo自带的命令行进入后,db.coll_name.findOne(),可以发现mongo返回的数据是被format过的,看起来各种爽。但若你抽一下,改用db.coll_name.find(),瞬间弥漫而来的是各种unformatted数据,根本没法看。其实我们很容易就可以调整让它显示地更加漂亮。 现在有两种方法可以做到这点。 (more…)
Code
GitLab 发出MergeRequest的时候返回500错误的两个解决log
本log介绍gitlab使用过程中遇到的两个问题的解决.
其一是有人post过大的merge request以至于gitlab返回500.其二是有时候遇到中文乱码的解决. (more…)
Code
CentOS 7 下安装 jdk1.8
更新: 现在 CentOS 7 下默认 repo 已经有 openjdk 1.6, 1.7, 1.8 三个选项了, 若无所谓 oraclejdk 和 openjdk 的区别, 我们可以直接安装 openjdk 命令如下:yum install java-1.8.0-openjdk -y要是还需要用它的头文件和库, 可以再来句yum install java-1.8.0-openjdk-{devel,headless} -y以后跟着 yum update 一起更新, 也是极好的.
CentOS 7 下目前默认是 jdk1.6 和 1.7。若需要更高版本的1.8,我们就需要一点额外的手段了。
首先,我们需要从这个页面下个最新版本的 jdk. Oracle 提供 rpm 包和tar.gz 包. 为了省事, 我们直接下载个 rpm 包完事.
若远程直接用 wget 下载, 有时候有一点问题, 需要加点参数来帮忙. 参考此处.
下载完成后,可以用 rpm 命令安装,不过本懒人记不住那么多命令, 更喜欢用 yum 搞定。 (more…)
Code
从 Linux 到 macOS
一个月前更新机器,从我大 Fedora 转到了 macOS, 虽然都继承了Unix的衣钵, 但很多地方还是有些区别的. 入手一个月, 感觉已经可以小用下, 虽然很多地方还是不适应, 至少可以好好写代码了. 抽点时间写下一些 log, 希望能帮助到谁.