ホームページに戻る

Linuxリンク集2

Linux関係の実践的リンク集です。

主に、検索して引っかかったサイトを載せているので、あまり内容を確かめずに載せています。

間違いやおかしな見当違いのサイトが入っているかもしれませんが、無保証だと思って見てください。

用語集

Linux

OSの中核であるLinuxカーネル、あるいは、OSとしてのGNU/Linuxシステムのこと。

UNIX

AT&Tのベル研究所が開発した、C言語を用いたOSシステムのこと。

GNU

フリーなUNIXのクローンを開発することを目指しているプロジェクトのこと。

GNU/Linux

GNUのユーザーランドとLinuxカーネルを一緒にした、Unixライクなシステムのこと。

オープンソース

ソースコードが公開され、コピーや再配布が可能になっている(二次的著作物のコピーや再配布の制限を許さない場合もある)ソフトウェアのこと。

フリーソフトウェア

GNUの提唱する、自由にコピーや再配布が出来るソフトウェアのこと。

GPL

フリーソフトウェアのための、コピーレフトなライセンス。

X11

UNIXにおける、ウィンドウシステム。これによって、コマンドライン・インターフェースのUNIXでも、GUIによる操作を使用することが出来る。

ディストリビューション紹介

Debian

コミュニティによる、安定したディストリビューション。

Ubuntu

Debianをベースに、速いサイクルでのリリースを目指す、初心者向けのディストリビューション。

RHEL

Fedoraをベースに、会社であるRed Hatが開発する、エンタープライズ・クラスの安定性を持つ、有料のディストリビューション。

Fedora

Red Hatによる、コミュニティ主導の最先端の技術の搭載と開発を目指したディストリビューション。

openSUSE

SUSEと言う、Red Hatのライバル会社による、コミュニティ主導のディストリビューション。有料版もある。

Gentoo Linux

Portageと言う、ソースベースのパッケージ管理システムを搭載した、独特のディストリビューション。

Linux Mint

Ubuntuをベースに、使いやすくして、独自のMATEとCinnamonと言うデスクトップ環境を搭載したディストリビューション。

Arch Linux

ローリングリリースモデルを採用し、シンプル第一の概念で開発される、上級者向けのディストリビューション。

CentOS

オープンソースのRHELのソースコードを再利用した、コミュニティによるRHELクローン。

ライセンス

オープンソースの定義

Open Source Initiativeによるオープンソースの定義。

GPL/LGPL

GNUによるコピーレフトなライセンス。

MPL

Mozillaによるライセンス。

BSDライセンスなど

その他、オープンソースのライセンスは、BSDライセンスのようなコピーレフトでないものを含めて、たくさんあります。

インストール

インストール方法

Linuxのインストール方法。

高スペックなパソコンなら、VirtualBoxの仮想環境にインストールすることも出来ます。

ISOイメージ

CD/DVDへのISOイメージのダウンロードと、その焼き方。

パーティションの分け方

パーティションの分け方。簡単に言えば、/と/usrを分けると、/binなどは/に出来て、/usr/binなどは/usrに出来る。

設定

設定ファイル

設定ファイル。

ネットワーク

ネットワークの設定。

X11

X11の設定。

昔は、xorg.confはXF86Configという名前でした。

ハードウェア

ハードウェアの設定。

印刷

印刷とプリンターの設定。

フォント

フォントの設定。

システム

rootユーザー

UNIXシステムの管理者ユーザー。システムを変え、破壊する権限を持つ。rootになるためには、su -を実行する。

ホームディレクトリ(~/)

ユーザーに与えられた、自由なディレクトリ。

端末とシェル

コマンドを入力し、実行するための、端末とシェルについて。

$や%は一般ユーザーでの操作、#はrootユーザーでの操作。

シェル

基本

シェル

シェルとは、ライン入力からコマンドのプログラムを実行するソフトウェア。Linuxでは、標準的にbashが使われる。

PATH

PATHは環境変数。

初期化ファイル

bashは、初期化設定ファイルを読み込みます。

~/.bashrcはユーザーの設定で、シェルの起動時に毎回読み込まれる。

~/.bash_profileはユーザーの設定で、ログイン時のシェル(ログインシェル)で一回だけ読み込まれる。

/etc/profileは、システムの標準設定で、ログインシェルで読み込まれる。

/etc/bashrcは、システムの標準設定で、シェルの起動時に毎回読み込まれる。

コマンド補完

途中まで打ち込んで、タブキーを押すと、コマンド補完が出来ます。

パイプとリダイレクト

コマンドを組み合わせて使うことが出来るパイプとリダイレクトについて。

シェルスクリプト

bashでのシェルスクリプトについて。

コマンド

コマンド一覧

コマンド一覧。Linuxのコマンドの中で一番基本的なものは、coreutilsと言うパッケージに含まれていますが、さらに高度で便利なコマンドが沢山あります。

man

マニュアルページを表示する。

less

ファイルの中身を表示する。スクロールでファイルの全体を観覧出来る。

ls

ディレクトリの中身のリスト(ファイル一覧)を表示する。

cd

現在のディレクトリを変更(移動)する。

mkdir

ディレクトリを新しく作成する。

cp

ファイルやディレクトリをコピーする。

mv

ファイルやディレクトリを移動・名前変更する。

rm

ファイルやディレクトリを削除する。

cat

ファイルの中身を表示する。ファイルの全体をコマンドラインに出力する。

ln

ファイルのリンク(ハードリンク・シンボリックリンク)を作る。

ps

実行中のプロセス一覧を表示する。

kill/killall

プロセスを強制終了する。Ctrl+Cも使います。

find

ファイルを検索して一覧表示する。

grep

特定の文字列を含む行を抽出する。

tar

アーカイブファイルを作成・展開する。

ソースコード

もっと沢山のコマンドがありますが、coreutilsのgitで基本的なコマンドのコードを読むことが出来ます。

ディレクトリ階層とファイルシステム

基本

ディレクトリの階層構造。

/

ルートディレクトリ。

/home

ユーザーのホームディレクトリ。

/root

rootのホームディレクトリ。

/bin

OSの基本プログラム。アプリケーションのプログラムは/usr/binにあります。

/sbin

OSのシステムプログラム。アプリケーションのシステムプログラムは/usr/sbinにあります。

/usr

アプリケーションなどのファイル。あとで記述するように、さらに階層があります。

/etc

設定ファイル。使っていてもファイルのサイズが変化しないファイルを置く。

/var

ログなどの使っていて変化するファイルを置く。

/tmp

一時的なディレクトリ。

/dev

デバイスファイル。

/mnt

デバイスをマウントするためのディレクトリ。

/proc

システム情報。

/lib

共有ライブラリ。

/boot

OSのブート用ファイル。

/usr/bin

アプリケーションの基本プログラム。沢山のプログラムがあります。

/usr/sbin

アプリケーションのシステムプログラム。

/usr/lib

アプリケーションのライブラリ。

/usr/share

ドキュメントなど、アーキテクチャに依存しないファイル。

/usr/include

C言語用ヘッダファイル。

/usr/local

アプリケーションのローカルなインストール場所。

ファイルシステム

Linuxでは、様々なファイルシステムが利用出来ます。

サーバーとデーモン

デーモン

コマンドで入力するのではなく、システムの最初から最後まで、起動しておいて常駐し、サービスのように恒常的に使われるプログラム。サーバーなどが多い。

ランレベルと起動スクリプト

OSをどのように起動するかを決めるシステム。

起動スクリプトは、デーモンを起動するために使います。

起動

Linuxの起動の流れ。

アプリケーションのインストールとパッケージ管理

ソースからのコンパイルによるインストール

ソースからのインストールには、GNU式のパッケージだと、基本的に ./configure と make と make install を実行する。

パッチを当てる方法

パッチを当てるには、 patch コマンドを使う。

APT/Dpkg(DEB)

Debianのパッケージ管理ツール。

DNF/Yum

Fedoraのパッケージ管理ツール。

RPM

Red Hat系ディストリビューションの低レベルなパッケージ管理システム。

アプリケーション

Emacs

Lispで拡張出来る、高機能テキストエディタ。

vi/vim

昔ながらのUNIXのテキストエディタ。

LibreOffice

オフィススイート。

Firefox

MozillaによるWebブラウザ。

Sylpheed

メールソフト。

Evolution

グループウェアソフト。

Thunderbird

メールソフト。

GIMP

画像処理ソフト。

Mozc

かな漢字変換エンジン。

Anthy

かな漢字変換エンジン。

かな漢字(kkc)

かな漢字変換エンジン。

iBus

多言語入力ソフト。変換エンジンと一緒に使います。

Fcitx

多言語入力ソフト。

uim

多言語入力ソフト。

GNOME

巨大なデスクトップ環境。

KDE

もう一つの巨大なデスクトップ環境。

Xfce

軽量でカスタマイズ性豊かなデスクトップ環境。

LXDE/LXQt

軽量さを第一に考えるデスクトップ環境。

MATE

昔のGNOME 2のフォーク。GNOME 3の操作性を嫌って生まれた。

Cinnamon

MATEとともに生まれた、新しいデスクトップ環境。

Enlightenment

ウィンドウマネージャ。

Window Maker

ウィンドウマネージャ。

Apache

Webサーバー。

Samba

Windowsネットワークとの接続が可能。

GTK+

X11のツールキット。ボタンやメニューなどが含まれる。GNOMEで採用。

Qt

X11のもう一つのツールキット。KDEで採用。見た目が美しい。

カーネル

Linuxカーネル

Linuxカーネルについて。

GNUツールチェイン

GCC

C/C++など、多言語に対応したフリーのコンパイラ集。

GDB

デバッガ。

個人的な設定・使い方など

GNOME3 エクステンション

僕は、GNOME 3に以下のエクステンションを入れて使っています。

詳しくは以下をご覧ください。