Linuxを勉強し始めたメモ

Linuxコマンド集

再帰処理とは
実際の動作は、単にその下(下は葉側です 根(ルート,/)側でない方)のディレクトリ全部を処理対象とするもの。

ディレクトリ記号
/	ルート・ディレクトリ
.	現在のディレクトリ
..	親ディレクトリ
~/	ホーム・ディレクトリ

su
ユーザーを切り替える。
-をつけると、ログイン・シェルを使用しての切り替えになる。

passwd
ユーザーのパスワードを設定、変更する。

ユーザー一覧が記載されているファイル
/etc/passwd
グループなら
/etc/group
詳しくは
http://qiita.com/pugiemonn/items/aca73990736f26c9cded

useradd
ユーザー追加
http://www.server-memo.net/centos-settings/system/useradd.html#useradd

mkdir 
ディレクトリ作成

ファイルを消す
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231024/

ディレクトリを消す
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231034/

ディレクトリごと移動
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231039/

ファイルを移動する
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231026/

ファイル、ディレクトリの権限確認方法
http://qiita.com/masashi-t-h/items/5f4c4fa768642aad9e06


viエディタの使い方

escキーで切り替える。
編集モード
コマンドモード


終了キー	
：q	セーブせずに終了
：q!	変更した行もセーブせずに終了
：w	セーブするが終了しない。
：wq	セーブして終了

変更キー
x	１文字削除
dd	１行削除（カット）
cw(Change Word)	１語変更
c$	カーソル位置から行末まで変更
dw(Delete Word)	１語削除
d$	カーソル位置から行末まで削除

カット／コピー＆ペースト	
yy	１行コピー
dd	１行カット
p	ペースト（張り付け）

nanoエディタ使用時注意
commandキーでなくshiftキーの上のcontrolキーを押下する。

Windowsでvirtualboxからlinuxを起動できない問題については以下のBIOS設定を変更すれば何とかなるかも。
http://did2memo.net/2015/07/10/virtualbox-64-bit-os/
おっと、VTの機能が物理マシンにないから32bitでないと無理かな？
BIOSメニューにVTと関連性のある項目がなかった・・・

検索
以下の正規表現という語句は、検索したい文字という意味。
次の候補というのは、検索結果を切り替えることです。
/正規表現	前方検索
?正規表現	後方検索
n	次の候補

カット／コピー＆ペースト	yy	１行コピー
dd	１行カット
p	ペースト（張り付け）

その他	.(ドット)	直前の変更操作の繰り返し
u	直前の変更操作の取り消し（何回でも戻れる）

置換
:s/[old]/[new]	[old]を[new]に置換する 

現在行の最初の old を new に置換する :s/old/new 
現在行の全ての old を new に置換する :s/old/new/g 
ファイルの中の全ての検索語句を置換する: :%s/old/new/g 

カーソル移動(コマンドモード)

h左
l右
k上
j下

障害対応でよくつかうコマンド覚書(逐次更新)
http://qiita.com/ikaro1192/items/282e4d4d0918401f7cbe
以下の方が基本的かな？
https://www.skyarch.net/blog/?p=1238
(内容)
▼コマンド一覧

「hostname」

サーバのホスト名を確認するために使うコマンドです。

そもそも障害が起こっているサーバと違うサーバを開いていたら大惨事になる可能性があるので…

「hostname -f」とオプションをつけてFQDNを確認します。

「date」

日付を出力するコマンドです！サーバにログインした時刻や対応をした時刻をログとして記録するために

必須のコマンドです！

「w」

現在ログインしているユーザーを確認するコマンドです！

それ以外にも、起動時間やロードアベレージを表示してくれるので、

再起動がかかっていないかやサーバの負荷状況はどうかということが簡単にわかります。


「last」

過去にログインしていたユーザー、今ログインしているユーザーを表示してくれます！

障害が起こった時間に誰かログインをしているか確認することによって、

作業影響なのか障害なのかを切り分けるのに使用します。

「last -20」と実行すると過去20ユーザー分がでてくるので分かりやすいです

「ps」

プロセスの起動状況を確認するコマンドです！

どのプロセスがどれくらい起動しているかを確認するために障害対応中にも

多用します。サービスの再起動の前後にpsを実行して本当に再起動でプロセスが

起動したかどうかを確認するのに必ず使います！

詳細をツリー上に出力するオプションをつけた方が分かりやすいので、

「ps auxfwww」と実行することや「ps auxfwww | grep httpd」のように

特定のプロセスをパイプとgrepを使って検索することも多いです。

「netstat」

サーバとクライアント間の通信状況を調べる際に使うコマンドです！

対象のサーバに対しての通信状況を確認することや、開いているポートの確認を

するために使う事が多いです。使う場面としてはDDos攻撃などを判断するために

「netstat -an」と実行して特定のIPから特定のポートに対しての通信が貼られて

いないかどうかや、「netstat -ln」で接続待ち状態のソケットを表示させたりする

場面がよくあります。

「vmstat」

メモリーやCPUの負荷率や使用状況を表示するコマンドです！

メモリを使いきってswap領域を使っていないかやCPUの使用率が高くないかなど

をリソースの状況を確認するために使用します。

「dmesg」

カーネルのメッセージを出力するコマンドです！

カーネルから何かエラーが出力されていないかどうかというかを確認します！

ここにエラーがでていると深刻なエラーである可能性が高いです。

「top」

CPUやメモリなどのリソース状況をリアルタイムに表示するコマンドです！

システム上で最もリソースを使用している順にプロセスを表示してくれるので

どのプロセスがリソースを占有しているかということが判断できます！

読むべき記事一覧
シスログの仕組み
http://www.itmedia.co.jp/enterprise/0309/08/epn18.html

システムログについて
http://eno0514.hatenadiary.jp/entry/20150613/1434133184

ログをファイルに保存する
http://webkaru.net/linux/redirect-output-to-file/
http://shellscript.sunone.me/input_output.html

コマンドについて

コマンドの実態はプログラムである。
我々はシェルを通してコマンドを探して実行し、その結果を得る。

内部コマンドと外部コマンド

内部コマンド→シェルのビルトインコマンド
外部コマンド→別個の独立している、つまりシェルが異なっても動作する。
つまりPOSIX互換でなくても動作する。
シェルが複数一つのOSで動作することってあるの？と言うよりインストールできるんか。

コマンドには引数やオプションを指定することが可能

シェルの機能
入力補完機能
コマンド履歴保存機能

lessコマンド

シェルの状態や設定値は環境変数に保存される。
＜＜してもファイルの末尾に追加できない

virtualbox
スナップショットの取り方

コピー

仮想マシンの設定画面を開くショートカットキー
command + , or command + G

guest addtion をインストールするとファイル共有やマウス統合が可能となる。
手順を以下を参照
http://qiita.com/100/items/80a899fbaeb1e82b3f67#-マウス統合などの有効化

what is kernel-devel
The function of the kernel-devel package on Fedora is to provide the headers needed to compile modules for the kernel.
If you do not need to compile a kernel module, you do not need this package.

The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project supporting various programming languages.

日本語入力のためのrpmインストール
http://note.kurodigi.com/centos7-ibusmozc/

IPアドレスについての基礎知識
http://qiita.com/mogulla3/items/efb4c9328d82d24d98e6

xamppでのPHPプログラム起動方法は、以下のURLをブラウザで実行すると起動できる。
http://localhost/TestProject/simple-bbs.php


サーバー証明書の構成要素
CSR・・・公開鍵の情報やディスティングイッシュネーム

ロードバランサ

パーシステンス(セッション接続)
同じクライアントのリクエストを継続的に同じサーバーに割り当てる機能

least connection(最小接続)
現状のコネクション数が最も少ないサーバーへせ