Linux基本開発ツールの実践ガイド:yum、vim、gcc、make、gdb

Linuxパッケージマネージャ - yum

ソフトウェアのインストール手法

Linux環境でアプリケーションを導入するには、主に3つのアプローチが存在します。

  1. ソースコードからのビルド: ソースコードを取得し、自前でコンパイルして実行ファイルを生成する方法。柔軟なカスタマイズが可能ですが、上級者向けです。
  2. RPMパッケージの利用: RPM形式のバイナリパッケージをダウンロードし、rpmコマンドで導入する方法。依存関係の解決が手動になるため、単体で動作するパッケージに向いています。
  3. yumを用いたインストール: yumコマンドを使用する方法。依存関係を自動で解決してくれるため、最も一般的で推奨されるアプローチです。

yumの概要

yumはFedora、RedHat、CentOSなどで利用されるパッケージ管理フロントエンドです。リポジトリからRPMパッケージを自動で取得し、依存関係を解決しながら一括でインストールを行うため、手間を大幅に削減できます。

注意点として、yumによるインストール処理は同時に1つしか実行できません。また、外部サーバーからパッケージを取得するため、ネットワーク接続が必須です(接続確認はpingコマンドで可能です)。

パッケージの検索

yum listコマンドで利用可能なパッケージ一覧を表示できます。数が膨大になるため、grepと組み合わせて絞り込むのが一般的です。

yum list | grep tree

実行結果の例:

tree.x86_64                         1.7.0-15.el7                         @base

パッケージ名の各部位は以下の意味を持ちます:

  • メジャーバージョン.マイナーバージョン.リリース番号-パッケージビルド番号.アーキテクチャ
  • x86_64は64ビット環境、i686は32ビット環境向けであることを示します。
  • el7はCentOS 7 / RHEL 7向けであることを示します(el6ならバージョン6)。
  • 末尾の@baseはリポジトリ名を表します。

パッケージのインストール

コマンド:sudo yum install [パッケージ名]

sudo yum install lrzsz

必要な依存パッケージが表示されるので、yを入力して確定します。Complete!と表示されれば成功です。

システムディレクトリへの書き込みが発生するため、sudoまたはroot権限が必要です。また、先述の通りyumプロセスの並列実行はできないため注意してください。

ローカルマシンとリモートサーバー間のファイル転送

lrzszパッケージを導入すると、ZModemプロトコルを利用したファイル転送が可能になります。

  • rz -E: ローカルからサーバーへファイルをアップロードする際に選択ダイアログを開きます。
  • sz [ファイル名]: サーバーからローカルへ指定したファイルをダウンロードします。

パッケージのアンインストール

コマンド:sudo yum remove [パッケージ名]

sudo yum remove lrzsz

削除確認のプロンプトでyを入力し、Complete!と表示されれば削除完了です。

Linuxエディタ - vim

vimの基本概念

vimはコードの記述や編集に特化した高機能なテキストエディタであり、以下の主要なモードを中心に操作します。

  • ノーマルモード(コマンドモード): 起動直後のモードです。入力されたキーは文字入力ではなくコマンドとして解釈されます。カーソル移動、コピー、貼り付け、削除、検索・置換などを行います。移動にはh(左)、j(下)、k(上)、l(右)などを用います。
  • 挿入モード(入力モード): 一般的なエディタと同様に、キーボード入力がそのままテキストとして挿入されるモードです。i(カーソル位置)、a(カーソルの右)、o(下に新しい行を追加)などで移行できます。
  • コマンドラインモード(exモード): ファイルの保存や終了、文字列の置換などを実行するモードです。:を入力して移行し、:w(保存)、:q(終了)、:wq(保存して終了)などのコマンドを入力します。

モード間の切り替え

vim [ファイル名]でファイルを開くと、初期状態はノーマルモードです。テキストを入力するには挿入モードへ移行する必要があります。

  • ノーマルモードから挿入モードへ: i(カーソル位置から挿入)、a(カーソルの後ろから挿入)、o(下に1行追加して挿入)
  • ノーマルモードからコマンドラインモードへ: Shift + ;:を入力)
  • 各モードからノーマルモードへ: Escキーを押下

ノーマルモードの主要コマンド

カーソル移動

  • h / j / k / l: 左 / 下 / 上 / 右へ移動
  • $: 行末へ移動
  • ^: 行頭(インデントを除く最初の文字)へ移動
  • gg: ファイルの先頭行へ移動
  • G: ファイルの最終行へ移動
  • nG: n行目へ移動
  • nEnter: n行下へ移動
  • w / b / e: 次の単語の先頭 / 前の単語の先頭 / 現在または次の単語の末尾へ移動

削除

  • x: カーソル位置の文字を削除
  • nx: カーソル位置から右へn文字削除
  • X: カーソルの前の文字を削除
  • nX: カーソルの前へn文字削除
  • dd: カーソル行を切り取り(削除)
  • ndd: カーソル行からn行を切り取り(削除)

コピー&ペースト

  • yy: カーソル行をヤンク(コピー)
  • nyy: カーソル行からn行をヤンク
  • p: ヤンクした内容をカーソルの下に貼り付け

タグ: linux Yum Vim RPM パッケージ管理

6月10日 18:29 投稿