30代未経験がTECH CAMPでプログラミングを学習し、エンジニア就職しました。スキルアップを目指し、日々の勉強内容などをアウトプットしていきます。これからテックキャンプの受講を考えている方やエンジニア転職を考えている方の参考になれば幸いです。
前:LPIC1取得まで②Linuxのオススメ勉強法【結論:ネットを活用】
次:LPIC1取得まで④『あずき本』を1周してみての気付き
勉強内容
Linuxの勉強をしています。目標はLPIC1の取得!
★ファイル操作
・ログイン・ログアウト
★rootユーザーについて
・シャットダウンと再起動
・ユーザー確認
・ユーザーの作成・追加
・グループについて
★パーミッション
★の項目を重点的にアウトプットします。
日常のパソコン操作では触れにくいことなので。
ファイル操作
ファイル操作に限らずですが、Linux学習する際にはコマンドによる操作を覚えることになります。
コマンドによる操作?
コマンドプロンプト(Windows)や
ターミナル(Mac)を使った操作のようなものです。
プログラミングをかじった方なら目にしたことがあるかもしれませんが、Linuxは基本的に
CUI(Character-based User Interface)
という、文字ばっかりの画面で操作していくことになります。
GUI(Graphical User Interface)
はアイコンや背景画像、マウス操作ができるなど、誰にとっても使いやすくされグラフィカルな画面です。普段よく見るパソコンの画面はこちらですね。LinuxはGUIでの操作もできますが、参考書などはCUIでの操作が書かれています。
サーバーとか基本的に人が使わないような機械はCUIで良さそうですね。画像とかがない分、稼働速度が速まりそうですし。
慣れないうちは大変でしょうが、CUIでLinuxを操作していくことになります。
ファイルの操作
Linux学習の基礎として、ファイル操作が挙げられます。
・ファイルの作成
・ファイル名の確認
・ファイル名の変更
・ファイルのコピー
・ファイルの移動
・ファイルの削除
などです。
ファイル操作って左クリックで一発でしょ。
ファイル名の確認なんて見るだけじゃん😏
と言いたいところですが、CUIだとこれらを全てコマンドで行うことになります。
※ディレクトリはフォルダのことです。
・ファイルの作成 → touch ファイル名
・ファイル名の確認 → ls
・ファイル名の変更 → mv 旧ファイル名 新ファイル名
・ファイルのコピー → cp ファイル名 移動先ディレクトリ名
・ファイルの移動 → mv ファイル名 移動先ディレクトリ名
・ファイルの削除 → rm ファイル名
GUIだと簡単にできていたファイル操作も、CUIだとコマンドを覚えるところからスタートです。
最初のうちは面倒かも入れませんが、きっと慣れの問題だと思います。
この辺は『習うより慣れろ』なのかも知れません。
rootユーザーについて
root(ルート)ユーザー
全ての権限を持つユーザーで、そのパソコンの唯一神です。
つまり…どういうことだってばよ😅
まぁ、ざっくりマンションでたとえると
rootユーザー=マンションの大家さん
です。
文章を2つ用意しました。基本は同じですが、赤字の部分だけ入れ替えてあります。
マンションの中には複数の住人がいて、それぞれが違うカギを持ち、様々な内装や道具を持っています。
大家さんは入居者を増やすことも外装を変えることもできます。(その気になれば)住人の鍵を変えることも部屋に入ることもできます。
パソコンの中には複数のユーザーがいて、それぞれが違うパスワードを持ち、様々な設定やデータを持っています。
rootユーザーはユーザーを増やすことも環境設定を変えることもできます。(その気になれば)ユーザーのパスワードを変えることもデータを閲覧することもできます。
突っ込みどころがありますが、あくまでたとえです。
rootユーザーとはそのぐらいなんでもできる権限を持ったユーザーです。
もちろんrootユーザーは1台のパソコンに1人です。
rubyなどのプログラミングを学習する際、たまに
$ sudo
と入力することがあります。
「スドー」って何だろ?
と思っていたんですが、これは
super user(rootユーザーのこと)が
do(実行しますよ)
という意味だったんです。
その時だけrootユーザーの権限をお借りするなんてこともできるわけです。一時的な大家代行という感じです。
もちろんrootユーザーのパスワードがないとこのsudoは発動できません。
sudoを試そうとすると、次のような注意が表示されます。
映画『スパイダーマン』でよく使われる言葉ですが、
With great power comes great responsibility.
「大いなる力には大いなる責任が伴う。」
rootユーザーの権限活用は丁寧かつ慎重にしなくてはなりません。
パーミッション
これまた聞きなれない言葉ですが、
パーミッション=アクセス権
です。
これは図書館の利用が似ています。図書館では人によって入れる場所やできることが変わりますよね。
・市外の人→閲覧はOK。借りるのはダメ。
・市内の人→閲覧はOK。借りるのもOK。
・職員→閲覧も借りるのもOK。それどころか裏の書庫にも入れるし、本棚の位置まで変えられちゃう。
こんな感じで
・誰が
・何をしていいのか
を表しているのがパーミッションです。
実際に見てみましょう。
次の画像はtmpディレクトリの詳細表示を行っています。
drwxrwxrwx
とアルファベットが並んでいます。これがパーミッションです。
意味が解りません😓
はい。
どういう書式かを知らないと意味の分からない文字列です。
その読み方について。
4つのブロックに分けます。
d rwx rwx rwx
① ② ③ ④
①データの種類。dはディレクトリ。
②所有者のアクセス権
③グループのアクセス権
④その他ユーザーのアクセス権
w → 読み取り権
r → 書き込み権
x → 実行権
つまり、
d rwx rwx rwx は
・データの種類はディレクトリ
・所有者は読み取り、書き込み、実行ができる。
・グループのユーザーは読み取り、書き込み、実行ができる。
・その他ユーザーは読み取り、書き込み、実行ができる。
というデータだとわかります。
もちろん、このパーミッションは変更することができます。
次の画像はパーミッションの変更をしたものです。
‐rw‐rw‐r‐‐
が
‐rwxrwxrwx
と変化しています。
こちらを読み解いていきましょう。
‐ rw‐ rw‐ r‐‐
① ② ③ ④
・データの種類は「‐」これは通常のファイル
・所有者は読み取り、書き込みができる。実行はできない。
・グループのユーザーは読み取り、書き込みができる。実行はできない。
・その他ユーザーは読み取りだけできる。
というデータが
‐ rwx rwx rwx
① ② ③ ④
・通常のファイルで
・全てのユーザーが
・読み取り、書き込み、実行ができる。
データになったというです。
と、LinuxのCUIではこんな感じでコマンドで入力し、文字列ですべてが表されるわけです。
まだまだ慣れないLinuxのCUIですが、しばらくはLPIC1の取得に向けてLinuxの勉強がんばっていきます❕
前:LPIC1取得まで②Linuxのオススメ勉強法【結論:ネットを活用】
次:LPIC1取得まで④『あずき本』を1周してみての気付き
一見複雑で面倒な感じのするコマンド。
慣れてきたら英語の筆記体みたいにスラスラと使いこなせるんだと思っています😃
(ちなみに英語の成績はずっと2。筆記体はいまだに書けません🙃)