入門 モダンLinux ―オンプレミスからクラウドまで、幅広い知識を会得する

Book description

Linuxはサーバ、組み込み機器、スーパーコンピュータなどにおいて存在感を示してきました。近年では、オンプレミスのシステムだけではなく、クラウドサービスでも広く使われています。本書は、前半でLinuxを使いこなす上で必要な基本知識を、後半で最新情報をまとめています。Linuxの知識を体系的に整理したい、最新動向が知りたい、運用を改善したい、効率的に開発を行いたい、といった要望をかなえる内容となっています。時代の変化に柔軟に対応できるLinux技術者を目指すなら必読の一冊です。

Table of contents

  1. 表紙
  2. 大扉
  3. 原書大扉
  4. クレジット
  5. 訳者まえがき
    1. 日本語版の特徴
    2. 謝辞
  6. はじめに
    1. 対象読者
    2. 本書の使い方
    3. 本書の表記法
    4. サンプルコードの使用
    5. オライリー学習プラットフォーム
    6. 連絡先
    7. 謝辞
  7. 1章 Linuxの入門
    1. 1.1 モダンな環境とは何か?
    2. 1.2 これまでのLinuxの歴史
    3. 1.3 なぜオペレーティングシステムなのか?
    4. 1.4 Linuxディストリビューション
    5. 1.5 リソースの可視性
      1. $$とは?
    6. 1.6 Linuxの全体像
      1. POSIX
    7. 1.7 まとめ
  8. 2章 Linuxカーネル
    1. 2.1 Linuxアーキテクチャ
    2. 2.2 CPUアーキテクチャ
      1. BIOSとUEFI
      2. 2.2.1 x86アーキテクチャ
      3. 2.2.2 ARMアーキテクチャ
      4. 2.2.3 RISC-Vアーキテクチャ
    3. 2.3 カーネルコンポーネント
      1. 2.3.1 プロセス管理
      2. 2.3.2 メモリ管理
      3. 2.3.3 ネットワーク
      4. 2.3.4 ファイルシステム
      5. 2.3.5 デバイスドライバ
      6. 2.3.6 システムコール
    4. 2.4 カーネルの拡張
      1. 2.4.1 モジュール
      2. 2.4.2 モダンなカーネル拡張:eBPF
    5. 2.5 まとめ
  9. 3章 シェルとスクリプト
    1. 3.1 基本用語
      1. 3.1.1 ターミナル
      2. 3.1.2 シェル
      3. パイプとUNIXの哲学
      4. 3.1.3 モダンなコマンド
      5. 3.1.4 一般的なタスク
      6. UNIXエポック時間
    2. 3.2 使いやすいシェル
      1. 3.2.1 fishシェル
      2. 3.2.2 Zシェル
      3. 3.2.3 他のモダンなシェル
      4. 3.2.4 どのシェルを使うべきか?
    3. 3.3 ターミナルマルチプレクサ
      1. 3.3.1 screen
      2. 3.3.2 tmux
      3. 3.3.3 他のマルチプレクサ
      4. ターミナルとtmux、シェルを1つにまとめる
      5. 3.3.4 どのマルチプレクサを使うべきか?
    4. 3.4 スクリプト
      1. 3.4.1 スクリプトの基本
      2. 3.4.2 移植性の高いbashスクリプトの書き方
      3. 3.4.3 スクリプトのlintとテスト
      4. 3.4.4 GitHubのユーザ情報スクリプト
    5. 3.5 まとめ
  10. 4章 アクセス制御
    1. 4.1 基本
      1. 4.1.1 リソースと所有権
      2. 4.1.2 サンドボックス化
      3. 4.1.3 アクセス制御の種類
    2. 4.2 ユーザ
      1. 4.2.1 ローカルでのユーザ管理
      2. 4.2.2 ユーザの一元管理
    3. 4.3 パーミッション
      1. 4.3.1 ファイルのパーミッション
      2. その他のファイルアクセスビット
      3. 4.3.2 プロセスの権限
    4. 4.4 高度な権限管理
      1. 4.4.1 ケーパビリティ
      2. 4.4.2 seccompプロファイル
      3. 4.4.3 ACL
    5. 4.5 アクセス制御のよい実践方法
    6. 4.6 まとめ
  11. 5章 ファイルシステム
    1. 5.1 基本
    2. 5.2 仮想ファイルシステム
      1. 5.2.1 論理ボリュームマネージャ
      2. 5.2.2 ファイルシステムの操作
      3. 5.2.3 一般的なファイルシステムレイアウト
    3. 5.3 擬似ファイルシステム
      1. 5.3.1 procfs
      2. 5.3.2 sysfs
      3. 5.3.3 devfs
    4. 5.4 通常のファイル
      1. 5.4.1 一般的なファイルシステム
      2. 5.4.2 インメモリファイルシステム
      3. 5.4.3 コピーオンライトファイルシステム
    5. 5.5 まとめ
  12. 6章 アプリケーション、パッケージ管理、コンテナ
      1. サンプル:greeter
    1. 6.1 基本
    2. 6.2 Linuxの起動プロセス
      1. System V Init
    3. 6.3 systemd
      1. 6.3.1 ユニット
      2. 6.3.2 systemctlによる管理
      3. 6.3.3 journalctlによる監視
      4. 6.3.4 greeterのスケジューリング例
    4. 6.4 Linuxアプリケーションのサプライチェーン
    5. 6.5 パッケージとパッケージマネージャ
      1. 6.5.1 RPMパッケージマネージャ
      2. 6.5.2 Debian deb
      3. 6.5.3 言語固有のパッケージマネージャ
    6. 6.6 コンテナ
      1. あのときコンテナさえあれば
      2. 6.6.1 namespace
      3. 6.6.2 cgroup
      4. 6.6.3 コピーオンライトファイルシステム
      5. 6.6.4 Docker
      6. 6.6.5 他のコンテナ関連のツール
    7. 6.7 モダンなパッケージマネージャ
    8. 6.8 まとめ
  13. 7章 ネットワーク
    1. 7.1 基本
    2. 7.2 TCP/IPスタック
      1. インターネットとOSI
      2. 7.2.1 リンク層
      3. 7.2.2 インターネット層
      4. ルーティングは郵便に似ている
      5. Facebookがインターネットから消えた
      6. 7.2.3 トランスポート層
      7. 7.2.4 ソケット
    3. 7.3 DNS
      1. 7.3.1 DNSレコード
      2. 7.3.2 DNSルックアップ
    4. 7.4 アプリケーション層ネットワーク
      1. 7.4.1 ウェブ
      2. W3Cと標準化
      3. 7.4.2 SSH
      4. 7.4.3 ファイル転送
      5. 7.4.4 NFS
      6. 7.4.5 Windowsとのファイル共有
    5. 7.5 ネットワークの高度なトピック
      1. 7.5.1 whois
      2. 7.5.2 DHCP
      3. 7.5.3 NTP
      4. 7.5.4 wiresharkとtshark
      5. 7.5.5 他の高度なツール
    6. 7.6 まとめ
  14. 8章 オブザーバビリティ(可観測性)
    1. 8.1 基本
      1. 8.1.1 オブザーバビリティの戦略
      2. 8.1.2 用語
      3. 8.1.3 シグナルの種類
    2. 8.2 ログ
      1. 8.2.1 Syslog
      2. 8.2.2 journalctl
    3. 8.3 監視
      1. 8.3.1 I/Oデバイスとネットワークインタフェース
      2. 8.3.2 統合パフォーマンス監視
      3. 8.3.3 インスツルメンテーション
    4. 8.4 高度なオブザーバビリティ
      1. 8.4.1 トレースとプロファイリング
      2. 8.4.2 PrometheusとGrafana
    5. 8.5 まとめ
  15. 9章 高度なトピック
    1. 9.1 プロセス間通信
      1. 9.1.1 シグナル
      2. 9.1.2 名前付きパイプ
      3. 9.1.3 UNIXドメインソケット
    2. 9.2 仮想マシン
      1. 9.2.1 KVM
      2. 9.2.2 Firecracker
    3. 9.3 モダンなLinuxディストリビューション
      1. 9.3.1 Red Hat Enterprise Linux CoreOS
      2. 9.3.2 Flatcar Container Linux
      3. 9.3.3 Bottlerocket
      4. 9.3.4 RancherOS
    4. 9.4 セキュリティに関するトピック
      1. 9.4.1 Kerberos
      2. 9.4.2 PAM
    5. 9.5 その他のモダンLinuxの話、あるいは将来の話
      1. 9.5.1 NixOS
      2. 9.5.2 デスクトップ版Linux
      3. 9.5.3 組み込みシステムにおけるLinux
      4. 9.5.4 クラウドIDEにおけるLinux
    6. 9.6 まとめ
  16. 付録A 便利なコマンド集
    1. A.1 システム情報
    2. A.2 ユーザとプロセス
    3. A.3 ファイル情報
    4. A.4 ファイルとディレクトリ
    5. A.5 リダイレクトとパイプ
    6. A.6 時刻と日付
    7. A.7 Git
    8. A.8 システムパフォーマンス
  17. 付録B モダンLinuxツール
  18. 著者・訳者紹介
  19. 奥付

Product information

  • Title: 入門 モダンLinux ―オンプレミスからクラウドまで、幅広い知識を会得する
  • Author(s): Michael Hausenblas, 武内 覚, 大岩 尚宏
  • Release date: April 2023
  • Publisher(s): O'Reilly Japan, Inc.
  • ISBN: 9784814400218

You might also like

book

入門 eBPF ―Linuxカーネルの可視化と機能拡張

by Liz Rice, 武内 覚, 近藤 宇智朗

eBPFは、ネットワーク、セキュリティ、オブザーバビリティなど、さまざまなインフラ関連の分野のプラットフォームとして利用が広がりつつある、近年最も注目されている技術の1つです。本書ではカーネルの機能を拡張する方法として注目度の高いeBPFについて、どんな技術であるか、何ができるかを概観することができます。基本的なeBPFプログラムの書き方を紹介するとともに、仕組みも理解できるようになっています。

book

ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール

by Chris Zimmerman, 久富木 隆一

全世界で1,000万本に迫る実売数を誇り、日本でも累計実売数100万本を突破(2023年5月時点)した大ヒットゲーム『Ghost of Tsushima (ゴースト・オブ・ツシマ) 』をはじめ、『怪盗スライ・クーパー』などで著名なゲーム制作スタジオ、Sucker Punch Productions(サッカーパンチプロダクションズ)の共同創設者であるChris Zimmermanによる、プログラミングのベストプラクティス集。 全部で21の「ルール」から成り立っており、すべてのプログラマーが知っておくべき本質的な知恵と、熟練したプログラマーにとって示唆に富む洞察を含んでいます。また、コードを書く際だけでなく、デバッグや最適化の際に有用な知識にも触れています。ゲーム領域に限らず、幅広いプログラマーを対象とした、必読のプログラミング哲学。 本書で触れられるコード例はC++で書かれていますが、C++の知識は必須ではなく、オブジェクト指向の基礎知識さえあれば問題なく読むことができます。また、付録に「Pythonプログラマー/JavaScriptプログラマーのためのC++コード読解法」を掲載しています。

book

推薦システム実践入門 ―仕事で使える導入ガイド

by 風間 正弘, 飯塚 洸二郎, 松村 優也

情報化時代が到来し、日常で意思決定をする回数と選択肢の数が急増したことで、推薦システムの需要が高まっています。そのため、昨今では多くのウェブサービスへ新たに推薦システムの導入が検討されることも増えました。本書では、推薦システムの概要から、UI/UX、アルゴリズム、実システムへの組み込み、評価まで紹介し、適切な推薦システムの実装ができるようになります。「実際の仕事に活かす」ことを目的に、著者たちが実務で経験した推薦システムの成功事例や失敗事例を交えながら、実サービスに推薦システムを組み込むという観点を重視した入門的な内容です。

book

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

by Stephen Wendel, 武山 政直, 相島 雅樹, 反中 望, 松村 草也

深津貴之氏推薦!「行動経済学、データ分析、サービス設計のエッセンスが高度に統合された行動変容デザインの良書です」 本書は、行動経済学と心理学をもとに、人々の行動、日常習慣を変える“行動変容”を促すプロダクトをデザインするための書籍です。主にヘルスケア(健康管理)、金融(資産管理)など、これまでITプロダクト(サービス、アプリなど)がなかなか使われてこなかった分野を対象に、ユーザーがやりたいと思っていたものの実行できなかった行動の実現を助けるプロダクトを作り出すための、実践的な視点や知識を提供します。