はじめに
Linuxの知識が乏しかったので自分用にまとめました。後半でパーミッション(権限)に関して詳しく書いています。
Linuxとは
コンピューターを動かすのに必要なソフトウェア(OS)。Linus Torvalds氏によって開発されたPC-UNIXの一種。Linux自体はオープンソースだが、実際は企業や団体が独自のツールやサポートなどのサービスを付け加えて、パッケージを作っている。これをディストリビューション(配布形態)という。有名なDebian系のUbuntu、RedHat系のCentOSなどがある。
参考:https://eng-entrance.com/unix_linux
Linuxの主なコマンド
リダイレクション
標準入出力の入出力先を変更する機能
コマンド > sample.txt
>・・・ 上書き保存
>>・・・ 追加保存
パイプ
複数のコマンドを組み合わせる機能。コマンドとコマンドをパイプ|で繋ぐ。
入力
ls / | grep sr
grep srは引き渡された内容の中からsrという文字を含むディレクトリを検索する。
出力
srv
usr
エイリアス
//エイリアス作成
alias <エイリアス名> = '<実際のコマンド>'
alias la ='ls -a'   //例
//エイリアス削除
unalias la          //上記の例の場合
リンクを作成
lnコマンド(Link)コマンドは、ファイルやディレクトリに対するリンク(リンクファイル)を作る。リンクにはシンボリックリンクとハードリンクの2種類がある。
ln -s /home/shiori/sample.txt sample
-s ・・・シンボリックリンク
なし ・・・ハードリンク
シンボリックリンク → ファイルへの参照
・リンクを削除しても元のファイルには影響がない
・本体を削除するとリンクが切れる
ハードリンク → ファイルの実態への参照
・通常のファイルの実態とその名前が1:1の関係
・ハードリンクを作ると1つのファイルを2つの名前で参照できる
コマンドの種類を調べる
type <コマンド名>
cdコマンドの場合
[○○○○○@localhost ~]$type cd
cdはシェル組み込み関数です
touchコマンドの場合
[○○○○○@localhost ~]$type touch
touchはハッシュされています
aliasで指定していた場合
[○○○○○@localhost ~]$type la
la は 'ls -a'のエイリアスです
パーミッション(権限)
ファイルやディレクトリに対してユーザーやグループが持つ権利のこと。保護モード、許可属性、アクセス権限という。パーミッションには読み込み、書き込み、実行3つの属性がある。それぞれに可か不可を設定する。(ディレクトリの移動や検索なども含む)
入力
[○○○○○@localhost ~]$ls -l
出力結果の詳細(ファイルの種類とパーミッション)

左端のブロックの
・最初の1文字がファイル種類
・残りの9文字がパーミッション
・数字がハードリンクの数
を示している。
青枠部分の先頭行を例にとるとrwxrwxr-xは更に3文字づつ分けられ、
・1~3文字目までのrwxはUserの設定
・4~6文字目までのrwxはGroupの設定
・7~9文字目までのr-xはOtherの設定
を示している。この場合、「UserとGroupは読み込み権限・書き込み権限・実行権限があり、Otherは読み込み権限と実行権限はあるが読み込み権限がない」。各記号の意味を下記に示す。
「ファイルの種類」の意味
| 種類 | 意味 | 
|---|---|
| - | 通常のファイル | 
| d | ディレクトリ | 
| l | シンボリックリンク | 
| c | キャラクタ型デバイスファイル* | 
| d | ブロック型デバイスファイル* | 
*周辺機器にアクセスするためのファイル。データの使い方で2種類に分かれる。
「パーミッション」の意味
| パーミッション | 意味 | 
|---|---|
| r | 読み込み許可 (Readable)  | 
| w | 書き込み許可 (Writable)  | 
| x | 実行許可 (eXecutable)  | 
| - | 不許可 | 
パーミッションの設定を変更
chmod <ユーザーカテゴリ> '+'or'-' <パーミッションカテゴリ> <ファイル名>
chmod u+r sample.txt //例
数値による設定
パーミッションは数値で設定することも可能で、次の表のように数値が決められている。
| パーミッション | 数値 | 
|---|---|
| r (読み込み許可) | 4 | 
| w (書き込み許可) | 2 | 
| x (実行許可) | 1 | 
| - (不許可) | 0 | 
使用例:UserとGroupは全ての権限をもつが、Otherは書き込み権限のみ持たない場合

現在稼働中のプロセスをID番号付きで一覧表示
入力
ps
出力

・PID(プロセスID) ー プロセス固有の番号
・TTY ー 使用している端末の番号
・TIME ー CPUの消費時間
・CMD ー コマンド名
プロセスの終了
kill <プロセスID>
最後に
次回はもう少し深掘りします。
(もしこの記事に誤りがありましたらご教授いただけると幸いです。)


