これからLinuxを学ぶ方に向けた,コマンドによる操作,テキストエディタの使いかた,シェルの環境設定やネットワーク設定といった,Linuxを扱ううえで「これだけは知っておきたい」知識を,豊富な実習例を通して学べるテキストです.
また,プログラムの開発環境,LaTeX,GNUPLOTなど,Linuxを用いた研究やレポート執筆に欠かせない必須アプリケーションについても,あわせて解説しています.
Linuxをはじめて使う大学生・エンジニアにおすすめの1冊です.
第1章 基本操作
第2章 基本コマンド
第3章 応用コマンド
第4章 エディタ
第5章 ソフトウェア開発
第6章 文書作成ツール -LaTeX
第7章 文書作成ツール -グラフや図を描く
第8章 シェル
第9章 環境設定
第10章 ネットワークとサービス
第11章 システム管理
付録A コマンドリファレンス
付録B 正規表現
本書は、これから仕事でLinuxを使おうという方はもとより、現場で日々Linuxを使っている方にも役立つ、Linuxのコア技術・カーネルのしくみや、ディストリビューションの最新動向と進化の歴史、UNIXコマンドやシェルスクリプトの実践的な基礎など、必須知識とノウハウが満載です。
本書には、Linuxの概要、カーネル、Cライブラリ、Cコンパイラなどプログラミングの基礎知識から、ファイルI/O、バッファサイズ管理、メモリマッピング、最適化技術、システムコール、メモリ管理まで、プログラマの観点から実践的なトピックが多く盛り込まれている。Linuxカーネル動作についても、その内部実装よりもプログラマがソースコードを書くために必須の知識が凝縮。カーネル2.6対応。
本書ではLinuxを扱う上で必要となる設定ポイントなどをまとめています。ハードウェアとLinuxの関わり、Linuxカーネルやシェルへの理解を深めた上で、設定ファイルや起動スクリプトの作成について解説します。またサーバとしてよく使われているApacheやPostfixなどのアプリケーションの他に日本語環境やX Windowの設定、認証などについても丁寧に解説を進めています。「Linuxをインストールしたがどのように扱ってよいかわからない」「Linuxはどのような構造で動いているか興味がある」という方にお薦めです。
豊富な問題と仮想マシンで合格レベルの技術が身につく!
Webサーバーをはじめよう。Linuxサーバーの基礎からわかって安心。練習問題&解答・解説集付き。
バイナリ解析とは、バイナリプログラムとそれに含まれているマシンコードやデータの性質を解析する科学と技術のことだ。セキュリティの脆弱性を狙う攻撃やマルウェアなど、悪意をもつソフトウェアに対処するには、バイナリプログラムの本当の性質を突き止める、そのプログラムが実際に実行することを突き止める必要がある。
本書は、バイナリプログラムの基礎知識、静的解析や動的解析といったバイナリ解析の基本から、ソースプログラムがなくてもバイナリプログラムの内容を書き換えるバイナリ計装といった高度な手法まで、リバースエンジニアリングの範囲を超えて実践的に解説する。
セキュリティエンジニアやセキュリティ研究者、ハッカーやペネトレーションテストの担当者、リバースエンジニア、マルウェアアナリスト、そしてコンピュータサイエンスの学生など、バイナリ解析に興味をもつすべての人を対象とした、最も魅力的で最も手ごわいテーマであるバイナリ解析入門の決定版である。
第I部 バイナリフォーマット
第1章 バイナリを解剖する
第2章 ELFフォーマット
第3章 入門:PEフォーマット
第4章 libbfdを使ってバイナリローダーを作成する
第II部 バイナリ解析の基礎
第5章 Linuxでの基本的なバイナリ解析
第6章 逆アセンブリとバイナリ解析の基礎
第7章 ELFにコードを注入する
第III部 高度なバイナリ解析
第8章 逆アセンブリのカスタマイズ
第9章 バイナリ計装
第10章 動的テイント解析
第11章 libdftを使った実用的な動的テイント解析
第12章 シンボリック実行
第13章 Tritonを使ったシンボリック実行
第IV部 付録
付録A 速習:x86アセンブリ
付録B libelfを使ってPT_NOTEを上書きする
付録C バイナリ解析ツール
付録D 参考文献
Linuxって何? コマンドって何? といった初心者でもOK! 実際にコマンド入力を試しながら、操作方法を学べます。
Chapter01 Linuxとは? Linuxコマンドとは?
Chapter02 ユーザ管理
Chapter03 ディレクトリ・ファイルの操作はどうする?
Chapter04 テキスト処理とファイル処理
Chapter05 パッケージとその管理
Chapter06 ハードウェア関連コマンド
Chapter07 ネットワーク系コマンド
Chapter08 シェルスクリプトで簡単プログラミング入門
Chapter09 gitコマンドも覚えよう
Chapter10 システム管理系コマンド
Appendix01 WSL関連の操作
Appendix02 ソースからのインストールで一連のコマンドを覚えよう
本書は1日目〜6日目の6分冊として提供します。各パートは4つのセクションからなり、実際の入門講座でも使用できるように、ひとつのセクションが約1時間を目安に完了するように構成されています。
まず1日目では、終了した段階で、コマンドライン操作の基本が理解できていることを目標に、ターミナルエミュレータの基本操作を説明します。1時間目では、導入編としてUNIX系OSの概要について説明。2時間目では、いよいターミナルエミュレータを起動しシェルコマンドを実行する方法について解説します。3時間目では、ファイルシステムの階層構造とディレクトリ操作について、4時間目ではテキスト補完や履歴などシェルを活用する上で欠かせない基本テクニックについて説明します。
本書は、サーバOSの標準であるCentOSに対応した、Linuxサーバエンジニアのための入門書です。Linuxとは、CentOSとは、ネットワークとはといった基本から始まって、各種サーバの構築や管理・運用までひととおり学べる内容となっています。もちろん、実際にサーバを構築する際にも十分に役に立つ内容となっています。LPIなどの受験対策にもおすすめです。最新のCentOS 8に対応し、クラウド時代に即した管理にも言及しています。
Chapter 1 予備知識
Chapter 2 構築の準備
Chapter 3 CentOS 8のインストール
Chapter 4 デスクトップの基本操作
Chapter 5 コマンドラインからの操作
Chapter 6 最初にやっておくべきこと
Chapter 7 CentOS 8のセキュリティ
Chapter 8 リモートからの管理
Chapter 9 NFSサーバを使う
Chapter 10 DHCPサーバ
Chapter 11 Windowsファイル共有サーバ
Chapter 12 DNSキャッシュサーバ
Chapter 13 DNSコンテンツサーバ
Chapter 14 メールサーバ
Chapter 15 Webサーバ
Chapter 16 サーバ仮想化
Chapter 17 トラブル時の対応
Chapter 18 運用と管理
Chapter 19 SSL/TLS証明書の作成
サーバー構築・運用管理・セキュリティ・トラブル対策etc。いま現場で必要なLinuxの基礎知識を完全理解。現場で最低限知っておきたいポイントがわかる!
「Linuxのデバイスドライバは、難しくてよく分からない」と思っている開発者も多く、著者がデバイスドライバの開発業務に関わったときも、アプリ開発とは概念が異なるためなかなか理解できず、仕事で泣かされていたそうです。
それくらい、ハードウェアとの橋渡しをするデバイスドライバ開発は、プログラミングの知識だけでなくハードウェアの知識も必要となってくるので、技術も知識も必要になります。
しかし、本書を読み返すことで、デバイスドライバの基礎が習得でき、「よく分からない」から「なんとなく分かった」にステップアップできます。実際にプログラムを動かしながら、デバイスドライバの基礎を取得できれば、後は応用していくだけです。
本書は、筆者が実際に試行錯誤して得た知識と、経験を元にて、デバイスドライバ開発の基本的な考え方をやさしく解説しています。デバイスドライバ開発をこれから始めるプログラマーや技術者も、基礎からやさしく学ぶことができます。
なお、本書に掲載のLinuxカーネルのソースコードは、カーネル・バージョン「5.11」をベースとした、ARM向けのものを採用。また、Linuxディストリビューションは、「Ubuntu 18.04」を使用しています。
第1章 デバイスドライバの概念
第2章 開発環境の構築
第3章 デバイスドライバの基本
・hello, world.
・ソースファイルとMakefile
・デバイスドライバの登録方法
・システムコール
・ハードウェアの制御
・デバッグ方法
第4章 Device Tree
第5章 セキュアブート
本書は、コマンドライン経験がまったくない人向けに、マンガでLinuxのコマンドを解説しています。ディレクトリの探り方、Webサーバーのインストール、SSHによる遠隔ログインといった基礎を説明します。
豊富な図解とイラストで超わかる!コマンドラインの基本と操作が、この一冊でしっかり身につきます。Linuxに触れるのがはじめての初心者、サーバー管理者など上を目指す初級者、Linuxコマンドに触れるすべてのビギナーに最良の入門書!コマンドによる“ファイル操作”“テキスト編集”から“ネットワーク”“システム管理”までしっかり学べます。Debian系、Red hat系対応。
Linux PCを最大限に使いこなす方法を紹介します。Linuxに興味を持った人や、Linuxをインストールしたけれど使い道がないと嘆いてる人に、おススメです!
■Linuxは「フリーソフト」が充実しています。主要なジャンルごとにお薦めのフリーソフトを厳選して紹介しています
■Linuxで新しい趣味を始めたり、スキルアップを目指したりしませんか?動画配信やプログラミング開発など、目的別Linux環境の構築方法を紹介しています
■PCでの手作業や処理の実行、クラウドや外部機器と連携した処理の実行などを自動化する方法が分かります
■すべての記事は2025年4月までサポートが保証されている「Ubuntu 20.04 LTS」で動作検証済みです
Linux専門誌の「日経Linux」に掲載した記事を選りすぐり、再検証・再編集してまとめました!
第1章 定番アプリの選び方&市販ゲームの楽しみ方
1-1 定番アプリをサーベイ&チョイス
GUIツールで簡単にインストール
Webブラウザー/動画再生/音楽再生/動画編集/付箋アプリ/テキストエディタ/ターミナル/コードエディタ/Markdownエディタ/ドキュメントビューアー
1-2 Linuxで市販ゲームを楽しむ方法
第2章 目的別Linux環境を構築する4つの方法
Linuxを活用した趣味やスキルアップ!
そのためのLinux環境の構築方法を紹介
2-1 デスクトップ環境
2-3 動画制作・配信環境
2-2 リモートワーク環境
2-4 プログラミング環境
コラム 最初に覚えておきたいLinuxコマンド(1)
ファイル操作編
第3章 面倒な作業を自動化する
「22」のレシピ
面倒な作業は自動化と連携で解決!
Linuxだから実現できる22のレシピ
3-1 GUI操作自動化ツール
3-2 ワークフローツール
3-3 IoT機器/ラズパイ
3-4 Python
3-5 AI
3-6 Chromebook
3-7 Linux標準機能
コラム 最初に覚えておきたいLinuxコマンド(2)
テキスト操作、ネットワーク操作、プロセス操作編
第4章 Windows PCでLinuxが動く
「WSL」を使いこなす
4-1 導入編
4-2 活用編
4-3 GUIアプリ編
コラム 最初に覚えておきたいLinuxコマンド(2)
ユーザー管理、パッケージ管理、モジュール管理編
第5章 旧型PCをLinuxで復活するワザ
5-1 税込1万円の中古PCも快適に動作?!
5-2 旧型PCを最新のLinuxで復活!
Linuxのmanページプロジェクト主催者によるLinuxプログラマ必携のリファレンス。Linux開発者(主にシステムプログラマとアプリケーションプログラマ)にとって、プログラミングする上で必要な情報を一冊で網羅。本書で扱う内容は広範囲にわたり一冊でLinuxプログラミングのほぼすべての情報を知ることができます。Linux/UNIX開発者のバイブルとなる一冊。
本書はLinuxシステムを組み込み機器上に構築するための解説書です。多種多様なアーキテクチャやハードウェア構成に対応するための実践的かつ詳細な情報を提供します。本書の内容は「GNUツールチェーンの構築」「Linuxカーネルの選択、設定、クロスコンパイル、インストール」「開発ツール」「ルートファイルシステムの構築」「記憶装置のセットアップと操作」「ブートローダのインストールと設定」「ネットワークサービスのセットアップ」「デバッグのためのツールとテクニック」など。第2版では、カーネル2.6に対応した全面的な改訂とリアルタイムLinux関連情報(Xenomai、RTパッチなど)を大幅に追加し、開発ツールの解説においてEclipseを大きく取り上げました。
カーネルの機能を拡張する注目の技術を概観できる!
eBPFは、ネットワーク、セキュリティ、オブザーバビリティなど、さまざまなインフラ関連の分野のプラットフォームとして使用されるなど、近年最も注目されている技術の1つです。本書ではカーネルの機能を拡張する方法として注目度の高いeBPFについて、どんな技術であるか、何ができるかを概観することができます。仕組みを理解できるだけでなく、サンプルコードを示して、基本的なeBPFコードの書き方も紹介します。
Linuxこれ一冊で始められます。オフィス、画像・動画、音楽編集、できます。インターネット、メール、Web会議、使えます。
本書はパート1(1日目)〜パート6(6日目)の6分冊として提供します。各パートは4つのセクションからなり、実際の入門講座でも使用できるように、ひとつのセクションが約1時間を目安に完了するように構成されています。
5日目であるパート5では、Linuxにおけるシステム管理の基本について説明する。まず1時間目では、ユーザとグループの管理について解説します。
2時間目と3時間目ではファイルを安全に管理するのに不可欠な、アクセス権や所有者/所有グループの変更方法について解説します。
4時間目ではファイルサイズやディスクの使用状況の調べ方やログファイルの確認方法について解説します。