Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Linux関連の最新状況にキャッチアップするための本「入門モダンLinux」

 Linux関連の最新状況にキャッチアップするための本「入門モダンLinux」

以下イベントのプレゼン資料です。
https://forkwell.connpass.com/event/279042/

Satoru Takeuchi
PRO

May 09, 2023
Tweet

More Decks by Satoru Takeuchi

Other Decks in Technology

Transcript

  1. Linux関連の最新状況に
    キャッチアップするための本
    「入門モダンLinux」
    May 9th, 2023
    Forkwell Library #23
    大岩尚宏, 武内覚
    1

    View Slide

  2. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    2

    View Slide

  3. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    3

    View Slide

  4. ● 会社員@サイボウズ
    ○ 分散ストレージCephのクラスタ開発
    ○ CNCF公式プロジェクトRookメンテナ
    ● 個人事業主
    ○ 本や記事の執筆
    ● 趣味
    ○ コーヒー、カメラ、散歩
    4
    sat (twitter: satoru_takeuchi)

    View Slide

  5. 5
    • 翻訳
    • 著書 • 技術監修 • 付録
    自己紹介: 大岩 尚宏
    • 仕事
    以前はサーバ、今は組み込み

    View Slide

  6. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    6

    View Slide

  7. 既存の情報
    7
    高度な内容
    初級者向け
    時を経ても変
    わらないもの
    最新状況
                         Web上の情報
    上級者向けの本
    入門書

    View Slide

  8. 本書の立ち位置
    8
    高度な内容
    初級者向け
    時を経ても変
    わらないもの
    最新状況
                         Web上の情報
    上級者向けの本
    入門書
    入門モダンLinux

    View Slide

  9. 豊富な参考文献、サイトでさらに先への道を示している
    9
    高度な内容
    初級者向け
    時を経ても変
    わらないもの
    最新状況
                         Web上の情報
    上級者向けの本
    入門書
    入門モダンLinux

    View Slide

  10. Webに情報があるが、本の価値とは?
    ● Web
    まずほしい情報を検索。
    Webページの内容が正しいことを確認しなければならない。
    検索してほしい情報だけが見つかる。
    ● 本は購入していただくので、情報の正確性が高い。
    知っておくべき、知ってほしい情報などを載せている。網羅性に優れている。気づき
    がある。
    *1
    *1 注釈
    訳者補
    10

    View Slide

  11. 引用: ガイアの夜明け 『地球の歩き方』バンコク編
    ガイアの夜明け 『地球の歩き方』バンコク編
    https://www.tv-tokyo.co.jp/plus/business/entry/2022/026433.html
    デジタル全盛の今、なぜガイドブックなのか?
    「あるエリアに初めて行く人がインターネット検索だけで情報を集めると、
    100~1000のサイトにアクセスしなければならず、数十時間かかる。
    1冊の本にすべてがまとまっている形態が、現時点では一番効率的」と今井さん。
    11

    View Slide

  12. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    12

    View Slide

  13. 本書のもくじ
    ● 1章 Linuxの入門
    ● 2章 Linuxカーネル
    ● 3章 シェルスクリプト
    ● 4章 アクセス制御
    ● 5章 ファイルシステム
    ● 6章 アプリケーション、パッケージ管理、コンテナ
    ● 7章 ネットワーク
    ● 8章 オブザーバビリティ(可観測性)
    ● 9章 高度なトピック
    13

    View Slide

  14. 2章 Linuxカーネル
    ● 一部で話題のCPUアーキテクチャ、RISC-Vについて触れている
    ○ アーキテクチャのCPUを作るのに使用料がかからない
    ○ 将来post x86, post ARMになるかもしれない
    ● eBPFについて触れている
    ○ ユーザ空間からカーネルを拡張できるしくみ
    ○ はじめはネットワーク向け機能だったが現在では様々な用途に使われている
    14
    カーネル
    eBPFプログラム

    View Slide

  15. 2章 Linuxカーネル
    ● 一部で話題のCPUアーキテクチャ、RISC-Vについて触れている
    ○ アーキテクチャのCPUを作るのに使用料がかからない
    ○ 将来post x86, post ARMになるかもしれない
    ● eBPFについて触れている
    ○ ユーザ空間からカーネルを拡張できるしくみ
    ○ はじめはネットワーク向け機能だったが現在では様々な用途に使われている
    ○ 悪いオタクのオモチャにされやすいことで有名
    15
    カーネル
    eBPFプログラム
    eBPFプログラム eBPFプログラム
    シテ...コロシテ...
    eBPFプログラム eBPFプログラム
    eBPFプログラム
    eBPFプログラム

    View Slide

  16. 3章 シェルとスクリプト
    16
    ● fishシェルというマニアックなシェルについて説明されている
    ○ bashなどとは根本的に使い方が異なる代わりに使いやすさを追求
    ● ターミナルマルチプレクサについて書かれている
    ○ 端末エミュレータを終了させてもセッションを残しておいたり複数のセッションを同時に使えたりする
    ツール
    ○ screenじゃなくてtmuxを使いましょうねというアドバイスがある
    ● 推しツールにRust製のものが多く、愛を感じる

    View Slide

  17. 6章 アプリケーション、パッケージ管理、コンテナ
    ● パッケージ管理
    ○ 既存の本: だいたいdebパッケージとrpmパッケージを紹介
    ○ 本書: flatpak, snap, apkなど珍しいものがたくさん
    ● コンテナ
    ○ docker以外のツールを豊富に紹介 : containerd, podman, buildah, skopeo
    17

    View Slide

  18. 7章 ネットワーク
    ip_local_reserved_ports について書いた後。
    再起動を繰り返すと、たまにネットワーク通信ができないときがある。
    18
    ● ネットワークの基本
    ○ TCP/IPスタック、IPヘッダなどパケットの構造
    ○ DNSについて
    ● 高度なトピック

    View Slide

  19. 9章 高度なトピック
    ● 「エンドユーザは絶対直接触らんだろ」な異様にマニアックなネタがある
    ○ Firecracker: AWS発の仮想化ソフトウェア
    ○ bottlerocket: AWS発のコンテナを動かすための OS
    ● 多分著者がAWSの人なので身近かつ尖ったネタを紹介した
    19

    View Slide

  20. 原著には無いプラスアルファ要素
    ● 随所に訳注、訳者補を挿入
    ● いくつか原著で直されていない誤りを修正している
    20

    View Slide

  21. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    21

    View Slide

  22. 紹介する書籍の種類
    22
    高度な内容
    初級者向け
    時を経ても変
    わらないもの
    最新状況
                         Web上の情報
    上級者向けの本
    入門書
    入門モダンLinux
    1. 本書を読むためのステップアップ
    2. 本書を読んだ後のステップアップ

    View Slide

  23. 本書を読むためのステップアップ
    ● 新しいLinuxの教科書
    ○ https://amzn.to/3S8ZtLM
    ○ Linuxを「使う」ための最低限の知識が得られる
    ● 本気で学ぶ Linux実践入門
    ○ https://amzn.to/3k9LUPC
    ○ Linuxを「管理する」ための最低限の知識が得られる
    23

    View Slide

  24. 本書を読んだ後のステップアップ
    ● スーパーユーザーなら知っておくべきLinuxシステムの仕組み
    ○ https://amzn.to/412RW5f
    ○ Linuxカーネルや基本ツールについて詳しく解説
    ● Linuxのしくみ
    ○ https://amzn.to/3nKXkez
    ○ Linuxカーネルが動作するしくみについて図解
    24

    View Slide

  25. おまけ: 著者がRust好きらしいので
    ● 入門Rust
    ○ https://amzn.to/3piGAvE
    ○ 既存の言語で開発経験が豊富な人向け
    ○ プログラミングを一から学ぶ本「ではない」
    25

    View Slide

  26. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    26

    View Slide

  27. 翻訳しようとしたきっかけ
    ● 元々オライリー編集者と長い付き合い。
    ● 読みやすかった。読んでて楽しかった。
    ● 武内さんにヘルプをお願いした。
    27

    View Slide

  28. 翻訳のヘルプ依頼が来たときの思い
    ● 類書がない面白そうな本
    ● 翻訳やったことないけどなんとかなるやろ
    28

    View Slide

  29. 翻訳のヘルプ依頼が来たときの思い
    ● 類書がない面白そうな本
    ● 翻訳やったことないけどなんとかなるやろ
    ● 最初はなんともならず、すごく苦労した(後述)
    29

    View Slide

  30. 翻訳の工夫点
    ● 意訳に努める
    ○ 「いかにも翻訳」という本にしたくなかった
    ○ 日本語として不自然な表現はバッサリ削る (“journey”という表現とか、ジョークとか )
    ● 専門用語の翻訳に気を付ける
    ○ 既に広く普及している日本語があればそれを使う
    ○ 無ければカタカナそのまま +元のアルファベット表記
    ○ 造語は極力避ける
    30

    View Slide

  31. 苦労点
    ● 著者校を続けるうちに「どこが完成か」がわからなくなってくる
    ○ 内容を全部理解しているので完璧に見える
    ○ 一週間後に読み直すと修正点が山盛り見える
    ● 実例
    ○ 翻訳からあまり間を空けずにやった 1校ではそれほど直さなかった
    ○ そのあとかなり間を空けてから見た 2校では大量に直した
    31

    View Slide

  32. 読者の声: ポジティブ編
    ● 最新状況が概観できて参考文献、サイトも豊富
    ● Linuxを長年使ってきたが、知らないことがたくさん書いてあってキャッチアップでき

    ● 本文でわかりにくかったところが訳者補によって補われていた
    ● 分厚くないので簡単に読める
    ● 翻訳がわかりやすい
    32

    View Slide

  33. 読者の声: ネガティブ編
    ● たまに翻訳の品質が中学生レベル
    ● 物理的に薄く、内容も薄い
    33

    View Slide

  34. 訂正
    ● 40ページの訳者補に間違い
    ripgrep(rg)を実行するのにRustのインストールは不要です。
    ● 199ページの図9-1に間違い
    誤 「可視化サポートのあるCPU」→正「仮想化サポートのあるCPU」
    お詫びして訂正するとともに、指摘してくださった方に感謝いたします。
    34

    View Slide

  35. Agenda
    ● 自己紹介
    ● どんな本なのか
    ● 見どころ
    ● 本書の前後に読むとよい本
    ● こぼれ話
    ● まとめ
    35

    View Slide

  36. まとめ
    ● 「入門モダンLinux」はLinux関連の最新状況の概要を手短に学べる本
    ● 原書を翻訳するだけでなく豊富な訳者補が付いている
    ● ぜひお買い求めください
    ○ https://www.oreilly.co.jp/books/9784814400218/
    ○ https://www.amazon.co.jp/dp/4814400217/
    ○ https://shop.ohmsha.co.jp/shopdetail/000000007836/ct380/page1/order/
    36

    View Slide

  37. おわり
    37
    わたしも一冊買おうかとおもいます

    View Slide