ubuntu 部署手札

適用於ubuntu 16.04 php

apt-get換源

系統設置
->軟件和更新
->下載自
->選擇chine
->mirrors.aliyun.com/ubuntu

選擇國內源後再更新語言庫及其餘更新操做會快更多!html

轉成中文及添加中文輸入法

系統設置
->語言支持
->[新系統會提示語言支持需更新之類的先更新]
->添加或刪除語言
->選擇中國(簡體) or [Chinese Simplified]
->應用到整個系統
->鍵盤輸入法系統選擇fcitx
->重啓完成

命令行

進程java

#表示查看全部進程裏CMD是java的進程信息, -aux 顯示全部狀態, grep 是搜索
ps -aux | grep java

# 殺進程
kill [pid]
killall [name]
## example
killall nginx

# 添加新目錄
mkdir

# 刪除目錄下全部文件
rm -R [dir] 

# 建立文件
touch [filename]

# 當前路徑
pwd

# 使用root權限
sudo

# 切換用戶
su [user]

# 查看用戶組
groups 

# 添加用戶組 及 用戶權限
sudo groupadd -g 315 mysql  
sudo useradd -u 315 -g mysql -d /var/lib/mysql -M mysql

# 下載同名文件
curl -O https://raw.github.com/emmetio/pyv8-binaries/master/pyv8-linux64-p3.zip
# 下載並命名文件
curl -o newname.zip https://raw.github.com/emmetio/pyv8-binaries/master/pyv8-linux64-p3.zip

# 這條命令是將全部.jpg的文件打成一個tar包,而且將其用gzip壓縮,生成一個gzip壓縮過的包,包名爲all.tar.gz 
tar -czf all.tar.gz *.jpg 
 
# 這條命令是將上面產生的包解開。
tar -xzf all.tar.gz

解決運行shell存在\r問題,win下編輯的文檔會包含\r
實際上它安裝了兩個工具:todos(至關於unix2dos),和fromdos(至關於dos2unix)
安裝完便可,如今你已經能夠進行文本格式的轉換了。node

sudo apt-get install tofrodos

安裝proxychains

用於代理,在要使用的命令行前鍵入proxychains便可python

# install 
sudo apt-get proxychains
# use 
proxychains curl http://uxfeel.com

安裝mongo

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
#Ubuntu 16.04
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
sudo apt-get update
sudo apt-get install -y mongodb-org

添加服務
(Ubuntu 16.04-only) Create systemd service file
Create a new file at /lib/systemd/system/mongod.service with the following contents:mysql

[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
Documentation=https://docs.mongodb.org/manual

[Service]
User=mongodb
Group=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf

[Install]
WantedBy=multi-user.target

讓mongo能夠遠程鏈接

查看ip使用狀況linux

$ sudo netstat -nputl

修改 mongodb.confnginx

$ vi /etc/mongodb.conf

將如下配置git

bind_ip: 127.0.0.1
port: 27017

改成github

bind_ip: 0.0.0.0
port: 27017
auth: true

重啓mongo

$ sudo service mongodb restart
$ sudo service mongodb status

MongoDB的啓動和關閉
https://docs.mongodb.com/mast...

添加管理權限

by mongoDB 3.0
添加管理員

$ mongo
> use admin
> db.createUser(
  {
    user: "buru",
    pwd: "12345678",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

查看用戶

> show users

修改服務,添加上--auth參數讓mongo啓動用權限管理

# /lib/systemd/system/mongod.service
ExecStart=/usr/bin/mongod --quiet --auth --config /etc/mongod.conf

重啓mongo

$ sudo service mongodb restart
$ sudo service mongodb status

http://ibruce.info/2015/03/03...

安裝nginx

建立文件/etc/apt/sources.list.d/nginx.list並鍵入

deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx

更新並安裝nginx

sudo apt-get update
sudo apt-get install nginx

若是提示W: GPG error: http://nginx.org/packages/ubuntu xenial Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY $key
須要運行如下代碼($key是錯誤提示中有說起的)

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
sudo apt-get update
sudo apt-get install nginx

nodeJS前面搭建一層nginx的場景和必要性

當80端口已經給nginx佔用,而已服務器存在多個網站和服務時仍是有必要用nginx的

編輯nginx配置

# vi /etc/nginx/nginx.conf

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;


    server {
        listen       80;
        server_name  uxfeel.com www.uxfeel.com;

        location / {
            proxy_pass   http://localhost:8080;
        }
    }

}

查看nginx狀態

$ systemctl status nginx.service

啓動nginx

$ systemctl start nginx.service

反向代理websockets

http {

    // ...省略

    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }

    server {

        listen       3102;  #監聽3102 
        server_name localhost;

        location / {
            proxy_pass http://localhost:3100; #代理3100 

            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }

    // ...省略
}

安裝php

使用ppa增長源:
$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install -y php7.0 php7.0-mysql php7.0-curl php7.0-json php7.0-cgi

而後能夠查看php版本:
php -v

關於php5.4--php5.6版本
$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip

安裝mysql

$ sudo apt-get install mysql-server

當什麼都沒填,包括root密碼設置等,會生成默認用戶及密碼在如下文件

$ cat /etc/mysql/debian.cnf

安裝nvm

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash
# 重開終端
# 查看線上node版本
nvm ls-remote
# 安裝node
nvm install v6.11.0
# 設爲默認
nvm alias default v6.11.0
# 顯示本地版本
nvm ls
# 使用其餘版本,前提記得安裝
nvm install v4.4.4
nvm use v4.4.4

nvm加速

nvm 默認是從 http://nodejs.org/dist/ 下載的, 國外服務器, 必然很慢,

好在 nvm 以及支持從鏡像服務器下載包, 因而咱們能夠方便地從淘寶的 node dist 鏡像下載:

$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 0.12.7
# 因而你就會看到一段很是快速進度條:
######################################################################## 100.0%
Now using node v0.12.7

若是你不想每次都輸入環境變量 NVM_NODEJS_ORG_MIRROR, 那麼我建議你加入到 .bashrc 文件中:

# nvm
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
source ~/git/nvm/nvm.sh

安裝chrome 穩定版

wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
sudo apt-get update
sudo apt-get install google-chrome-stable

linux下tar.gz、tar、bz二、zip等解壓縮、壓縮命令小結
快速搭建 Node.js 開發環境以及加速 npm
Nginx反向代理Websocket
nginx配置location總結及rewrite規則寫法
nginx proxy_pass 後面的url 加與不加/的區別
絕對詳細!Nginx基本配置、性能優化指南
nodejs博客的nginx配置
(轉)Nginx反向代理設置 從80端口轉向其餘端口
Nginx配置upstream實現負載均衡

搭建hexo博客

hexo 服務器
How do I configure pm2 to run hexo?

遭遇的問題's

npm 安裝的全局命令沒法使用問題

緣由就是node的路徑沒有加入到系統變量

//獲得node路徑
$ npm config get prefix
$ vim /etc/profile
//在文檔最後,添加:
export PATH="/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH"
//保存,退出,而後運行:
$ source /etc/profile

http://www.520bu.com/index.ph...

mongod使用service啓動不能的問題

圖片描述
sudo service mongod start不能有效生效,問題多是文件夾/var/log/mongodb/var/lib/mongodb沒設置mongodb:mongodb用戶組權限
設置了估計就能夠

cd /var/log/mongodb
sudo chown -R mongodb:mongodb .
cd /var/lib/mongodb
sudo chown -R mongodb:mongodb .

http://stackoverflow.com/ques...

相關文章
相關標籤/搜索