2017年 05月 31日
YaST (yast2) による SUSE Linux のパッケージ管理, インストールと削除
SUSE Linux 15 YaSTの基本 (openSUSE Leap, SLE)SUSE Linux でパッケージインストールの色々な方法YaST は単なるパッケージ管理ツール(コマンド)ではなく、インストールが終わった後に管理者が引き続き Linux のセットアップに必要な作業を組み合わせた、言わば「セットアップツールの集合体」のようなものです。SUSE Linux では、インストーラ自体が YaST で構成されています。SUSE Linux のシステム管理者は、初心者から、熟練した技術者まで、全て YaST を通じて必要な設定を行う事ができるため、手元に「コマンドリファレンス」の様なアンチョコ本を頼りに、正確な綴りのコマンドラインを操作する必要はありません。ここで説明するようなパッケージ管理をはじめ、「最低限の作業」を直感的に行えます。
第3章 テキストモードのYaST
パッケージの提供方式は rpm なので、必要であれば、rpm や zypperコマンドもつかいますが、GUI版 yast2 の環境で、Nautilus ファイルマネージャで rpm パッケージを open すると yast のインストーラが自動的に立ち上がります。もちろん、単体で動くような、依存性のないアプリケーションをテキストコンソールからインストールする場合は、rpm コマンドも使いますが、SUSE Linux では依存性の多い複雑なアプリケーションをインストールするには、通常 YaST か zypper を使います。YaST/zypper では、インストールされたパッケージのデータベースを管理しているため、パッケージバージョンや設定ファイルの不整合を避けるため、基本的には "YaST か zypper でパッケージをインストール・管理すべし" という事になります。もっとも、ソース配布されているアプリケーションしかない場合は仕方がないのですが.... YaST パッケージにあるアプリケーションは、コマンドラインや、テキストエディタで設定を書き換えるのではなく YaST インストールする事が便利で一応の原則です。他にも zypper コマンドラインツールもありますが、これは CUI で Man & Machine の対話形式で使うもので、SUSE Linux に慣れたオペレータは YaST が使えない特殊な目的でなければ、基本的には滅多に使わないでしょう。他のディストリビューションでは yum や apt に相当するコマンドです。YaST は正確なオプションの使い方やパッケージの綴りを知らなくても、"search" ダイアログにパッケージのキーワードの一部を入れるだけで、一発インストール、削除、アップデートができます。zypper は詳細にパッケージをコントロールしたり、シェルで一括変更したい場合などの場合は利用することがあります。まず、およその流れとして、SUSE Linux のパッケージのインストールは YaST > zypper > rpm の順で使用します。
パッケージを全てアップデートするには YOU (YaST Online Update) を使います。今利用可能なパッチの一覧が出てくるため、細かなパッケージの綴りが分らなくても、クリック&チェックでアップデートを制御できます。SUSE Linux: YOU(YaST Online Update) によるパッケージアップデート勿論 zypper で一挙にアップデートした方が楽なケースもあります。システム全体にパッチを当てる場合はこちらを使った方が便利です。
# zypper dup
YaST は単にパッケージ管理を行うだけの機能ではありません。YaST では、ネットワークの設定からパッケージ管理、ネットワークのアプリケーションの細かな設定、ユーザ管理、仮想化ハイパーバイザーの管理、サービスの起動から停止まで、ほぼあらゆるオペレータの管理タスクを自動化するツールです。さらに SUSE のインストーラ自体が yast によるものです。したがって SUSE(SLES, openSUSE) Linux のインストールで最初に触れる I/F は YaST インストーラなのです。インストール作業自体をスクリプト化して、大量のコンピュータをセットアップするための Auto YaST 機能もあります。第21章 自動インストール「SUSE Linux で何か困ったことがあれば YaST を使え」が基本です。パッケージのインストールを zypper や rpm で行い、手動で .conf などのファイルを書き換えると、YaST で整合性が保たれない場合があります。依存性の大きな作業は全て YaST を使う事をお勧めします。ただし、yast に実装されていない詳細なチューニングはダイレクトに .conf などのファイルを直接編集する必要があります。 squid proxy などがそうです。また、一般的なディストリビューション問題のないものがあるのに、わざわざソースからコンパイル、インストールする事も、独自機能を組み込んでカスタマイズしたいなど、よほどやむを得ない場合を除いて避けるべきでしょう。YaST のアップデート機能でアップデートすべきです。もっとも YaST でインストールできないモノもあります。プロプラエタリなソフトウェアやデバイスドライバ、オープンソースでもメールソフトや Chrome などのブラウザ、ハードウェアに依存したドライバ類ですね。これらは、別途コンパイルしてインストールするためのインストーラがあったりします。
YaST を使った、パッケージのインストールは# yastまたは# yast2 &を実行します。"yast" はCUI版、"yast2" はX環境での GUI 版です。yast2 は、コマンドラインから起動できるだけではなく、gnome デスクトップのバーにある "Computer" アイコンに登録されています。よく使う機能なので、"Desktop"にショートカットを作っておくと良いでしょう。nautilus ファイルマネージャが使える環境であれば、xming や movaXterm などからクリックして実行できます。直接コンソールでGUI版を使いたい場合は systemd(SLES12) initd(SLES11まで) が Text モード(runlevel:3)の場合は # startx を使います。 Graphical モード(runlevel:5)で起動している場合は、そのまま Computer のアイコンにある "YaST Control Center" を開くだけです。なお、一般ユーザが yast2 を起動する場合は、root パスワードが要求されます。putty や teraterm と言った Windows 用のテキスト端末からは CUI 版 yast を、movaXterm や xming と言ったXサーバーアプリケーションからは yast も yast2 も利用できます。パッケージをインストールするには YaST のメインメニューから Software[TAB] > Software Management[ENTER] を選びます。CUI版 テキスト yast※ここでは優先言語を "English" に設定してあるため、英語表記ですが、SUSE Linux Enterprise Desktop(SLED) や openSuSE をデスクトップ目的で利用する場合は日本語を優先言語にするケースが多いでしょう。その場合、メニュー表記は勿論日本語です。"Filter" で "Search" ボックスから、ヒントとなるキーワードをセットして [Enter] ここでは "apache" を検索してみます。 既に、このサーバーには "Apache2 Web Server" が [i] インストールされている事が判ります。GUI版ではこんな感じです。Filter を "Pasterns" 検索してみます。試しに DNS/DHCP を選ぶと、まだインストールされていない様です。[Space] キーで DNS/DHCP をチェックすると、依存性のある全てのパッケージが [a+] 追加インストール予定のステータスになりました。ここで [TAB] キーで "Accept"[Enter] すると、パッケージ名を知らなくても、 DNS/DHCP に必要なパッケージがインストールされます。 パッケージをインストールしたら、YaST のメインメニューから"Network Service" の DNS を選んでみます。デフォルトでは、起動オプションが "Manually" になっているので、これを "When Booting" に変えます。DNS のゾーン設定や、よく使う DNS のオプションや Forwarder の設定などは全て、このメニュー画面から、TAB, 矢印キー, Space キーなどで設定し "Accept" すると、設定内容が反映されて、自動的にサービスが有効になります。この様に詳細設定をする際にこそアンチョコ本が役立つときでしょう。また、YaST のメインメニューから "Network Services" を選ぶと、例えば DNS という項目があります。これを選択して[Enter] すると、"Yet another Setup" なパッケージをインストールするかどうかの確認ダイアログが出てくるので、ここで "Install" [Enter] すると、自動的にインストールされ、続いて設定画面が出てきます。
パッケージを削除するには、削除するパッケージを選んで[Space]キーをトグルします。"i" から "-" になり、"Accept" すると、パッケージの削除が始まります。しかし、削除するパッケージに依存性がある場合、どのパッケージを残すか、削除するのかを確認"Space"キーでチェックして、中止(Cancel)するか、継続(Try Again)して削除するかを選びます。 GUI 版 yast2 の場合も同様です。逆に、パッケージを追加でインストールする場合も、パッケージの追加を許すか、キャンセルするかを確認しながらインストールします。当たり前ですが Postfix が動いている環境では sendmail は動かないわけですから、パッケージの競合を確認しながら、作業する、という事です。
標準リポジトリに登録されていないプログラム、サービスを利用するには 1 Click Install の機能を使います。標準リポジトリ以外は、商用 SLE(S) SLED の公式なサポートはありません。また非商用の openSuSE の標準リポジトリにも含まれていない、オープンソースの類をどうしても利用したい場合に、自己リスクとして利用することができます。次の opensuse.org の Software 検索機能を使って目的のパッケージを Search します。導入したいコンピューターに標準で含まれている FireFox ブラウザからを開きます。そこで少なくとも GUI 環境は必要です。openSuSE のソフトウェアページの "Search" ボックスからおおよそのパッケージ名をセットして Search すると、いくつかヒットするパッケージの一覧が出てきます。"Direct Install" の下の "Show Other Version" > "Show unstable packages"を開くと、適応できる SLES と openSuSE の各バージョンと、RedHat などの他社ディストリビューションが出てくる場合もあります。"1 Click Install" をクリックすると、自動的に YaST インストーラが起動するので、後はダイアログに従って操作すると、リポジトリの追加からパッケージのダウンロード、インストールまで全て自動で行われます。
なお、 "YaST2 MetaPackages handler"がインストールされていない場合(たまにあります)、 1 Click Install を開くと ymp メタファイルがダウンロードされるだけなので、うまくいかない場合は標準リポジトリから "YaST2 MetaPackages handler" を search してインストールしてください。ただし、常に最新のパッケージが用意されてるわけではないので、比較的、安定した枯れたパッケージを導入するには良いでしょう。※ちなみに GUI 版 YaST はアイコンがシングルクリックで、それぞれのツールが起動してしまいます。ダブルクリックすると、ツールが二重に起動しますので、注意が必要です。これは gnome の設定に関わらず、"仕様" というワナなので、必ず「右クリック > Open」するように癖をつけておきましょう。そもそも管理権限で、何事もダブルクリックしたがるシステム管理者は、私は信用していません。
SUSE で 1 Click インストールができない場合、YaSTにないメニューを追加第7章 インターネットからのパッケージのインストールSUSE Linux 15 YaSTの基本 (openSUSE Leap, SLE)ユーザアカウント名は8文字以内にすべきか?ユーザの命名規則の理由と対策計画停電時の対策 SUSE (SLES11, SLES12,15) XEN/KVM 遮断マニュアルSUSE Linux: YOU(YaST Online Update) によるアップデートopenSUSE Leap 15, YaSTで作る Web LAMP サーバー