存档在 2016年11月

怎样安装RedMine

2016年11月30日

Redmine 是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。

官网:http://www.redmine.org/
官网:http://www.redmine.org.cn/

主题:http://www.try-catch.org/?p=53

参考:http://www.redmine.org/projects/redmine/wiki/HowTo_install_Redmine_on_CentOS_5
参考:http://jingyan.baidu.com/article/6c67b1d6e863d22787bb1e36

怎样安装go

2016年11月29日

下载:http://code.google.com/p/go/downloads
下载:https://golang.org/dl/

参考:https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/02.3.md
参考:http://www.linuxidc.com/Linux/2014-03/98974.htm
参考:http://www.cnblogs.com/yyrdl/p/5388528

下载安装包解压到 /usr/local :

wget https://storage.googleapis.com/golang/go1.7.3.linux-amd64.tar.gz
tar zxvf go1.7.3.linux-amd64.tar.gz -C /usr/local

src文件夹下用来放第三方库文件。
pkg下放的是编译好的库文件 (.a后缀文件)。

编辑系统环境变量文件 /etc/profile ,在最后添加:

export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin    

GOROOT:编译项目时便于系统寻找标准库。
GOPATH:变量指向这个文件夹export GOPATH=刚建的文件夹路径
GOBIN:export GOBIN=$GOPATH\bin。(go install 命令需要将可执行文件放到GOBIN指定的目录下)

编译/etc/profile文件,使之生效:

source /etc/profile

查看是否配置成功:

go version

输出:

go version go1.7.3 linux/amd64

查看环境变量:

go env

输出:

GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build585599395=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"

编辑一个go文件测试:

helloworld.go

package main
import "fmt"

func main() {
	fmt.Println("hello world!")
}

执行:

go run /root/go/helloworld.go

输出:

hello world!

怎样生成CSR

2016年11月28日

参考:https://doc.ssl.do/page/generate-csr/

当申请SSL证书时,需要提供一个证书签发请求 (Certificate Signing Request, CSR) 才能申请签发 SSL 证书。

以下介绍在CentOS下生成 CSR/Key 文件:

openssl req -out weblog.org.csr -new -newkey rsa:2048 -sha256 -nodes -keyout weblog.org.key

您需要填写的信息:
1. Country Name,两位国别代码,比如:CN。
2. State or Province Name, 您所在的省或州的全名,比如:Beijing。
3. Locality Name,您所在的地区 / 城市名称,比如:Beijing。
4. Organization Name, 您所在的组织名称,比如:Google Inc。
5. Organization Unit Name, 您所在组织的部门 / 单元名称,比如:Network Dept。
6. Common Name, 请填写您希望签发证书的完整域名,比如:weblog.org 或 sub.weblog.org。如果申请的是泛域名证书,请在特定子域填写通配符,例如 *.weblog.org 或者 *.l2sub.weblog.org。
7. Email Address, 请填写您的证书联系人邮件地址。

一句话生成:

openssl req -new -newkey rsa:2048 -sha256 -nodes -out weblog.org.csr -keyout weblog.org.key -subj "/C=CN/ST=Beijing/L=Chaoyang/O=TricroMedia SciTech Co., Ltd./OU=Tech Dept/CN=*.weblog.org"

如果希望生成 ECC 证书,命令看起来像这样:

openssl ecparam -out weblog.org.pkey -name prime256v1 -genkey && openssl req -new -key weblog.org.pkey -nodes -out weblog.org.csr -subj 
"/C=CN/ST=Beijing/L=Chaoyang/O=TricroMedia SciTech Co., Ltd./OU=Tech Dept/CN=weblog.org"

如果您准备签发的是多域名证书,请使用下面的命令将所有的域名包含进去,生成带有 SAN 的 CSR

openssl req -new -newkey rsa:2048 -sha256 -nodes -out weblog.org.csr -keyout weblog.org.key -subj "/C=CN/ST=Beijing/L=Chaoyang/O=TricroMedia SciTech Co., Ltd./OU=Tech Dept/CN=weblog.org/subjectAltName=DNS.1=sub1.weblog.org,DNS.2=sub2.weblog.org,DNS.3=sub.another-weblog.org"

错误代码 ssl_error_internal_error_alert

2016年11月28日

最近打开 https://amon.org/ 时时常遇到:

“连接时发生错误。对等端报告其遇到一个内部错误。错误代码 ssl_error_internal_error_alert”

难道是LetsEncrypt证书服务器连接不上?

参考:http://mozilla.com.cn/thread-371943-1-1
参考:http://mozilla.com.cn/thread-374869-1-1

一切都是百度云加速的锅?

参考:http://ctohome.com/FuWuQi/cb/770

怎样删除乱码文件名

2016年11月24日

有的时候在线解压,而CentOS系统不支持中文的话,会产生乱码文件名。无法直接删除,系统会说找不到文件。那么怎样删除它呢?

可以根据 inode 来修改或删除linux下乱码的文件。

先创建测试文件:

touch 1?.txt

查询inode:

ll -i

输出:

total 14694452
17956913 -rw-r--r-- 1 oracle oinstall          0 Jan 18 20:24 1?.txt

修改测试文件名:

find . -inum 17956913 -exec mv {} file.txt \;

检查修改结果

ll

输出:

total 14694452
....
-rw-r--r-- 1 oracle oinstall          0 Jan 18 20:24 file.txt

所以删除乱码的文件可使用:

find . -inum 17956913 -exec rm {} \;