5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Ubuntu 14.04 LTSのインストールから設定

Last updated at Posted at 2014-12-29

初心者の書く自分用のメモです。

インストール後のssh設定

ssh-keygen -R "サーバーIP"
ssh ユーザー名@サーバーIP

インストール後すぐにアップデートする

最新のアップデートを確認します。参考(アップデートしないとすぐにフリーズする。)

sudo apt-get update

確認した最新のアップデートを適用します。

sudo apt-get -y upgrade

依存関係解決後に使わなくなったパッケージを削除

sudo apt-get -y dist-upgrade

他のパッケージの依存関係を満たすため自動的にインストールされ、不要になったパッケージを削除

sudo apt-get -y autoremove

aptキャッシュを削除

sudo apt-get -y autoclean

apt-get updateが出来ない場合の解決方法

apt-get err [省略] trusty inrelease

自分の場合はただインターネットがつながってなかっただけでした。
参考

初期設定

rootパスワードを設定してrootユーザーに遷移できるようにする

sudo passwd root 

プロキシを介してネットワークに接続

exportしたプロキシの設定をsudoでも引き継ぎたい場合

sudo -E

自分好みの環境をsudo時にも使えるようにする
http://yudoufu.hatenablog.jp/entry/20110326/1301129885

ファイアーウォールの設定

ubuntuの場合はufwじゃなくてiptablesでもオッケー。
後述のnmapをインストールするも使用する。ファイアーウォールはパケットフィルタリング型とプロキシ型が存在する。ufw、Iptablesはパケットフィルタリング型。

ufwの状態を確認
sudo ufw status

sshでサーバーをいじりたい場合はsshを許可する(ufw)

ufw allow ssh

ファイアーウォールを有効化(※エラーがでるがyesを選択)

sudo ufw enable

参考

IPTablesの3つのポリシー

INPUT、OUTPUT、FORWORDをDROP(拒否)かACCEPT(許可)に設定をする。
INPUT:サーバーに入ってくる通信のポリシー
OUTPUT:サーバーから出て行く通信のポリシー
FORWARD:受信したデータを他のサーバーへ転送する際に適用される設定

IPTablesの一覧を確認
sudo iptables -L

sshでサーバーをいじりたい場合はsshを許可する(Iptables)ip1.1.1.1で8080portを許可する場合

iptables -A INPUT -p tcp -m tcp -s 1.1.1.1 --dport 22 -j ACCEPT

portで走ってるプロセスを調べる

sudo lsof -i:80

portで走ってるプロセスを切る

sudo kill `sudo lsof -t -i:9001`
sudo kill $(sudo lsof -t -i:9001)

強制的にプロセスを切る

kill -9 "PID"

ソフトをインストール

gitのインストール

sudo apt-get install git

emacsエディタのインストール

sudo apt-get install emacs

Atom editor のインストール

sudo apt-get install libgnome-keyring-dev
git clone https://github.com/atom/atom
cd atom
script/build
sudo script/grunt install

apacheのインストール

sudo apt-get install apache2

デフォルト設定の確認

cat /etc/hosts

起動する

sudo service apache2 start

停止する

sudo service apache2 stop

Apacheの起動の確認

netstat -na | grep -e "^tcp.*:80.*LISTEN"

nmapをインストールする

sudo apt-get install nmap

nmapでポートの空き/閉じ等を確認できる。

nmap localhost

Nginxをインストールする

sudo apt-get install nginx-extras
sudo apt-get install nginx-doc

nginxの設定ファイル

/etc/nginx/sites-available/default
/etc/nginx/nginx.conf

起動、停止、再起動
sudo service nginx start
sudo service nginx stop
sudo service nginx restart

リースプロキシ
...webブラウザに送る元をリバースプロキシ1個にまとめたりする。
https://tech-sketch.jp/2013/02/nginx-proxy.html

mysql

DB一覧表示

show databases;

使用するDBを選択

use [DB名];

テーブル一覧を表示

show tables;

テーブル要素を表示

show table status\G

select文を見やすくする(qで終了)

pager less -n -i -S

プロセスが動いてるか確認
ps ax | grep mysqld
mysql.server start
mysql -u root

wordpress

sudo chown -R www-data hogehoge

www-dataはユーザー名。nginxのconfに書かれているユーザー名を指定する

rubyのインストール(2014/12/28:ruby1.9.1になってしまう。最新は2.1)

sudo apt-get install ruby

ruby2.0のインストール

sudo apt-get install ruby2.0

さくらVPS関連

windowsからさくらvpsにssh接続(※はじめの接続はメッセージがでるがyesでOk)
 1.puttyをインストール

"[ファイルパス省略]putty.exe" [サーバーのIPアドレス] -l [ユーザー名] -pw [パスワード]

ubuntuからさくらvpsにssh接続(※はじめの接続はメッセージがでるがyesでOk)

ssh [ユーザー名]@[サーバーのIPアドレス]

鍵認証の設定

ローカルで秘密鍵、公開鍵のセットを作る

ssh-keygen -t rsa

出来たもののパーミッションを変更する

chmod 600 ~/.ssh/id_rsa.pub

vps側のユーザーのホームディレクトリに.sshのフォルダーを用意する

mkdir ~/.ssh

ローカルで作った公開鍵をvpsにコピーする

scp .ssh/id_rsa.pub [ユーザー名]@[IPアドレス]:~/.ssh/authorized_keys

出来たもののパーミッションを変更する(※このパーミッションより緩くてもキツくても弾かれるので注意とのこと)

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

ローカルの端末からログインする

ssh -i ~/.ssh/id_rsa [ユーザー名]@[IPアドレス]

基本コマンド

Ubuntuのバージョンを確認するコマンド

cat /etc/lsb-release

アーキテクチャ(OSが32bit, 64bitどちらなのか)を調べるコマンド

arch

ディレクトリを内部のファイルごと削除する(※かなり気をつけて消すこと)

rm -rf [ディレクトリ名]

ワールドカード指定して削除

rm -rf *.txt

隠しファイル (ディレクトリ)も含めた一覧を表示

ls -a

隠しファイル (ディレクトリ)も含めた一覧(詳細情報)を表示

ls -la

scp -rオプション:ディレクトリごとコピー

scp ~/hogehoge [ユーザー名]@[IPアドレス]:hogehoge

ファイルを探す
30分以内に更新されたファイル

find . -type f -mmin -30

3日以内に更新されたファイル

find . -type f -mtime -3

ログファイルをリアルタイムで見る

tail -f -n 20 /var/log/messages

フォントを入れる
/usr/share/fontsに直接コピー
反映

fc-cache -f -v

ファイル数をカウント

ls -1 | wc -l

ファイルを一気に一回層下に移動

mv * ../

ファイルを一気に一回層下に移動(ファイル数が多い場合)

find 検索フォルダ -name "*.png" -exec mv {} 移動先フォルダ \;

ファイルを一気に削除(ファイル数が多い場合)

find . -name "*.png" -print | xargs rm

ファイルの圧縮(zip)

zip -r hoge.zip hoge

ファイルの解凍(zip)

unzip hoge.zip

ファイルの圧縮(bz2)

bzip2 -d hoge.bz2

ファイルの展開(bz2)

tar jxf hoge.tar.bz2

ファイルの解凍(bz2)

bzip2 hoge.txt

ファイルの中身を見る

less ファイル名
G 最終行へ移動

ubuntuバージョン確認

cat /etc/lsb-release

アーキテクチャを確認

arch

sshが自動切断される場合
理由:ルーターを介してアクセスしてる場合はアクセスがないと切断される。
・・解決方法1
・topコマンドなどで接続し続ける
・・解決方法2
・sshの設定をいじる。(設定だけしてまだ試してない)
・サーバー側を設定
/etc/ssh/sshd_config
ファイルに下記設定を追加
ClientAliveInterval 60
ClientAliveCountMax 3
再起動
sudo /etc/init.d/ssh restart
・クライアント側を設定
/etc/ssh/ssh_config
ファイルに下記設定を追加
ClientAliveInterval 60
ClientAliveCountMax 3
切断エラーの例
Connection to 100.100.100.100: Broken pipe

容量の多いものを検索

du -h --max-depth=1 /

ramdiskを構築
メモリをHDとして使用。処理を高速化させる場合の方法。
RAMディスクとは
メインメモリの一部をディスク領域にする。
(1)initrd,(2)容量が可変の/dev/shm,(3)固定容量の/dev/ramdisk

df -h
sudo emacs /etc/fstab
hogehogeフォルダにmountする
/dev/shm /home/ubuntu/hogehoge tmpfs size=60G 0 0

sudo mount -a
あとでumount

device is busyになった場合は-lをつかう。
sudo umount -l /home/ubuntu/hogehoge

メモリを解放(ubuntu)

sudo su
free -h
echo 3 > /proc/sys/vm/drop_caches

メモリ解放(mac)

sudo purge

スワップ解放(mac)
http://d.hatena.ne.jp/kazuhooku/20130207/1360226719

メモリ使用状況詳細

cat /proc/meminfo

フォルダの状況確認

watch -n 1 ls -al

メモリ使用状況のリアルタイム確認

top
dstat

ログインしてるユーザ

who

自然言語関係

mecabを入れる

sudo apt-get install mecab libmecab-dev mecab-ipadic
sudo aptitude install mecab-ipadic-utf8
sudo apt-get install python-mecab

大規模コピー
http://qiita.com/iron-breaker/items/74a2ed1753587476157f

find ~/image -name '*.jpeg' -exec cp {} ~/image2  \;

大規模削除

find ./*.txt -type f | xargs rm -rf

gpu関連

cudaバージョンの確認

nvcc -V

gpuの使用状況

nvidia-smi -l 10 -i 1
nvidia-smi

usbをmount

こちらを参照
http://qiita.com/miyamotok0105/private/2baf80cf1c300503bf5d

デーモンとしてプログラムを実行する

実行するスクリプを準備
/usr/test.sh

chmod 755 test.sh

デーモンとしてシステムに登録
/etc/init.d/ ディレクトリを開き、その中に実行ファイルを実行するシェルスクリプトを作成します

エディタでテキストファイル test を作成します
その中に
./usr/test.sh &

と一行書き込み保存します
このとき最後に & を付け忘れると、プログラムが終了するまでシステムの起動が停止します。

chmod 755 test

▼システムから呼ばれるシンボリックリンクの作成

/etc/rc3.d/ のランレベル3のディレクトリに移動します(1~5まで必要な所に移動してください)

▽その中に上で作成したシェルスクリプトのシンボリックリンクを作成します

▽シンボリックリンクの命名規則
S + 二桁の数字 + シェルスクリプトの名前
(二桁の数字により他のデーモンとの実行順序が制御できます)

▽シンボリックリンクの作成
ln ../init.d/test S10test

■デーモンの手動での起動と終了
▼起動
/etc/rc3.d/ に移動してシンボリックリンクを直接実行
logoutしても生き続ける

./S10test &

スクリプトの場合
perl /usr/script.pl &

▼終了
psコマンドでPIDを調べてkill

エラー

HDのデータが満タン
No space left on device
対応策:何かのデータを消す

注意

1つのフォルダ内の上限サイズが決まっている。越えるとアクセスできない。
http://ja.stackoverflow.com/questions/11794/ubuntu%E3%81%A7%E3%81%AE1%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%82%E3%81%9F%E3%82%8A%E3%81%AE%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E6%95%B0%E4%B8%8A%E9%99%90-%E5%AE%B9%E9%87%8F%E4%B8%8A%E9%99%90%E3%81%AF%E3%81%82%E3%82%8B%E3%81%AE%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B

GUI上で使えるショートカット

全てのウィンドウを最小化する/元に戻す

Ctrl + Super(windowsマーク) + D

ウィンドウを画面左半分に表示する

Ctrl + Super(windowsマーク) + ←

ウィンドウを画面右半分に表示する

Ctrl + Super + →

全てのワークスペースのウィンドウ一覧を表示する(なんかかっこいい)

Super + W

環境変数

特定のpath削除のメソッド追加
http://qiita.com/ironsand/items/10e28d7589298090ec23

path_remove ~/sh

参考URL

http://oxynotes.com/?p=6361
http://7ujm.net/linux/daemon.html

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?