本書は、「Linux(リナックス)」の心臓部にあたるカーネルについて理解を深め、Linuxを本格的に学ぶ人のための「初めて読むLinuxカーネルの専門書」です。1991年に一人の大学生が趣味で開発を始めたLinuxというOSは、今や、あらゆる分野で使われていると言っても過言ではありません。組み込み機器やスマートフォンなどのモバイル機器、パソコンのOSとしてはもちろん、スーパーコンピュータのOSとしても使われています。
LinuxのカーネルはOSS(Open Source Software)として開発されていて、ソースコードがすべて公開されています。そのソースコードを調べれば、機能の詳細や動作の仕組みが分かりますし、改造して好きなようにカスタマイズすることもできます。
本書の狙いは、Linuxカーネルについて知りたい方に、学習の「入り口」を提供することです。まずはカーネルの全体像を把握して実験できるように、概要解説とモジュールの管理方法、ビルド手順の紹介から始めています。後半では、主だった機能をピックアップし、動作に必要なハードウエアに関するものを含めて仕組みをやや詳しく解説しています。
今回改訂した第2版では、カーネルやディストリビューションの変化に合わせて内容をアップデートすると共に、「プロセス間通信」「仮想化機能」についての解説を追加しました。
第1章 Linux カーネルの基礎
第2章 Linux カーネルのモジュール管理
第3章 Linux カーネルのビルド方法
第4章 タスクスケジューラの仕組み
第5章 仮想メモリーを実現する仕組み
第6章 コンテキストスイッチの仕組み
第7章 物理メモリー管理の仕組み
第8章 ファイルシステムの仕組み
第9章 プロセス間通信の仕組み
第10章 仮想化機能「KVM」の仕組み
Powered by HMV
Linux初心者でも安心して学習できます。イラストをたくさん使って説明しています。大きな文字で読みやすい紙面です。
2024年1月号まで定期誌として発行されていた「日経Linux」の特別版。
世界で最も人気の高いLinuxディストリビューションの最新版「Ubuntu 24.04 LTS」が2024年4月25日(英国時間)にリリースされた。これは2年ごとにリリースされる長期サポート版で、既存のUbuntuユーザーの注目度も高い。
そこで、このリリースタイミングに合わせた最新版の徹底解説を特集1とし、特集2には最新版Ubuntu 24,04 LTSを使ったLinux入門の特集記事を、特集3では最新版Ubuntu 24,04 LTSで動作検証済みのフリーソフトの特集記事を、さらに特集4では最新版Ubuntu 24,04 LTSのサーバー版を使ったサーバー構築の特集記事をラインアップした。
なお、本書の特集2から特集5およびコラムの各記事は、日経Linuxとラズパイマガジンに掲載済みの記事に、最新版のUbuntu 24.04 LTSで動作検証したうえで加筆・修正したものです。また特集6の記事は「日経ソフトウエア 2024年7月号」からの転載になります。
≪主な内容≫
特集1 最新版Ubuntu 24.04 LTSを徹底解説
特集2 最新Ubuntuの使い方をマスターしよう
特集3 16のやりたいを実現!フリーソフト活用術
特集4 ステップアップ式Ubuntuサーバー構築術
特集5 PC並みの「ラズパイ5」をUbuntuで活用
特集6 ITエンジニア1年生のためのまんがでわかるLinux
LinuCは、LPI-Japanが提供するLinux技術者認定資格試験です。日本の大手IT企業などを中心に採用・導入が進んでいます。本書はこのLinuC試験のうち、2020年4月に試験が改定されたLinuCレベル1バージョン10.0(101試験、102試験)の出題範囲をカバーする教科書です。実績ある講師によるわかりやすい解説で、資格取得に必要な確かな力を身につけることができます。改訂新版では、学習用OSとして仮想環境で動作するAlmaLinuxおよびDebian GNU/Linuxのイメージをダウンロード提供します。学習用環境を利用することで、コマンドの実行や設定ファイルの編集など、実際に手を動かしながら学ぶことが可能です。
■基礎編 Linuxの基本
Linuxカーネルとディストリビューション
仮想化環境の利用
Linuxのディレクトリ構造
Debian(CUI)環境へのログインとrootユーザー
AlmaLinux(GUI)環境へのログインと端末の起動
コマンド端末の使い方
主な基本コマンド
■1章 Linuxのインストールと仮想マシン・コンテナの利用
1.1 Linuxのインストール/起動/接続/切断/停止
1.2 仮想マシン・コンテナの概念と利用
1.3 ブートプロセスとsystemd
1.4 プロセスの生成/監視/終了
1.5 デスクトップ環境の利用
■2章 ファイルとディレクトリの操作と管理
2.1 基本的なファイル管理の実行
2.2 ファイルの所有者とパーミッション
2.3 ハードリンクとシンボリックリンクの作成
2.4 ファイルの配置と検索
■3章 GNUとUnixのコマンド
3.1 コマンドラインの動作
3.2 フィルタを使ったテキストストリームの処理
3.3 ストリーム、パイプ、リダイレクトの使用
3.4 正規表現を使用したテキストファイルの検索
3.5 エディタを使った基本的なファイル編集の実行
■4章 リポジトリとパッケージ管理
4.1 アプリケーション管理
4.2 aptコマンドによるパッケージ管理
4.3 Debianパッケージ管理
4.4 yumコマンドによるパッケージ管理
4.5 RPMパッケージ管理
■5章 ハードウェア、ディスク、パーティション、ファイルシステム
5.1 ハードウェアの基本知識と設定
5.2 HDD/SSDのレイアウトとパーティション
5.3 ファイルシステムの作成/管理/マウント
■101試験模擬問題
■6章 シェルおよびスクリプト
6.1 シェル環境のカスタマイズ
6.2 シェルスクリプト
■7章 ネットワークの基礎
7.1 インターネットプロトコルの基礎
7.2 基本的なネットワーク構成
7.3 基本的なネットワークの問題解決
7.4 クライアント側のDNS設定
■8章 システム管理
8.1 アカウント管理
8.2 ジョブ管理
8.3 ローカライゼーションと国際化
■9章 重要なシステムサービス
9.1 システム時刻の保守
9.2 システムのログ
9.3 メール配送エージェント(MTA)の基本
■10章 セキュリティ
10.1 セキュリティ管理業務の実施
10.2 ホストのセキュリティ設定
10.3 暗号化によるデータの保護
10.4 クラウドセキュリティの基礎
■11章 オープンソースの文化
11.1 オープンソースの概念とライセンス
11.2 オープンソースのコミュニティとエコシステム
■102試験模擬問題
本書では、Raspberry PiのOSセットアップからLinuxの基本操作、電子工作用のプログラミング学習、電子工作の実践まで、初心者に分かりやすいように内容を省略せずきっちり解説しています。
「ラズ・パイ超入門」の特長は、とにかく「初心者にわかりやすい」ことです。
巷の電子工作の本は意外と不親切な作りのものが多く、ある程度の予備知識があることを前提に書かれているものが多いのですが、本書は回路図はじめ徹底的に図解で説明し、初心者が戸惑う部分を排除しています。
Part1 Raspberry Piとは
Part2 Raspberry Piを動作させよう
Part3 Raspberry Piの操作と設定
Part4 小型LinuxマシンとしてRaspberry Piを利用
Part5 プログラムを作ってみよう
Part6 電子回路をRaspberry Piで制御する
Part7 I2Cデバイスを動作させる
Part8 Raspberry Piの応用
Appendix 付録(Linuxコマンドリファレンスなど)
「サーバー故障やヒューマンエラーに備えるには?」
「アクセス数の増加時にパフォーマンスを保つには?」
「異常検知をして復旧するには?」
運用・管理における長く役立つ視点を、実践経験豊富なエンジニアがどのように動いているのかをふまえて解説。
本書では、MySQLサーバーの稼働状況の確認方法といった基礎知識を始め、アカウントの権限の評価順序や認証プラグインなど、運用管理者として知っておくべき知識をまず身につけます。そして、正規化プロセスの基本、CRUDを支える仕組み、ロックの仕組みといった、内部構造について理解を深めます。
そのあと、多くのクエリ実行計画を読み解くので、どのようにクエリを書き換え、どの順番でインデックスを使って処理をしてコストを最小にするのかといった、オプティマイザの考え方がわかるようになるでしょう。レプリケーション、バックアップとリストア、監視など、障害発生に対応するためのノウハウも詰め込みました。
現場で通用する知識の地固めをしたい方、より良い運用・管理のためのポイントを知りたい方におすすめの1冊です。
TCP/IP&ネットワークコマンドの解説書。『Linux×コマンド入門』(技術評論社、2021/04)、『macOS×コマンド入門』(技術評論社、2020/4)の姉妹本です。
本書では、TCP/IP&ネットワークの今の基本を押さえ、ネットワークコマンドや各種ツールの基礎知識や作法を平易に解説。コマンドやWiresharkなどのツールを使って、TCP/IPのしくみ&ネットワークの基本概念を手を動かして実際の動作を見ながら学べる点が特徴です。動作確認環境としてはLinux(Ubuntu)を中心に、Windows/WSL2、macOSに対応。コマンドラインがはじめての方でも試せるようにサポートサイトも用意しました。変わる基本、変わらない基本を広く初学者の方々へ。スマートフォン、Wi-Fi、無線通信をはじめとしたコンピューターネットワークの今を気軽に体感できる1冊です。
コマンドラインを極めろ!!
MS-DOSを知らない世代のエンジニアに向けたLinux入門書の決定版。
Linux自身の機能だけでなく、シェルスクリプトを使ったプログラミングや、
Gitによるソフトウェア開発のバージョン管理など、
エンジニアの定番知識を徹底的に、丁寧に解説しました!!
[Redhat系、Debian系に対応]
CHAPTER01 Linuxを使ってみよう
CHAPTER02 シェルって何だろう?
CHAPTER03 シェルの便利な機能
CHAPTER04 ファイルとディレクトリ
CHAPTER05 ファイル操作の基本
CHAPTER06 探す、調べる
CHAPTER07 テキストエディタ
CHAPTER08 bashの設定
CHAPTER09 ファイルパーミッション、スーパーユーザ
CHAPTER10 プロセスとジョブ
CHAPTER11 標準入出力とパイプライン
CHAPTER12 テキスト処理
CHAPTER13 正規表現
CHAPTER14 高度なテキスト処理
CHAPTER15 シェルスクリプトを書こう
CHAPTER16 シェルスクリプトの基礎知識
CHAPTER17 シェルスクリプトを活用しよう
CHAPTER18 アーカイブと圧縮
CHAPTER19 バージョン管理システム
CHAPTER20 ソフトウェアパッケージ
APPENDIX01 リモートログインとSSH
APPENDIX02 infoドキュメントを読む
APPENDIX03 Linuxでの日本語入力について
APPENDIX04 参考文献
コマンドを使えば開発はもっと楽しくなる!新人のITエンジニアにとって開発現場でぶつかる壁の1つが、通称「黒い画面(CLI/CUI)」でのコマンド操作です。グラフィカルなUIに慣れ親しんだ若手のエンジニアの中には、得体のしれないCLIの操作に苦手意識や恐怖感を持っている人も多いのではないでしょうか。本書はそんな「黒い画面が怖い!」という新人エンジニアや学習者に向けて、CLIやコマンドとの付き合い方・活用法をやさしく解説する入門書です。黒い画面にまつわる用語、基本的なコマンドの使い方や書式(コマンドプロンプト、PowerShell、WSL)、コマンドを使った作業効率化の手法(シェルスクリプト、ワンライナー)など、エンジニアとして開発に取り組む上でおさえておきたい知識と技術を、実践例とともにわかりやすく解説しています。
[内容紹介]
【第1特集】型を制する者はTypeScriptを制す
もっとTypeScriptの力を引き出そう
設計を変革するUnion型、構造的部分型
TypeScriptは大規模開発を目的として、静的型付けの機能を中心にJavaScriptを拡張した言語だと言われています。ですが、TypeScriptの型システムが秘めている力はそれにとどまりません。
本特集では、TypeScriptにおける型の扱い方を基礎から解説し、TypeScriptを本格的に使ううえで避けて通れないUnion型、構造的部分型との付き合い方を紹介します。さらに、発展的なトピックとしてMapped Typesという型表現を取り上げます。TypeScriptを初めて触る方も、ある程度使っている方も、ぜひご一読ください。
【第2特集】WSL、コンテナ、選択肢はいろいろ
Ubuntuで開発環境を整備
現代的な使い方&24.04 LTSレポート
2024年4月にLinuxディストリビューションUbuntuの新バージョンである24.04 LTS“Noble Numbat”がリリースされます。これに合わせて、本誌恒例、新LTSの変更点や新機能の紹介を行います。
また、近年、UbuntuはWSL2(Windows Subsystem for Linux 2)やコンテナなどさまざまな形態で使われています。「何気なく触っていたLinux環境がじつはUbuntuだった」というくらい、Ubuntuは開発や運用の現場に広まってきています。そこで、Ubuntuを開発環境として使う場合の選択肢や導入の手引きを整理しました。一番快適な利用形態はどれでしょう? 自分にベストな開発環境探しの参考にどうぞ。
[目次]
■特集
【第1特集】もっとTypeScriptの力を引き出そう
第1章 TypeScriptの力を引き出すための基本/雫石 卓耶
第2章 TypeScriptの型を正しく扱う/鹿野 壮
第3章 Union型でより正確に設計する/うひょ(鈴木 僚太)
第4章 構造的型付けで型同士の関係を操る/suin
第5章 実践Mapped Types/mizchi(竹馬 光太郎)
【第2特集】Ubuntuで開発環境を整備
第1章 開発環境としてのUbuntu/水野 源
第2章 Ubuntu 24.04 LTS Serverの変更点/柴田 充也
第3章 Ubuntu 24.04 LTS デスクトップの変更点/あわしろいくや
■連載
ITエンジニア必須の最新用語解説/杉山 貴章
万能IT技術研究所/万能IT技術研究所
ドメイン解体新書/谷口 元紀
ハピネスチームビルディング/小島 優介
エンジニアのためのやる気UPエクササイズ/えくろプロテイン
レガシーシステム攻略のプロセス/高橋 智也、瀬尾 直利
Databricksで勝つデータ活用/宇田川 聡
あなたの知らないChromeの世界/小河 亮
Google Cloud流クラウドネイティブなシステムデザインパターン/江藤 弘、監修:高鳥 智正
ぼくらの「開発者体験」改善クエスト/石井 幸次
実践データベースリファクタリング/曽根 壮大
Cloudflare Workersへの招待/井手 優太
実践LLMアプリケーション開発/西見 公宏
MLOpsのすすめ/澁井 雄介
位置情報エンジニアリングのすすめ/小松 聖
AWS活用ジャーニー/杉金 晋
魅惑の自作シェルの世界/上田 隆一
あなたのスキルは社会に役立つ〜エンジニアだからできる社会貢献〜/大菊 健太
Linuxの基礎からセキュリティまで、Webサーバーを運用するために身に付けるべき知識をまとめた書籍です。Rocky LinuxとさくらのVPSを使用して、実際に手を動かしながらWebサーバーを構築・運用します。前半ではLinuxのインストールから始まり、基本的なコマンドやネットワークを学びます。後半では実用的なWebサーバー構築演習としてLAMP(Linux、Apache、MariaDB、PHP)環境を構築し、CMSとして有名なWordPressを動かしていきます。作成したLAMP環境を運用し、ログの解析、ファイヤーウォールの設定、公開鍵による安全な通信などを学んでいきます。最終的にはDockerでコンテナの作成まで習得できます。第2版のポイント、CentOSからRocky Linuxに変更、サーバー周りの技術情報のアップデート。
[内容紹介]
【第1特集】新年度のはじまりに学ぶ!
Linux基礎知識60
あなたの実力をチェックしてみよう
Linuxは今なおあらゆるところで利用されているOSです。現場で活躍できるエンジニアになるためには、Linuxの基本は必須の知識と言えるでしょう。バックエンド系のエンジニアはもちろん、フロントエンドのエンジニアでも押さえておきたいものです。
4月は新年度のはじまりということで、本特集であらためてLinux基礎知識をチェックしてみましょう。Linuxに精通したベテランエンジニアに4つの分野から押さえておきたいトピックを挙げてもらい、60項目のチェックリストにまとめました。これから現場に出る初級者はもちろん、Linuxは大丈夫という中級者の方も力試しやおさらいに役立つことでしょう。
【第2特集】常識として知っておきたい
今から始めるテクニカルライティング
伝わる/役立つドキュメント作成のポイント
「テクニカルライティング」とは、読み手や目的に合わせて情報をわかりやすく伝える技術です。製品のドキュメントや業務の仕様書といった、ITエンジニアにとって馴染みのある技術ドキュメントを作成する際、このテクニカルライティングが大いに役立ちます。また、知りたい情報をすぐに見つけられるアウトラインの作り方や、意図が読み手にはっきりと伝わる文章術などは、知っておくと幅広い業務で活用できる普遍的な技術でもあります。
本特集を通して、いま一度自分の文章技術をブラッシュアップしてみるのはいかがでしょうか。
[目次]
■特集
【第1特集】Linux基礎知識60
Introduction Linux基礎知識チェックリスト/編集部
第1章 ディレクトリ構造とファイルシステム/水野 源
第2章 プロセス管理/青田 直大
第3章 ユーザー権限とアクセス権/くつなりょうすけ
第4章 ネットワーク設定と管理/宮原 徹
【第2特集】今から始めるテクニカルライティング
第1章 テクニカルライティング入門/米山 柚香子
第2章 読者に合わせたドキュメントを書く/米山 柚香子
第3章 アウトラインで伝える情報を整理する/piyo
第4章 明確な文章を書く技術/小野 葵
【特別広報】
グローバルへ挑戦するココネのエンジニアリング力を探る/編集部
■連載
ITエンジニア必須の最新用語解説/杉山 貴章
万能IT技術研究所/万能IT技術研究所
ドメイン解体新書/谷口 元紀
ハピネスチームビルディング/小島 優介
エンジニアのためのやる気UPエクササイズ/えくろプロテイン
Databricksで勝つデータ活用/桑野 章弘
あなたの知らないChromeの世界/小河 亮
Google Cloud流クラウドネイティブなシステムデザインパターン/田中 万葉、監修:宮城 望
ぼくらの「開発者体験」改善クエスト/金子 雄大
実践データベースリファクタリング/曽根 壮大
Cloudflare Workersへの招待/福岡 秀一郎
実践LLMアプリケーション開発/西見 公宏
MLOpsのすすめ/澁井 雄介
位置情報エンジニアリングのすすめ/小松 聖
AWS活用ジャーニー/杉金 晋
魅惑の自作シェルの世界/上田 隆一
あなたのスキルは社会に役立つ〜エンジニアだからできる社会貢献〜/高木 俊輔
サーバ管理者が押さえておくべきLinuxコマンドとLinuxサーバの基礎的な知識を解説しました!
本書は、サーバ管理者やプログラム開発者などのエンジニアを目指す方のためのLinux とサーバ管理の入門書です。大きく次の二つの内容で構成しています。
(1)Linuxコマンドと使い方を解説
(2)Linuxサーバーの基礎知識を解説
基本的にデスクトップ環境を使用したGUI 操作はやったことがあるものとして、「端末」アプリなど端末エミュレータでのコマンドライン操作をベースに解説しています。もちろん、大学や専門学校の学生がLinuxのようなUNIX系OSのコマンド操作やサーバ管理を学びたいといった場合にもお薦めです。
Linux には現在、さまざまなディストリビューションがあり、用意されているパッケージの種類やその内容、ファイルシステムの構造などが若干異なります。本書では次の2つのディストリビューションを基本に解説しています。
(1)Ubuntu
(2)Red Hat Enterprise Linux(RHEL)
コマンドの実行例を挙げながら解説しているので、実際に手元のLinux環境で試しながら読み進めてください。UbuntuとRHELのインストール方法は、電子版をサポートサイトでダウンロードできます。
Chapter1 Linuxの概要
LinuxとはどんなOSなのかを説明します。その後で、「端末」アプリを使用した、CUIコマンドの基本的な実行方法について説明します。
Chapter2 コマンドの基本操作
コマンド操作はサーバ管理には必須です。「端末」アプリを利用したCUIコマンドの実行方法とシェルの操作について説明します。
Chapter3 CUIエディタの操作
CUIで動作するエディタの操作方法もサーバ管理には必須のスキルです。代表的なCUIエディタであるnanoとvimを説明します。
Chapter4 シェルを活用するための基礎知識
ファイルのパーミッションの取り扱い、ジョブ制御、シェルの環境設定、シェルスクリプトの基礎を解説します。
Chapter5 システム管理の基本
ユーザ/グループの管理、サービスの管理、ソフトウエアのバイナリパッケージの取り扱いを解説します。
Chapter6 ネットワークの活用方法
ネットワークの設定、ファイアウォールの設定、Sambaを使用したファイル共有、SSHサーバを使用したリモートログインとファイル転送を解説します。
Chapter7 ApacheによるWebサイトの構築方法
オープンソースのWebサーバアプリ「Apache」を使用したWebサイトの構築方法を解説します。
Chapter8 Dockerによる仮想環境の構築方法
Ubuntuで「Docker」(ドッカー)を使用したコンテナ型仮想環境の構築方法を解説します。
付録
Document1 コマンド操作の応用
Document2 WordPress によるブログサイトの構築方法
Document3 Ubuntu とRHEL のインストール
◆特集1 新モデルラズパイ5完全対応 電子工作のはじめ方
世の中には膨大な種類の電子パーツがありますが、ラズパイやラズパイPicoを使えばそれら電子パーツの多くを制御可能です。基本的な動かし方から作品の作り方まで一気にマスターしましょう。話題の「ChatGPT」を使って作品作りを効率化する方法も紹介します。
最新のラズパイ5やPicoを使い電子パーツを自在に制御しよう
Part1 電子パーツを電池で動作させてみよう
Part2 ラズパイやPicoで電子パーツを制御しよう
Part3 定番電子パーツ11種を動作させよう
Part4 生成AIも活用しつつ、実用的な作品を作る
◆特集2 I/O、CPUが高速になったラズパイ5
「NVMe」対応でSSDアクセスは2倍速に
◆特集3 ラズパイPicoをNode-REDで動かす
GUI上のフローでプログラミング
◆特集4 ラズパイ&AIによる画像認識でアームクローラーを制御しよう
◆特集5 ラズパイで楽しむLinuxライフ
「今、会議中」と家族に伝えるプレートをPythonで作ろう
◆特集6 ラズパイで楽しむLinuxライフ
「GitLab」で課題管理と資料の整理をしよう
●講座 実験して分かる電子パーツの動かし方
第13回 磁気センサーと磁石を試す
●講座 ハード&ソフトをちょい足し 新しいラズパイの遊び方 第15回
Part1 ラズパイを大容量NASに仕立てる
Part2 ラズパイでお手軽AIカメラを使う
●講座 ラズパイ&PC両対応 Linuxで学ぶセキュリティ入門
第2回 暗号化でデータを守る
●講座 IoT時代の電子工作
第4回 非接触温度センサーを使う
●講座 電子工作にも役立つ! 基礎からわかるLinuxコマンド 第11回
Part1 基本的なネットワークコマンド(その3)
Part2 基本的なネットワークコマンド(その4)
・ラズパイと周辺機器の買い方からOS導入方法、工作基礎まで
【特別付録】
・第1部 自動で動くカメラ&センサー完全25パターン
・第2部 温湿度センサーで室内を監視
・第3部 スカイツリーを好きな色に光らせる
・第4部 拡張ボードHATを自作しよう
[内容紹介]
【第1特集】QAも、アプリ開発者も
テストの設計してますか?
新しいソフトウェアテスト講座
近年のソフトウェア開発では、テスト駆動開発(テストファースト)の一環で開発者自身がテストを行ったり、自動化できるテストはCI/CDの中で実行されたり、開発プロセスの中にテストが組み込まれてきています。テストは開発の後半に実施するものという考え方は古くなりつつあります。開発プロセス全体に関わってくる以上、QA(品質保証)担当者だけでなく、開発担当者も基本的なテストプロセスやテスト技法について知っておく必要がありそうです。
すべてのITエンジニアが把握しておくべき知識として、現代におけるテスト設計の基本を整理し、提示します。
【第2特集】あなたのサービスは大丈夫?
ゼロから学ぶWeb APIセキュリティ
攻撃から始める設計対策
今やWeb APIはWebサービス開発と切っても切れない関係です。それゆえにサイバー攻撃の対象にも容易になり得ます。攻撃事例も数多く報告されており、セキュリティ対策は急務と言えるでしょう。ですが、いざ対策しようとすると、想像以上に配慮する必要のある箇所が多く、途方に暮れた人もいるのではないでしょうか。そんなあなたのために、本特集ではWeb APIセキュリティのノウハウを集めました。第1、2章ではWeb APIに潜むセキュリティリスクと重要なセキュリティのポイントを紹介し、第3、4章では「脆弱性」と「認証・認可」の2点で対策の心得を伝授します。この機会にぜひ、ご自身のWeb APIについて、一度見直してみてください。
[目次]
■特集
【第1特集】テストの設計してますか?
第1章 ソフトウェアテストとは何か?/風間 裕也
第2章 テスト技法の基礎/谷崎 浩一
第3章 探索的テストで短時間で効率よくバグを見つける/根本 紀之
第4章 シフトレフトテストを支える現代的なテスト設計/井芹 洋輝
【第2特集】ゼロから学ぶWeb APIセキュリティ
第1章 Web APIに潜むセキュリティリスク/石川 朝久
第2章 Web APIセキュリティの重要ポイント/徳丸 浩
第3章 脆弱性/松本 隆則
第4章 認証・認可/川村 修平
【特別企画】
表紙で振り返るSoftware Designの歩み/編集部
【特別広報】
グローバルへ挑戦するココネのエンジニアリング力を探る/編集部
■連載
ITエンジニア必須の最新用語解説/杉山 貴章
平林万能IT技術研究所 2ndシーズン/平林 純
ドメイン解体新書/谷口 元紀
ハピネスチームビルディング/小島 優介
エンジニアのためのやる気UPエクササイズ/えくろプロテイン
あなたの知らないChromeの世界/小河 亮
Google Cloud流クラウドネイティブなシステムデザインパターン/北野 敦資、(監修)阿部 正平
ぼくらの「開発者体験」改善クエスト/高山 温
実践データベースリファクタリング/曽根 壮大
Cloudflare Workersへの招待/福岡 秀一郎
実践LLMアプリケーション開発/西見 公宏
画像解析AIの作り方/高木 優介
MLOpsのすすめ/澁井 雄介
位置情報エンジニアリングのすすめ/小島 聖
なるほど納得Go言語/崎原 晴香(H.Saki)
AWS活用ジャーニー/杉金 晋
現場から学ぶAWSのクラウドセキュリティ/花塚 亮祐
魅惑の自作シェルの世界/上田 隆一
あなたのスキルは社会に役立つ〜エンジニアだからできる社会貢献〜/武貞 真未、田中 伶奈
ひみつのLinux通信/くつなりょうすけ
systemd(システムディー)はLinuxの基本的な構成要素を提供するソフトウェア群です。システムやサービスの管理機能を中心として、ハードウェアの管理、ログの管理などを行う多数の独立したソフトウェアからなっています。
Linuxでシステム管理を行うときにはsystemdの知識が必要になります。systemdに関するオンラインマニュアルなどは充実しているものの、systemdがどんな機能を提供しているかを知らなければ「どのドキュメントを読めばいいのか」「何を探すべきなのか」の見当がつかないでしょう。
本書はsystemdの概要をつかみ、マニュアルなどを適切に参照できるようになることを目的としています。systemdの設定変更や、設定ファイル(unit file)の解釈/作成/変更、systemdが記録したログの読解などのシーンで役立つトピックを解説します。また、systemdの機能に対応するLinuxカーネルの機能を知ることができます。Red Hat Enterprise Linux 8と9を題材にして解説しますが、多くの内容は他のディストリビューション(Debian、Ubuntu、openSUSEなど)でも活用できます。
※本書は雑誌『Software Design』の2021年6月号〜2022年11月号に掲載された連載記事「systemd詳解」を再編集した書籍です。