UNIXとLinuxの違い(実はMacOSもUnix、AndoridはLinux)
https://eng-entrance.com/unix_linux
パス
パスを用いることでコマンド実行時のファイルやディレクトリの位置を指定できる。
$ cat /usr/local/src/test.txt
# 絶対パスの指定例。
# 絶対的な位置というのはルートディレクトリから見たときの位置。絶対パスを指定する際は/からパスを記載する。
ディレクトリー
相対パスの指定例
1.ルートディレクトリ(ディレクトリの中でも頂点にあたるディレクトリを【/】で表す)
ex) cd /
ex) cd /user ルートディレクトリ配下にあるuserディレクトリに移動
2.カレントディレクトリ(現在作業を行なっているディレクトリを【.】で表す)
ex) cd ./src
3.親ディレクトリ(カレントディレクトリの1つ上の階層のディレクトリを【..】で表す)
ex) cd ../www
4.ホームディレクトリ(Linuxにログインした際のディレクトリを【~】で表す)
ex) cd ~ (cdとだけ入力してコマンドを実行しても同じ結果)
権限
Linuxでは全ての情報をファイルとして格納し、様々な制御を行う。
※ファイルは誰かの所有物として扱う。
Linuxは複数のユーザーが利用できる前提となっているため、で、ファイルへのアクセス権限を管理する必要がある。
$ ls -l
drwxr-xr-x 25 suzuki staff 800 4 18 12:47 sample_app
|rwxr-xr-xは以下を許可している|
userに読み出し/書き出し/実行
groupに読み出し/実行
otherに読み出し/実行
あとに続く内容は、リンク数、ユーザー名、グループ名、ファイルサイズ(byte数)、更新日時、ファイル名を表している。
|実行ファイルの種類を示す記号|
「-」 →ノーマルファイル
「d」 →ディレクトリ (上記実行例はこれに当たる)
「l」→シンボリックリンク
- chmod(チェンジモード):ファイルのアクセス権を変更するコマンド
-rw-r--r-- 1 app app 0 3月 3 20:24 test.txt
# 600の説明は下記の対象表を見ると分かりやすい
chmod 600 test.txt
-rw------- 1 app app 0 3月 3 20:24 test.txt
# chmod 変更対象 変更方法 変更内容 対象ファイル
# このコマンドではユーザーに実行権限を与えている
$ chmod u+x test.txt
- chown(チェンジオーナー):所有者を変更するコマンド
# スーパーユーザー権限が必要なため、sudoコマンドで実行する
$ sudo chown sato test.txt