作者归档:ning

ssh config常用配置

vim ~/.ssh/config

Host    别名
    HostName        主机名
    Port            端口
    User            用户名
    IdentityFile    密钥文件的路径

有了这些配置,就可以这样用 ssh 登陆服务器了:

ssh 别名

如果遇到Bad owner or permissions错误,执行以下语句:

sudo chmod 600 config

拷贝ssh key

ssh-copy-id 别名

gedit中文乱码解决

终端配置

gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'GB18030', 'GB2312', 'GBK', 'BIG5', 'CURRENT', 'UTF-16']"
gsettings set org.gnome.gedit.preferences.encodings shown-in-menu "['UTF-8', 'GB18030', 'GB2312', 'GBK', 'BIG5', 'CURRENT', 'UTF-16']"

使用dconf-tools工具进行配置

yum install dconf-tools,然后运行dconf-editor(ctrl+f2),依次点开->org->gnome->gedit->preferences->encodings设置如上即可

centos7基本系统安装(php-fpm,mariadb,nginx,epel)

安装epel

su -c 'rpm -Uvh http://mirrors.hust.edu.cn/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm'
su -c 'yum install epel-release-7-0.2'

安装mariadb,php,nginx

su -c 'yum install mariadb mariadb-server php php-cli php-fpm php-pdo nginx'

创建数据库账户

CREATE USER 'th'@'%' IDENTIFIED BY '***';
GRANT ALL PRIVILEGES ON * . * TO 'th'@'%' IDENTIFIED BY '***';
flush privileges;

fedora开放环境一键安装

sudo不需要密码

visudo

%wheel  ALL=(ALL)       NOPASSWD: ALL

开发环境

yum groupinstall "Development tools" -y

右键打开控制台窗口

yum install nautilus-open-terminal

禁止selinux

setenforce 0 

vi /etc/selinux/config

SELINUX=disabled

安装vscode

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

vim & git & hg & svn

yum install vim git hg subversion

nginx & php & mysql

yum install mariadb nginx php-cli php-devel php-mbstring php-opcache php-mysqlnd php-intl php-mcrypt php-pdo php-xml php-pecl-memcache  php-pecl-redis php-pecl-sphinx php-pecl-zip php-pgsql php-xdebug php-gd  php-pecl-redis  php-pecl-imagick  php-fpm

python

yum install python-virtualenv pyvenv ~/py cd ~/py/bin source activate wget https://bootstrap.pypa.io/get-pip.py python get-pip.py

golang

wget http://golang.org/dl/go1.3.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.3.linux-amd64.tar.gz 
mkdir ~/gosrc
vim ~/.bash_profile

设置GOROOT与GOPATH

GOPATH=$HOME/gosrc
GOROOT=/usr/local/go
export GOROOT
export GOPATH
PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export PATH

修改系统参数

vi /etc/sysctl.conf

fs.file-max = 500000

vi /etc/security/limits.conf

* soft nofile 60000
* hard nofile 60000

vi /etc/security/limits.d/90-nproc.conf

*          soft    nproc     4096
root       soft    nproc     unlimited

sudo无需密码

编辑sudo配置文件

# sudo visudo
your_user_name ALL=(ALL) NOPASSWD: ALL

不起作用?

原因是被后面的group的设置覆盖了,需要把group的设置也改为nopasswd

%wheel  ALL=(ALL)       NOPASSWD: ALL

goose – golang database migration tool

goose是一个golang的数据库迁移工具

安装

go get bitbucket.org/liamstask/goose/cmd/goose

创建目录

mkdir db

初始化dbconf

# vim db/dbconf.yml
development:
    driver: mymysql
    open: dbname/username/password
    import: github.com/ziutek/mymysql/godrv
    dialect: mysql

新增迁移脚本

goose create init sql

升级

goose up

降级

goose down

重做

goose redo

状态

goose status

SQL迁移

-- +goose Up
CREATE TABLE post (
    id int NOT NULL,
    title text,
    body text,
    PRIMARY KEY(id)
);

-- +goose Down
DROP TABLE post;

vagrant多虚拟机配置

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

   config.vm.provider "virtualbox" do |vb|
     vb.gui = false
     vb.customize ["modifyvm", :id, "--memory", "512"]
   end

  config.vm.provision "shell", inline: "echo Hello"

  config.vm.define "dev", primary: true do |dev|
    dev.vm.box = "centos-aliyun-6.5"
    dev.vm.network :private_network, ip: "192.168.1.100"
    dev.vm.provision "shell", inline: "echo dev"
    dev.vm.synced_folder "d:/project", "/var/www"
  end

  config.vm.define "db1", autostart: false do |db1|
    db1.vm.box = "centos-aliyun-6.5"
    db1.vm.network :private_network, ip: "192.168.1.101"
    db1.vm.provision "shell", inline: "echo db1"
  end

  config.vm.define "db2", autostart: false do |db2|
    db2.vm.box = "centos-aliyun-6.5"
    db2.vm.network :private_network, ip: "192.168.1.102"
    db2.vm.provision "shell", inline: "echo db2"
  end

  config.vm.define "db3", autostart: false do |db3|
    db3.vm.box = "centos-aliyun-6.5"
    db3.vm.network :private_network, ip: "192.168.1.103"
    db3.vm.provision "shell", inline: "echo db2"
  end

end