-- Views
April 20, 26
スライド概要
はじめまして、ALJ Education Plus 株式会社のyukikoと申します。 IT教育支援や、DX推進が可能です。 ◆ スキル LPIC レベル2 AI / Python Splunk BI(データ可視化・分析) ◆ その他 新卒・未経験の学生向けに、エンジニア転職を応援する資料を趣味で作成しています。 もしよろしければご活用ください。 ◆IT研修講師をお探しの方は [email protected] にお気軽にお問い合わせください。 ※ALJ Education Plus 株式会社を通して、ご支援させていただきます。 ◆Zenn https://zenn.dev/yukiko_sapporo/articles/46c13e9f98b110
LPIC 101-4 レッスン ファイルのリンク 完全マスター 〜 ハードリンク & シンボリックリンクを 30 分で理解しよう!編〜 対象 新卒・未経験・文系さん OK 時間 25 分講義 + 5 分口頭クイズ 講師 Yukiko / ALJ Education Plus
AGENDA / 今日のメニュー 25 分の道のり、これで迷わない 1 なぜリンクを学ぶの? 2分 2 リンクとは何か 〜用語整理〜 3分 3 ハードリンク 〜本名が 2 つ〜 7分 4 シンボリックリンク 〜矢印看板〜 7分 5 違いを並べて比べる 3分 6 覚え方&ひっかけ注意 3分 口頭クイズ(本試験 2 問型) 5分 ファイルのリンク完全マスター|LPIC 101-4 2 / 19
01 | なぜリンクを学ぶ? こんな悩み、ありませんか? 大事なファイルに、別の場所から サクッと アクセスし たい そんなときの 救世主が でもコピーすると 容量が倍 …管理も面倒… リンク 更新したら"全部の複製"を直すなんてムリ! ( Link ) ポイント:Linux のリンクは Windows の「ショートカット」の親戚。でも中身はもっと奥深い! ファイルのリンク完全マスター|LPIC 101-4 3 / 19
02 | リンクとは? ① この用語 リンク Link / 異なる名前で同じファイルにアクセスする仕組み 複数の名前 コピー不要 2 種類ある 1 つのファイルに 複数の"名前"が つけられる 実体は 1 つだから ディスク容量を 節約できる ハードリンク と シンボリックリンク (ln コマンドで作る) ファイルのリンク完全マスター|LPIC 101-4 4 / 19
02 | リンクとは? ② 簡単に書くよ(例え話) リンクは「ファイルのあだ名」 例え話:うさうさラーメン本店は、近所の人から「駅前のあのラーメン屋」とも呼ばれてる。 → 看板 A "file.txt" うさうさラーメン ( 実体 / ファイル ) ← 看板 B ( リンク ) "link.txt" どちらの看板から入っても、同じラーメン店に辿り着く ファイルのリンク完全マスター|LPIC 101-4 5 / 19
02 | リンクとは? ③ 詳しく書くよ(原理原則) 本当の「ファイル」はどこにある? ファイル名 file.txt (ただの付箋 ) 指し示す → ディスク上のデータ "hogehoge" (本当の実体) 大切な発想 ファイル名と 実体は別モノ! 名前を増やすのが リンクなの。 原理原則 ✓ ファイル名は「データへの付箋」。付箋は何枚でも貼れる。 ✓ リンクを張る=付箋を増やす行為。データ自体は 1 つだけ。 ✓ 付箋の "貼り方" の違いで、ハードリンクとシンボリックリンクに分かれる。 ファイルのリンク完全マスター|LPIC 101-4 6 / 19
一言でまとめるよ! リンクとは ファイルに「あだ名」を つけられる仕組み 実体は 1 つ、呼び方は複数 OK 7 / 19
03 | リンクは 2 種類 リンクには「2 つの流派」がある ハードリンク シンボリックリンク Hard Link Symbolic Link / Symlink $ ln 元 新 • オプション なし • 実データを 直接 指す • 同じ人の "2 つ目の本名" イメージ ファイルのリンク完全マスター|LPIC 101-4 $ ln -s 元 新 • -s オプションが必要 ★ • 元ファイルを 矢印で 指す • "道案内の看板" イメージ 8 / 19
04 | ハードリンク ① この用語 + ② 簡単に書くよ ハードリンク = 2 つ目の"本名" 例え話 芸能人の 「本名」と「2 つ目の本名」 どちらも 戸籍に直結 した正式な名前。 本名 A を消しても、本名 B で ちゃんと本人にたどり着ける! → 実データと"対等な立場で直接"結ばれている ファイルのリンク完全マスター|LPIC 101-4 用語の中身 ハードリンク (Hard Link) とは 同じファイルに 複数の名前 を つけられるリンクの一種。 作成コマンド: $ ln file.txt hardlink.txt 9 / 19
04 | ハードリンク ③ 詳しく書くよ(実演) ターミナルで手を動かそう! bash 仕組み図 # ① 元ファイルを作る $ echo hogehoge > file.txt file.txt # ② ハードリンクを作る $ ln file.txt hardlink.txt データ hogehoge # ③ 中身を確認 $ cat hardlink.txt hogehoge hardlink.txt # ④ リンク解除 $ unlink hardlink.txt ファイルのリンク完全マスター|LPIC 101-4 どちらも直接参照! 10 / 19
ハードリンク 一言まとめ オプション なし! $ ln file.txt hardlink.txt 直接データを指す「2 つ目の本名」 11 / 19
05 | シンボリックリンク ① この用語 + ② 簡単に書くよ シンボリックリンク = 矢印看板 例え話 引越しのときの 「転送届」 新住所の看板 → 旧住所 → 本人 手紙は一度 "中継" されてから本人へ。 用語の中身 シンボリックリンク (Symlink) とは 元ファイルを 経由して 参照する リンクの一種。 作成コマンド(-s が必須!): 元がいなくなると 迷子 になる (これを「リンク切れ」と呼ぶ) ファイルのリンク完全マスター|LPIC 101-4 $ ln -s file.txt synlink.txt 12 / 19
05 | シンボリックリンク ③ 詳しく書くよ(実演) "-s" をつけて実演 bash 仕組み図(中継あり) # ① 元ファイルを作る $ echo hogehoge > file.txt synlink.txt file.txt (看板) (本体) # ② シンボリックリンク作成 $ ln -s file.txt synlink.txt # ③ 中身確認 $ cat synlink.txt hogehoge # ④ リンクの様子を見る $ ls -la synlink.txt (データ) 注意:リンク切れ file.txt を消すと、synlink.txt は 迷子に!"道案内の矢印の先が無い"状態。 ハードリンクにはない"弱点"なの。 synlink.txt -> file.txt ファイルのリンク完全マスター|LPIC 101-4 13 / 19
シンボリックリンク 一言まとめ オプション -s あり! $ ln -s file.txt synlink.txt 元ファイルを指す「矢印看板」 14 / 19
06 | 比較 / 違いを並べる ハード vs シンボリック、徹底比較 項目 ハードリンク シンボリックリンク 作成コマンド ln file.txt link.txt ln -s file.txt link.txt オプション なし -s(必須) 参照の仕方 データを 直接 指す 元ファイルを 経由 して指す 例え 2 つ目の本名 引越しの転送届 / 道案内看板 元ファイル削除時 リンク側で 読める リンク切れで 読めない 違いの核心は「-s があるか」「元を消したとき生き残るか」の 2 点だけ! ファイルのリンク完全マスター|LPIC 101-4 15 / 19
07 | 覚え方&ひっかけ注意 試験で絶対落とさない「合言葉」 合言葉 3 つ ① エス( -s )は Symbolic(シンボリック) ひっかけ注意! 引数を逆にする 選択肢がよく出る! -s を見たら必ずシンボリック! ln -s ② オプション無しは ハード(硬く直結) file.txt file.link 元(file.txt) → 新(file.link) の順 直接 だから Hard な結びつき ③ 引数の順番は「元 → 新」 ( from → to ) cp や mv と同じ並び順 ファイルのリンク完全マスター|LPIC 101-4 ln -s file.link file.txt 順番が逆! ひっかけの代表選手 "新しい方が右" と覚えよう 16 / 19
口頭クイズ / Q1 QUIZ 1 / 2 file.txt にシンボリックリンクを作るには? file.txt にシンボリックリンク file.link を作りたい。正しいコマンドはどれ? A ln C ln -s file.txt file.link file.txt file.link ヒント:「シンボリック」だから…? ファイルのリンク完全マスター|LPIC 101-4 B ln D ln -s file.link file.txt file.link file.txt そして引数の順番は「元 → 新」 17 / 19
口頭クイズ / Q2 QUIZ 2 / 2 file.txt にハードリンクを作るには? file.txt にハードリンク file.link を作りたい。空欄に入るコマンドは? ? file.txt file.link 声に出して答えてみよう → 「空欄には ◯◯ が入る!」 ヒント:ハードリンクは オプションなし!シンプルにあの 2 文字 ファイルのリンク完全マスター|LPIC 101-4 18 / 19
今日のゴール達成! これだけ覚えて帰ろう リンク = ファイルのあだ名 ハードリンク = ln 実体 1 つ、名前は複数 OK オプション無し、直接つながる本名 シンボリックリンク = ln -s 引数は「元 → 新」 -s 付きの矢印看板。元が消えると切れる 新しい方は常に右側! お疲れ様でした 19 / 19