Quantcast
Channel: クロの思考ノート
Viewing all 226 articles
Browse latest View live

Fedora 22に日本語入力fcitx-mozcを導入する

$
0
0

こんにちは。今回のテーマは『Fedora 22に日本語入力fcitx-mozcを導入する』です。以前、Fedora 22にFcitxを導入する記事ではfcitx-kkcとfcitx-anthyのみに言及しましたが、今回はfcitx-mozcについて扱います。やはり変換機能が優秀なmozcを使いたいという方も多いと思います。少しでもお役に立てば幸いです。
【関連記事】
Fedora 22に日本語入力Fcitxを導入する



【目次】
fcitx-mozcの導入法はFedora 21と同様
openSUSEのrpmパッケージを活用する際の注意点
fcitx-mozcをインストールしよう
    準備
    インストール
    ibusからfcitxへの切り替え
    fcitx-mozcの設定

fcitx-mozcの導入法はFedora 21と同様

基本的にはFedora 21と導入の方法は変わりません。Fedora 21に関してはコチラをご覧下さい。Fedoraの公式リポジトリからfcitx-mozcのパッケージが配布されていないのでopenSUSE 13.2のパッケージを用いて導入していきます。もちろんソースから自分でビルドする方法もありますが、結構時間もかかるので、openSUSEのパッケージを転用した方が楽だと思います。

openSUSEのrpmパッケージを活用する際の注意点

fedoraの公式リポジトリにfcitx-mozcが無いのでopenSUSEのrpmパッケージを使ってインストールすることにします。ここでちょっとしたコツが必要になります。それは以下3つのパッケージのバージョンを揃えることです。コツというほど大したことではないですが、依存性の問題でインストールできなくなります。

  • fcitx-mozc
  • mozc
  • mozc-gui-tools

上記3つのパッケージの中でmozcパッケージはFedoraの公式パッケージと重複するため衝突を起こします。もし現在ibus-mozcを導入している等の理由でmozcパッケージが入っている場合は以下のコマンドで削除しておいて下さい。

$ sudo dnf remove mozc

fcitx-mozcをインストールしよう

準備

#1 rpmパッケージの準備
http://rpmfind.net/にアクセスしてfcitx-mozc,mozc,mozc-gui-toolsの3つのパッケージのopensuse13.2用のパッケージをダウンロードしてきます。筆者の場合は23bit環境なのでi586版をダウンロードしましたが、64bit環境の方はx86_64版をダウンロードして下さい。前述した通りバージョンには注意して下さい。筆者がダウンロードしたrpmパッケージは以下の3つです。

  • fcitx-mozc-1.15.1868.102-1.4.i586.rpm
  • mozc-1.15.1868.102-1.4.i586.rpm
  • mozc-gui-tools-1.15.1868.102-1.4.i586.rpm

#2 ibus-mozcとmozcのアンインストール
openSUSE用おmozcをインストールすると公式リポジトリのmozcと衝突するのでアンインストールしておきましょう。

$ sudo dnf remove ibus-mozc mozc

#3 fcitxのインストール
詳細はFedora 22に日本語入力fcitxを導入する をご覧ください。ここでは簡単に記載します。既にfcitxが導入済みの場合は飛ばしてOKです。

$ sudo dnf install fcitx fcitx-configtool

※KDE環境の場合はfcitx-configtoolの代わりにkcm-fcitxをインストールします。

$ sudo dnf install fcitx kcm-fcitx

インストール

以下コマンドで先ほどダウンロードした3つのrpmパッケージをまとめてインストールします。少々長いですが一つのコマンドです。

$ sudo dnf install mozc-1.15.1868.102-1.4.i586.rpm fcitx-mozc-1.15.1868.102-1.4.i586.rpm mozc-gui-tools-1.15.1868.102-1.4.i586.rpm

ibusからfcitxへの切り替え

※既にfcitxに切り替えている場合はこの項目は不要ですので飛ばして下さい。

GNOMEの場合はibusとの統合を解除します。

$ gsettings set org.gnome.settings-deamon.plugins.keyboad active false

imsettingでIMを切り替えます。以下コマンドを実行します。

$ imsettings-switch fcitx

もしim-chooserを使いたい方はFedora 21に日本語入力fcitx-anthyを導入する を参考にして下さい。
切り替えが終わったシステムを再起動しましょう。

fcitx-mozcの設定

以下コマンドでfcitxの設定を起動します。KDEの場合はkcm-fcitxを起動して下さい。

$ sudo fcitx-configtool

入力メソッドを追加するために「+」を押してmozcを追加します。
02

「キーボード − 日本語」の下にmozcを追加します。お好みでパネルの設定等をして下さい。
03

これでFedora 21でもfcitx-mozcを使うことが出来るようになりました。
01

最後に

基本的にはFedora 21と同様の方法で導入できるので目新しい情報はなかったと思いますが、パッケージ管理がYUMからDNFに変更されたために少々コマンドが変更されています。個人的にはYUMの後続プロジェクトということなのでコマンドも互換性を持たせて欲しかったなと思います。

Sponsored Link



Linuxの標準エディタを変更する

$
0
0

こんにちは。今回のテーマは『Linuxの標準エディタを変更する』です。CUI環境で作業することが多い方はコンソールエディタにはこだわりがあるのではないでしょうか?sudoの設定をしようとしてvisudoコマンドを実行したらviが起動すると思っていたのにnanoが起動して戸惑った等の経験をした方もいるかも知れません。或いはDebianやUbuntuでnanoしか使ったことの無い方にはviはとても難しく感じると思います。今回はそんなエディタのお話です。
【関連記事】
これで使える!Vimのコマンド集(基本操作編)


【目次】
標準のエディタって?
標準エディタの変更はとても簡単
確認してみよう

標準のエディタって?

Linuxの標準エディタと言われてもピンと来ない方もいるかも知れません。コンソール上で動くCUIアプリケーションがエディタを呼び出すときに立ち上がるエディタは決まっています。

例えばlessでファイルを開いている最中に「v」キーを押すと編集モードとなりエディタが起動します。この時に起動するエディタはディストリビューションによって予め決められていることが多いです。大抵の場合はvimやviが多いと思います。Debianをお使いの場合はnanoが起動すると思います。この他の例としてはsudoコマンドの設定ファイルを開くコマンドとしてvisudoがありますが、この際にも標準エディタが起動します。

自分の環境の標準エディタが何かは起動してみればすぐに分かります。試しにlessで何かのファイルを開いてみましょう。

$ less ~/.bashrc

ここで「v」キーを押してエディタを起動します。この時起動するのが標準エディタに指定されているエディタです。筆者環境ではvimが起動しました。
01

ここで使い慣れていないエディタが起動すると戸惑ってしまう場合もあると思います。vimで編集したかったのにnanoが起動したとか、或いはその逆とか・・・エディタは慣れと好みが別れるツールなので設定をしておくと良いと思います。

標準エディタの変更はとても簡単

前置きが長くなってしまいましたが、標準エディタの変更はとても簡単です。EDITORという環境変数を変更するだけでOKです。~/.profileもしくは~/.bash_profileに以下のフレーズを記載します。今回は~/.profileを編集してnanoを標準エディタに指定します。

$ vim ~/.profile

以下のフレーズを追加します。

export EDITOR=nano  # 標準に指定するエディタ

VimやEmacsを指定したい場合は以下を追記します。

export EDITOR=vim  # Vimを指定する場合
export EDITOR=emacs  # Emacsを指定する場合

この設定を反映させるために以下のコマンドを実行します。

$ source ~/.profile

確認してみよう

では、本当に標準エディタはnanoに切り替わったのでしょうか?試してみましょう。まずは環境変数を確認してみます。

$ export -p | grep EDITOR

nanoが指定されていればOKです。では、実際に試してみましょう。先ほどと同じく~/.bashrcをlessで開きます。

$ less ~/.bashrc

「v」キーを押してエディタを起動します。先ほどはvimが起動しましが今回はnanoが起動しました。
02

最後に

普段CUIアプリケーションをあまり使わない方にとってはコンソール上で起動するエディタが何であれ興味は無いかも知れませんが、普段CUI環境をよく使う方は起動するエディタはお気に入りの方が良いと思います。VimmerもEmacseもnano使いも自分の好みのエディタを設定しておきましょう。

Sponsored Link


Ubuntu 14.04にOpen JDK 8を導入する

$
0
0

こんにちは。今回のテーマは『Ubuntu 14.04にOpen JDK 8を導入する』です。少々話は変わりますが、Javaの開発元のSunを買収したOracleがGoogleを相手に起こした訴訟で米最高裁がGoogleの上訴を棄却したというCNET Japanの記事を興味深く読みました。

本件はAPIの著作権とフェアユースの問題をクローズアップした訴訟問題として有名であり、今回特にオープンな技術として浸透していたJavaについてOracleに有利な判決が出たことはオープンソース界にも影響を与えるのではと思っています。個人的にはOracleの主張も分かるのですが、Oracleがライセンスを主張すればするほどJava開発者を萎縮させJava離れの空気を醸成するのではと思っています。太陽と北風の話を思い出してしまいました。
【関連記事】
Ubuntuで使用するJavaを切り替える


【目次】
Ubuntu 14.04LTSでOpen JDK 8を使いたい
Open Java 8をインストールする
使用するJavaを切り替える

Ubuntu 14.04LTSでOpen JDK 8を使いたい

Ubuntu 14.04LTSの公式リポジトリにOpen JDK 8がない

Java 8で開発を行いたい場合はOracle製JDKを導入するかOpen Java 8を導入するかの選択になると思いますが、残念ながらUbuntu 14.04LTSの公式リポジトリにはOpen JDK 8はありません。Open JDK 8が公式リポジトリに入れられるのは14.10(Utopic Unicon)からです。14.04LTSでUbuntuを使うためには非公式にリポジトリであるPPAを追加する必要があります。(もちろん自分でビルドする猛者はこの限りではありませんよ)

JavaFXを使いたい場合はご注意を

結論から言えばJavaFXを手軽に使いたい場合はOracle版JDK 8を導入する方が良いと思います。ご存知の通りOracle版JDK 8からはJavaFXはJavaの標準GUIとなりJDKに同梱されている状態となっているのでインストールするだけでJavaFXが使用可能です。

一方、Open JDK 8の方はUbuntuではopenjdk-8-jdkとopenjfxという二つのパッケージに分離しています。そしてJavaFXのオープンソース版であるopenjfxは2015年6月末時点ではPPAでも提供できていないようです。(いずれPPAからopenjfxが提供されるかもしれません)

Open JDK 8をインストールする

サードパーティリポジトリの追加

まずはPPA for OpenJDK uploads(restricted) TeamのPPAを追加します。以下のコマンドを実行します。

$ sudo apt-add-repository ppa:openjdk-r/ppa
$ sudo apt-get update

openjdk-8-jdkのインストール

つづいてopenjdk-8-jdkをインストールします。以下コマンドを実行します。

$ sudo apt-get install openjdk-8-jdk

使用するJavaを切り替える

ここでjavaとjavacのバージョンを確認しておきましょう。以下コマンドを実行して確認します。

$ java -version
$ javac -version

それぞれのコマンドに応じてjavaとjavacのバージョンが示されたと思います。もじ初めてjavaを導入した場合は1.8.0などのJava 8のバージョンが示されたと思います。それ以外のバージョンの場合は使用するJavaを切り替える必要があります。

以下コマンドで切り替えて行きましょう。

$ sudo update-alternatives --config java

現在使用可能なjavaの一覧が出るので数字を入力して選択肢ます。

javacについても設定をしておきましょう。

$ sudo update-alternatives --config javac

同様に数字でjavacのバージョンを選択肢ます。

最後にもう一度ヴァージョンを確認しておきましょう。これで以下のように出ればOpen JDK 8が利用可能です。
javaのバージョン
01

javacのバージョン
02

最後に

Java 8からjavaFXが標準GUIになったのでOpen JDK 8においてもopenjdkを導入すればSwingと同じようにGUI構築ができると思っていたのですが、まるで追加ライブラリのような別パッケージになっているのが少々意外でした。Oracle JDK環境でJavaFXを使用して書かれたコードのコンパイルにはopenjfxパッケージが必要なので注意してくださいね。

Sponsored Link


LinuxのFirefoxに手動でFlash Playerをインストールする

$
0
0

こんにちは。今回のテーマは『LinuxのFirefoxに手動でFlash Playerをインストールする』です。2015年6月23日にAdobe Flash Playerの脆弱性情報が公開されました。もう珍しくもなんともない状態であり、Web上のコンテンツにおけるFlashの需要が減ってきていることも相まってますます「いらない子」状態です。しかしアンインストールしてしまうと見れない動画系のサイトがあったりと微妙に不便になってしまい悩ましいところです。早く世の中が脱Flash化すれば良いのですが・・・

今回はそんなFlash Playerをパッケージマネージャに頼らず手動で入れましょうというお話です。公式リポジトリでflashpluginを扱ってないディストリビューションや何故かflashpluginだけインストールできない筆者のような状況の方のお役に立てば幸いです。
【関連記事】
CentOS 7にFlash Playerをインストールする
LinuxでGyaoを観る方法 【2015年版】


【目次】
FirefoxにFlash Playerを手動で入れたい
flashplugin-installerの中身とは
マニュアルでflashpluginをインストールする
flashpluginのインストールを確認する
flashpluginを更新するには
不要になったflashpluginを削除する

FirefoxにFlash Playerを手動で入れたい

Linuxにおけるパッケージの導入は基本的にはディストリビューションの公式パッケージをリポジトリから導入するのが良いと考えています。しかし、筆者の使用しているXubuntu 15.04ではflashpluginだけがリポジトリからのインストールできない状態が続いています。HDDをまっさらに消去してクリーンインストールしたにも関わらず「チェックサムが適合しません」のエラーを出し続けています。

flashpluginを導入するヘルパーとしての”flashplugin-installer”パッケージも導入しましたが、やはりflashpluginの取得は失敗しています。

拉致が開かないので筆者は手動でFlash Player(flashplugin)を導入することにしました。とは言え難しいことは何もありません。”flashplugin-installer”パッケージがやろうとしたことを手動で行うだけです。

flashplugin-installerの中身とは

インストール方法のみ知りたい方は飛ばして頂いて結構です
Ubuntuにflashpluginを導入したい場合、”adobe-flashplugin”と”flashplugin-installer”の二つの選択肢があります。前者の”adobe-flashplugin”はプラグイン本体を含んでおり、後者の”adobe-flashplugin”は文字通りインストーラーとして機能します。
この”adobe-flashplugin”というインストーラーはシェルスクリプトです。要はflashplugin-installerが行っていることはtarファイルを取ってきて展開し、その中に入っているlibflashplayer.soというバイナリファイルを/usr/lib/mozilla/plugins/ディレクトリ内にリンクさせるということをやっています。

以下コマンドでadobe-flashpluginの中身が見れます。

$ less /usr/lib/flashplugin-installer/install_plugin

ここでダウンロードしているtarファイルはUbuntuのサードパーティリポジトリにあるadobe-flashplugin_<バージョン>.org.tar.gzというファイルであり、そのURLは/usr/share/package-data-downloads/flashplugin-installerに記載されています。

マニュアルでflashpluginをインストールする

さて、前置きが長くなりましたが本題です。簡単に言えば”flashplugin-installer”が行っている処理と似ている処理をすれば良いというだけの話です。

flashpluginの入手

flashpluginの本体は本家本元のadobe社のHPから取ってくるのが一番手っ取り早いです。

リンク先のページで32bitか64bitかを選択し、tar.gzファイルを選択してinstall_flash_player_11_linux.<arch>.tar.gzをダウンロードします。今回はinstall_flash_player_11_linux.x86_64.tar.gzを~./Downloadsにダウンロードしました。
01

インストール

ではインストールしていきましょう。筆者の場合は外部からのソフトウェアは/usr/local/myappディレクトリにバイナリファイルを用意し、そこからリンクをするようにしています。コチラの記事も参考にしていただければと思います。必ずしも同じ方法でなくてもOKです。

$ sudo mkdir -p /usr/local/myapp/flashplugin
$ sudo mv ~/Downloads/install_flash_player_11_linux.tar.gz /usr/local/myapp/flashplugin/
$ cd /usr/local/myapp/flashplugin
$ sudo tar -zxvf install_flash_player_11_linux.tar.gz

続いてリンクを貼っていきます。

$ sudo ln -s /usr/local/myapp/flashplugin/libflashplayer.so /usr/lib/mozilla/plugins/

flashpluginのインストールを確認する

ではインストールできたか確認しましょう。Firefoxを起動しアドレスバーに”about:plugins”と入力します。

flashpluginがインストールされている場合には以下のように表示されます。
02

flashpluginを更新するには

パッケージマネージャーの管理外でインストールした場合は当然ながらAPTやYUM等のパッケージ管理システムの恩恵に預かることは出来ません。よってFlash Playerの更新も手動で行う必要があります。特にFlash Playerは頻繁に脆弱性が報告されるので情報に敏感になっている方が良いと思います。

少々手間ですが、インストールと同じ要領で/usr/local/myapp/flashplugin/内のlibflashplayerを新しい物に交換すれば更新は完了です。リンクの貼り直しは不要です。

不要になったflashpluginを削除する

公式リポジトリのflashpluginを使いたくなったり、Flash Player自体が不要になった場合はリンク元の/usr/local/myapp/flashpluginディレクトリを削除すればOKです。ただ、そのままだとリンク切れのシンボリックが残って気持ち悪いですのでリンク先も削除しておきましょう。以下の要領になります。

$ sudo rm -r /usr/local/myapp/flashplugin
$ cd /usr/lib/mozilla/plugins
$ sudo rm $(find -xtype l)

※素直にlibflashplayer.soを削除してもOKです。

最後に

少々長くなってしましましたが、筆者の環境でFlash PlayerがAPTでインストールできなくなったかのは不明のままです。Xubuntu 15.04特有の問題なのか、Ubuntu共有の問題なのかも検証できていません。ともかく今後は手動メンテナンスで更新していって早いところFlash Playerが引退してくれることを祈るばかりです。

Sponsored Link


Debian 8 JessieをCUIで起動する方法

$
0
0

こんにちは。今回のテーマは『Debian 8 JessieをCUIで起動する方法』です。システムを起動する度にディスプレイマネージャーが起動するのは最近のシステムでは当然のようになりましたが、CUIモードで起動したい方も結構多いのではないでしょうか?今回はSystemdを導入したことで話題となったDebian 8 Jessieを取り上げます。
【関連記事】
Fedora 21をCUIで起動する方法


【目次】
DebianのSystemdは他のシステムとちょっとちがう
DebianをCUI起動する方法
補足説明

DebianのSystemdは他のシステムとちょっとちがう

Systemctlではサービスを無効化できないものもある

これまでSystemdの導入されているシステムをCUI起動する方法としてはsystemctlでディスプレイマネージャーをdsiableすれば良いとしてきました。しかし、Debian Jessieではそう簡単にはいかないのです。結論から言えばsystemctlではディスプレイマネージャー出来ませんでした。

Systemctlはupdate-rc.dを起動するトリガー

後半で少々詳しく扱いますが、ディスプレイマネージャーに関してはSystemctlはSysVinitのスクリプトであるupdate-rc.dを起動するトリガーとして機能しています。よってSystemdでdisableしてもgdm3.serviceは無効化されません。

DebianをCUI起動する方法

さて、またしても前置きが長くなりましたが、ここからが本題です。Systemd-sysvの導入によってinittabファイルでrunlevelが設定できなくなったわけなので、起動時のディスプレイマネージャーの起動を止めることでCUI起動に切り替えます。

方法1:default-display-managerを編集する

vimやnano等のエディタで/etc/X11/default-display-managerを開きます。sudoコマンドについてはDebianやFedoraでsudoコマンドを使う

$ sudo vim /etc/X11/default-display-manager

お使いのディスプレイマネージャー(gdm3,kdm,lightdm等)が記載されていると思いますので、以下のようにコメントアウトします。
編集例

# /usr/sbin/gdm3

方法2:gdm.serviceを無効化する

前述の通りsystemctlからはgdm3のサービスは変更できません。よって、systemdが呼び出しているgdm.serviceを直接無効化します。誤って削除しないようにご注意下さい。元に戻したい場合はファイル名を戻せばOKです。

$ cd /lib/systemd/system/
$ sudo mv gdm.service gdm.service.back

再起動するとCUI起動に変わっているはずです。
01

補足説明

本題と外れるので興味ある方のみどうぞ
通常のSystemdがinitシステムの場合systemctlでenableすると/usr/lib/systemd/以下の.serviceファイルを/etc/systemd/以下の各ディレクトリにリンクを貼ることで有効にします。もちろん、Debian 8でもこのように管理されているサービスもあります。しかしディスプレイマネージャー等多くのサービスについてはSytemctlはかつてのSysVinit方式でupdate-rc.dのトリガーとして機能しています。

Systemctlは何をしているのか?

試しにsytemctlを使ってgdm3をenableにしてみます。

$ sudo systemctl enable gdm3

そして以下のコマンドで/etc/rc2.dのgdm3のリンクを見てみます。

$ ls -l /etc/rc2.d/ | grep gdm3

02

今度は反対にsystemctlでdisableして同様にリンクを見てみます。

$ sudo systemctl disable gdm3
$ ls -l /etc/rc2.d/ | grep gdm3

03

頭文字がSからKに変わりました。ご存知の方も多いとは思いますが先頭が”S”で始まる物が起動(Start)、”K”で始まる物が停止(Kill)となります。結局のところSystemctlは/usr/sbin/update-rc.dというPerlで書かれたスクリプトを実行していたのです。

このupdate-rc.dは/etc/init.d/以下のスクリプトを/etc/rc[0-6].d/以下にリンクを生成したり削除する役割をします。まさにSysVinitですね。Debian 8で導入されたSystemdはSysVinitを包括する形でSystemdのように使えるinitシステムと捉えた方が良いかも知れません。(間違ってたらごめんなさい。)

さて、Systemctlがupdate-rc.dを操作することはわかったのですが、このSysVinit方式の管理はディスプレイマネージャーの起動・停止には有効なのでしょうか?試しに以下コマンドを実行して/etc/rc[0-6].d/からgdm3のリンクを削除してみましたが、やはりGDMは起動しました。

$ sudo update-rc.d gdm3 remove

なぜGDMは起動するのか?

なぜ、/etc/rc[0-6].dからリンクを削除してもgdmは起動したのでしょうか?実はgdm3およびgdmのサービスは/lib/systemd/systemに存在し、そこから呼び出されています。このサービスはsystemctlでは操作されないようです。

最後に

CUI起動に切り替えようと思った時にはSystemctlで簡単に設定出来ると思っていたのですが、意外に手こずってしまいました。DebianはSysVinitを包括する形でSystemdへ移行したのだなあと開発陣の苦労を垣間見た気がしました。

Sponsored Link


UbuntuにJavaFX開発環境を構築する

$
0
0

こんにちは。今回のテーマは『UbuntuにJavaFX開発環境を構築する』です。Java 8から標準GUIとして位置づけられたJavaFXは現代的なGUI開発を可能としており、SwingからJavaFXへ切り替えようとしている方も多いのではないでしょうか?今回はUbuntuにJavaFX環境の構築方法をお伝えできればと記事にしました。
【関連記事】
Ubuntu 14.04にOpen JDK 8を導入する


【目次】
Ubuntuのバージョンにご注意を
OpenJDK 8のインストールと設定
openjfxを導入する
JavaFXの動作を確認する

Ubuntuのバージョンにご注意を

Oracle JDK 8の場合はJavaFXを同梱していますので、JDK導入と同時にJavaFXが使える環境が整うのですが、OpenJDK 8にはJavaFXが含まれていないので別途導入する必要があります。

ここで問題になるのが、Ubuntuのバージョンです。残念ながら公式リポジトリでは14.10(Utopic)からのサポートとなっています。また“PPA for OpenJDK uploads (restricted)” teamでも14.04(Trusty)向けのパッケージはビルド失敗している状態(2015年7月現在)で提供されていません。Ubuntu 14.04LTSユーザーの方の現実的な解決方法は残念ながらOracle Java 8の導入ということになると思います。(ご自身でopenjfxをビルド出来る方は除きます)

本記事の内容はUbuntu 14.10以降のバージョンが対象となりますので、ご注意下さい。

OpenJDK 8のインストールと設定

インストール

OpenJDKでJavaFXを使用する場合バージョン8以降でないと、コンパイルおよび実行が出来ません。以下のコマンドでインストールしておきましょう。

$ sudo apt-get install openjdk-8-jdk

設定

javaコマンドとjavacコマンドにopenjdk8を用いるように設定します。

$ sudo update-alternatives --config java
(番号を選択)
$ sudo update-alternatives --config javac
(番号を選択)

openjfxを導入する

以下コマンドでopenjfxを導入するだけです。

$ sudo apt-get install openjfx

JavaFXの動作を確認する

ここまでで準備は完了です。JavaFXが導入され、コンパイル・実行可能か試してみましょう。

ソースの準備

打ち込んだ文字を返すだけの簡単なコードを用意しました。以下のコードを打ち込んだファイルTestApp.javaを用意します。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
 
public class TestApp extends Application {
    Label label;
    Button button;
    TextField textField;
 
    @Override
    public void start(Stage stage) throws Exception {
        label = new Label("入力された文字:");
        textField = new TextField();
        button = new Button("OK");
        //buttonクリック時のアクション
        button.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                String typed_msg = "入力された文字:" + textField.getText();
                label.setText(typed_msg);
            }
        });

        BorderPane borderPane = new BorderPane();
        borderPane.setTop(textField);
        borderPane.setCenter(label);
        borderPane.setBottom(button);
        Scene scene = new Scene(borderPane, 240, 120);
        stage.setScene(scene);
        stage.setTitle("TestApp");
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
 
}

コンパイル

javac TestApp.java

実行

通常のコンソールアプリやSwingアプリと何も変わりません。以下のように実行します。

$ java TestApp &

実行例
図のようなウィンドウアプリケーションが開くと思います。文字を入力してボタンを押すと内容が反映されます。
01

最後に

今後のJavaでのGUIアプリケーションの開発はAWT/SwingからJavaFXに変わっていく流れだと思います。ただ、ユーザーサイドにはAWT/Swingに比べると浸透していない感じもあり、「一度書けばどこでも動く」状況ではないのが少々引っかかるところですね。Ubuntu14.04LTSもまだ現役のバージョンですから、openjfxパッケージを公式サポートして欲しいと密かに願っています。

Sponsored Link


EasyTAG:Linuxで使える音楽ファイルのタグ編集ソフト

$
0
0

こんにちは。今回のテーマは『EasyTAG:Linuxで使える音楽ファイルのタグ編集ソフト』です。Linuxでもオーディオファイルのタグ情報を編集したいという機会はいろいろあると思います。今回は多くのディストリビューションで配布されている非常に便利なEasyTAGを紹介します。(なんだか通販番組みたいになってしまいましたが・・・)
【関連記事】
SoundConverter:Linuxで使えるオーディオファイル変換ソフト


【目次】
オーディオファイルのタグ編集はEasyTAGで
EasyTAGをインストールする
基本的な使い方
便利なタグ編集画面
文字化けだって怖くない
CDDBでトラック情報の検索もできる

オーディオファイルのタグ編集はEasyTAGで

EasyTAGはLinuxユーザーにとってはオーディオファイルタグ編集ソフトの定番とも言えるソフトだと思います。Flac,MP3,Ogg,ACC等のオーディオファイルのタグ編集が可能で、便利で非常に多機能なソフトです。文字情報だけでなく画像情報も編集可能です。

後述しますが、Windows時代からLinuxにオーディファイルを引き継いだためにタグ情報が文字化けしているなどのケースにも対応可能です。

EasyTAGをインストールする

EasyTAGはフリーウェアであり多くのディストリビューションで提供されています。ここでは代表的なディストリビューションでのインストールコマンドを挙げて起きます。(sudoを使わない方はsudo=root#と読み替えて下さい)

Debian系(Debian,Ubuntu,Linux Mint等)

$ sudo apt-get install esaytag

Fedora

$ sudo dnf install easytag

Arch Linux

$ sudo pacman -S easytag

Gentoo Linux

$ sudo emerge --ask media-sound/easytag

基本的な使い方

EasyTAGを起動すると以下のような画面が出ます。まずは左のツリーから音楽ファイルがあるフォルダを選択しましょう。すると中央の画面に音楽ファイルが表示されます。
01
基本的には中央の画面でファイルを選択して右側面の編集画面でタグを編集していきます。編集画面では”Image”を押せば画像情報との結びつけが可能です。音楽ファイルをモバイルや音楽プレーヤーで持ち歩く方には必須の機能かも知れませんね。
02

編集が終わったらメニューの”Save Files”かパネルの保存ボタンを押して変更を保存すればOKです。簡単ですね。
03

しかし、EasyTAGはそんな単純なソフトではありません。タグ編集に便利な機能がいろいろ入っているのです。全ては紹介できませんが主要な機能をご紹介できればと思います。

便利なタグ編集画面

右サイドのタグ編集画面ですが、なかなか便利な機能がついています。活用するとより編集が楽になります。

共通部分の一括入力

入力フォームの右端にボタンがあり、これを押すと選択しているファイル全てに共通して入力することが可能です。アーティス名やアルバム名など共通部分は効率的に入力出来ますね。
04

トラック番号の一括入力

コントロールを押しながらファイルを一つひとつ順番に選択した後に「トラック」の横にある”#”ボタンを押すとトラック番号が連番で入力されます。
05

文字化けだって怖くない

WindowsマシンからLinxuマシンにデータを移行したのは良いけれどオーディをファイルを再生してみたら曲名やアーティスト名が文字化けしていて残念な気持ちになったことはないでしょうか?ファイル名の文字化けは直せてもタグ情報が直らなくてお困りの方もいらっしゃるのでは・・・?そんな時にもEasyTAGは強い見方になります。
こんな症状ありませんか?
06

タグ情報を様々な文字コードで読み込むことが可能です。メニューバーの「編集」(Edit)の「設定」(Preferences)を開き「ID3タグの設定」を選択すると画面下に「IDタグ読み込み時の文字セット」があります。ここにチェックを入れてお好みの文字コードを選択肢ます。WindwosユーザーでしたらShift_jisを選択肢て下さい。
10

これで文字化けしていたタグ情報も読み込めるようになりました。あとはこの情報を保存すればLinuxでも文字化けせずにタグ情報が読み込まれるようになります。
07

CDDBでトラック情報の検索もできる

アルバムを取り込む際にCDDB情報を取得し忘れて曲をPCにに取り込んでしまった時などにはEasyTAGのCDDB機能は大変役に立ちます。EasyTAGでは自動検索としてfreedb.orgとmusicbrainz.orgの二つのデータベースから検索可能であり、高確率でヒットします。Bansheeで取得できなかったトラック情報も取得できる可能性があります。

使い方としてはアルバム全てのファイルを選択肢てパネル上のディスクマークのボタンを押します。
08

別ウィンドウが開きますので「検索」ボタンを押すだけです。
09

CDDBは曲の長さ等の情報から検索を行いますので1曲とか2曲だけの検索は難しいです。(ほぼまともな検索結果になりません)

最後に

駆け足でしたが、EasyTAGの紹介でした。このソフトは音楽を愛するLinuxユーザーには必須のソフトだと思います。まだまだ紹介できなかった細かい機能が沢山ありますが、使いながら発見していただければと思います。No Music No Life.今日も良いLinuxライフを!

Sponsored Link


Fedora 22をインストールした後の環境設定まとめ

$
0
0

こんにちは。今回のテーマは『Fedora 22をインストールした後の環境設定まとめ』です。筆者がfedora 22をインストール後に行った環境設定をまとめてみました。プログラミングの作業環境整備は省きました。基本的にはFedora 21の時の設定まとめと同様ですが、パッケージマネージャがYumからDNFに変更されているためコマンド等を変更してあります。
関連記事:Fedora 21をインストールした後の環境設定まとめ

※本記事ではroot権限での作業はsudoコマンドを用いています。sudoを導入していない場合は$sudo をroot#と読み替えて下さい。



【目次】
システム関連
日本語環境
エディタ関連
サードリポジトリの追加
マルチメディア関連
グラフィック関連

システム関連

sudoコマンドの有効化

筆者はroot権限での実行にはsudoコマンドを使っています。頻繁にrootディレクトリを触る都合もあり、その度にrootユーザーになって作業するのが面倒だからです。賛否両論あると思いますので不要な方は飛ばして下さい。

$ su -
パスワードの入力
root# visudo

上記のコマンドを実行するとエディタVIが起動します。起動するエディタを変更した場合はエディタ関連を参考にしてください。以下の赤字部分のようにrootの下にユーザ名を登録します。

# User privilege specification
root	ALL=(ALL:ALL) ALL
ユーザ名	ALL=(ALL:ALL) ALL

homeディレクトリ名の英語化

これも趣味の問題だとは思うのですが、CLI操作が多い方はディレクトリが日本語だと操作しにくいと思います。以下のコマンドで英語化しておきます。

$ LANG=C xdg-user-dirs-gtk-update

以下のような画面が出てきますので、”Don’t ask me again”にチェックを入れて”Update Names”を選択します。
03

Yum Extender-dnfのインストール

個人的にgnome-softwareがあまり使いやすいと思わないのでYum Extenderを使ってきました。Fedora 22からはyumからdnfに変わったことでYum Extenderもyumex-dnfにパッケージ名が変わっています。そのうち名称も変わるのでしょうか…?

$ sudo dnf install yumex-dnf

gccのインストール

fedoraにはgccが入っていません。ソースからビルドする時不便なのでインストールしておきます。

$ sudo dnf install gcc

OpenJDK開発環境のインストール

javaの実行環境はインストールと同時に入っていますので、Javaを動かすだけなら問題ありませんが、開発環境は手動でインストールする必要があります。Javaで書かれたソースを扱わない場合は特に必要ありません。

$ sudo dnf java-1.8.0-openjdk-devel

日本語環境

ibus-mozcをインストールする

Fedora 22には日本語環境としてibus-kkcが入っていて、これはこれで使いやすいのですが、やはりmozcが使いたいのでibus-mozcをインストールします。
インストール

$ sudo dnf install ibus-mozc

設定
「設定」→ 「地域と言語」を選択
01

「+」を押して「日本語」を選択すると「日本語(mozc)」を追加します。この設定で入力にmozcが加わります。「Super(windowsキー)+ Space」で複数の入力を切り替えられます。
02

もしibusではなくfcitxが使いたい場合は以下の記事を参考にして下さい。
Fedora 22に日本語入力Fcitxを導入する
Fedora 22に日本語入力fcitx-mozcを導入する

エディタ関連

CUIエディタとしてはデフォルトでVIが入っていますが、Vimが使いたいという方やVIの操作が慣れなくてnanoが使いたいという方もいるかと思います。お好みでインストールして下さい。

vimの導入

以下コマンドでvimをインストール

$ sudo dnf install vim

nanoの導入

以下コマンドでnanoをインストール

$ sudo dnf install nano

標準のエディタをnanoに変更する場合は環境変数EDITORを以下の手順でnanoに変更して下さい。詳細はコチラの記事をご覧ください。

$ nano ~/.bashrc

以下のフレーズを一番下に書き込みます。rootでも同様に設定して下さい。

export EDITOR=/usr/bin/nano

サードリポジトリの追加

ここではこの後必要となるリポジトリを設定しておきます。RPM FusionとAdobeのリポジトリを紹介しておきます。GPGキーはパッケージインストール時に自動でインポートされるので割愛します。

RPM Fusionリポジトリ

fedoraのサードリポジトリとして有名なRPM Fusionを入れておきます。dnfではlocalinstallコマンドはなくなりましたのでinstallでローカルファイルもインストールして下さい。

$ cd Download
$ wge thttp://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-22.noarch.rpm
$ wget http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-22.noarch.rpm
$ sudo dnf install rpmfusion-free-release-22.noarch.rpm
$ sudo dnf install rpmfusion-nonfree-release-22.noarch.rpm

Adobeリポジトリ

何かと物議を醸しているFlashPlayerですが、まだ「不要!」と斬って捨てるわけにも行かないのでインストールしています。http://get.adobe.com/jp/flashplayerにアクセスしてLinux用YUM(YUM)をダウンロードします。ダウンロードしたrpmファイルを以下のコマンドでインストールします。

$ sudo dnf install adobe-release-i386-1.0-1.noarch.rpm

マルチメディア関連

ここでは前段で述べたサードリポジトリが追加されている前提で作業を行っています。リポジトリの登録が未だの方は登録してから作業に進んで下さい。

Flash Player Pluginのインストール

以下コマンドでflash Player Pluginをインストールします。

$ sudo dnf install flash-plugin

コーデックのインストール

MP3コーデック

$ sudo dnf install lame

Gstreamerプラグイン
gstreamer1関連を以下コマンドでインストール

$ sudo dnf install gstreamer1 gstreamer1-plugins-good gstreamer1-plugins-bad-freeworld gstreamer1-plugins-ugly

gstreamer旧バージョン関連を以下コマンドでインストール

$ sudo dnf install gstreamer gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly gstreamer-ffmpeg

メディアプレーヤーのインストール

動画プレーヤーVLC
以下コマンドでインストール

$ sudo dnf install vlc

音楽プレーヤーbanshee
以下コマンドでインストール

$ sudo dnf install banshee

グラフィック関連

画像ビュアーviewniorのインストール
GNOME環境ではデフォルトでeye of gnoemが入っていますが、個人的な趣味で入れておきます。画像ビュアーについてはコチラの記事も参照下さい。

$ sudo dnf install viewnior

ドキュメントビュアーEvinceのインストール

PDFの閲覧には欠かせません!

$ sudo dnf install evince

GIMPのインストール

写真の編集等あると便利ですよ。

$ sudo dnf instal gimp

Inkscapeのインストール

イラスト等を描く場合には必要に応じてinkscapeも入れておきます。

$ sudo dnf install inkscape

最後に

個人的な設定メモなので突っ込みたいところは多々あるとは思いますが、この設置でインストールしたての環境よりはマシになったのではないかと思っています。デスクトップマシンとしてマルチメディアに強いマシンにするにはrpmfusion等のサードリポジトリの追加は欠かせないのではと考えています。

Sponsored Link



CentOS 7にLAMP環境を導入する

$
0
0

こんにちは。今回のテーマは『CentOS 7にLAMP環境を導入する』です。LAMPとはLinux Apache MySQL PHPの頭文字を取ったものでWordPressを動かしたりPHPで開発をする際には多く用いられる環境です。CentOS 7上のLAMP環境を構築しましょう。
【関連記事】
Arch LinuxにLAMP環境を導入する方法
Ubuntu14.04にLAMP環境を導入する


【目次】
Apacheの導入と設定
MySQL(MariaDB)の導入と設定
PHPの導入と設定
MariaDBとPHPの連携テスト

Apacheの導入と設定

インストール

まずはApacheをインストールしてウェブサーバーが動く環境を整えましょう。
以下コマンドでApacheをインストールします。

$ sudo yum install httpd

Apacheの設定ファイルは/etc/httpd/conf/httpd.confにあります。このファイルでDocmentRootに設定されている/var/www/htmlがローカルwebサーバーのホームディレクトリになります。

Apacheの起動と起動設定

まずはSystemctlでhttpd.serviceをスタートさせます。

$ sudo systemctl start httpd.service

次に起動時に起動するように以下のように設定します。

$ sudo systemctl enable httpd.service

MySQL(MariaDB)の導入と設定

インストール

次にデータベースを使えるようにします。CentOSは現在ではMySQLを公式リポジトリから外して代わりに、そのフォークであるMariaDBを標準のデータベースとしています。MariaDBはMySQLと互換があり操作感は変わりません。ただしMySQLをインストールしたい場合はリポジトリを追加してインストールします。ここではMariaDBをインストールします。

$ sudo yum install mariadb mariadb-server

MariaDBの起動と起動設定

MariaDBを起動し、今後システム起動時に起動するように設定します。

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

準備が完了したらMariaDBにアクセスします。

$ mysql -u root

このような画面が出ればOKです。
04

PHPの導入と設定

インストール

では次はPHPの準備をしていきます。まずは以下のコマンドでインストールします。

$ sudo yum install php php-mysql

PHPの動作テスト

テスト用のPHPファイルを作成します。

$ cd /var/www/html
$ vim index.php

以下のフレーズをファイルに書き込みます。

<?php
    phpinfo();
?>

ウェブブラウザでhttp://localhost/index.phpにアクセスします。以下のような画面が出ればOKです。
02

MariaDBとPHPの連携テスト

ここまでの作業でLAMP環境は整いました。最後にデータベースにデータを入れてPHPで取り出す簡単なテストを行いましょう。

MariaDBへのデータ入力

ここではPHPでデータを取り出せるか簡単なテストをすることを目的なので、root権限で作業します。

$ mysql -u root

以下はMariaDB(MySQL)での操作です。

mysql> use test
mysql> cleate teable sampletable (
       id int(3),
       color varchar(10)
       primary key(id)
       )
mysql> insert into sampletable values(1,'Black')
mysql> insert into sampletable values(2,'White')
mysql> insert into sampletable values(3,'Blue')

PHPの準備

ではPHP側で呼び出す準備をしましょう。

$ cd /var/www/html/
$ sudo vim test.php

test.phpに以下の内容を書き込みます。

<?php
    $connection = mysql_connect('localhost', 'root', '') or die('error(connect)');

    mysql_select_db('test', $connection) or die('error(select_db)');
    $data = mysql_query('select * from sampletable', $connection);
    
    echo '<ul sytle="list-style-type:square";>';

    while ($row = mysql_fetch_array($data)) {
    echo '<li>'.$row['id'].'.'. $row['name'] .'</li>';
    }
    echo '</ul>';

    mysql_close($connection);
?>

ウェブブラウザでhttp://localhost/test.phpにアクセスします。以下のように表示されてデータベースの内容が反映されればOKです。

  • 1.Black
  • 2.White
  • 3.Blue

お疲れ様でした。これでCentOS 7にLAMP環境を構築できました。

最後に

今回の設定はあくまでLAMP環境の導入です。取り敢えず使える状態にはなりましたが、ApacheやMariaDBにはまだまだ設定すべき点はあります。使っていく中で調整していけば良いと思います。

Sponsored Link


Arch LinuxのXfce環境にゴミ箱を導入する

$
0
0

こんにちは。今回のテーマは『Arch LinuxのXfce環境にゴミ箱を導入する』です。Arch LinuxにXfceを導入した方はゴミ箱がなくて戸惑ったかも知れません。今回はそんな方のお役に立てばと記事を書きました。ゴミ箱にまつわるお話です。
【関連記事】
Arch LinuxにGUIデスクトップ環境を構築する


【目次】
時には昔の話を
ゴミ箱がない?
GVFSのインストール
ゴミ箱の本体はどこ?
デスクトップからゴミ箱を消したい(おまけ)

時には昔の話を

このブログを読んでらっしゃる方なら誰でもパソコンの「ゴミ箱」はご存知ですよね。筆者が初めてゴミ箱に出会ったのはApple社のMacintosh LC520でした。フロッピーのアイコンをドラッグ・アンド・ドロップでゴミ箱に捨てると自動的に排出される仕組みにものすごく興奮したのを覚えています。当時普及してた国産マシンは「ガチャッ」っとボタンを押すことでフロッピーが排出されるタイプでした。なのにMacは画面上でゴミ箱に捨てるだけ・・・!コレを考えた人は天才だと子供心に思いました。まだスティーブ・ジョブズ氏の名前は知りませんでした。

ゴミ箱がない?

Arch Linuxにデスクトップ環境としてXfceを導入した方は最初ゴミ箱がない違和感を覚えなかったでしょうか?XubuntuやFedoraのXfceスピンでは必ずといっていいほどデスクトップにゴミ箱アイコンがあるのですが、pacmanでXfceを単体で入れた場合にはゴミ箱が表示されません。
01

表示されないどころかファイルを削除すると一旦プールされるということはなく完全に消されてしまいます。これは普段使いのデスクトップマシンとしては結構不便なものです。

GVFSのインストール

Xfceのゴミ箱機能はThunar1.2よりGVFSに依存しています。ですからgvfsパッケージをインストールすればゴミ箱は使えるようになります。以下コマンドでインストールします。

$ sudo pacman -S gvfs

もし依存性の問題でインストール出来ない場合はシステムの状態を最新に更新した方が良いと思います。よくudev関連でトラブルが起きます。

インストールが終わったらシステムを再起動するか再ログインします。これでデスクトップ上にはゴミ箱が表示されている筈です。
02

ゴミ箱の本体はどこ?

ご存知の方は多いと思うのですが、このゴミ箱って本体は一体どこにあるのかちょっと知りたいですよね。Tunarのアドレスバーにも”trash:///”の表示しかなく、ゴミ箱に入れたデータがどこに保管されているのか・・・

ディストリビューションによって多少変わることもあるようなのですが、大抵の場合は~/.local/share/Trashにあります。Arch Linuxでもこれは同じです。普段の生活でゴミ箱本体のディレクトリなど知らなくても全く困らないのですが、何事も本質を掴んでおくというのは大事なことのような気がします。

デスクトップからゴミ箱を消したい(おまけ)

やはりデスクトップ環境周りは個人の好みが大きく影響するので、ゴミ箱やホームアイコンをデスクトップ上に表示したくないという方も多いかも知れません。特に最近はデスクトップには何も置かないシンプルなデザインが流行していて、ゴミ箱を置いておくなどもってのほかという方も居るかも知れません。

Xfceでは簡単にデスクトップ上からゴミ箱やホームアイコン等を消すことが可能です。
設定マネージャーを開きます。
03

デスクトップ>>アイコンタブを開き、表示したいアイコンを選択します。
04

最後に

多くの人にとってパソコンの「ゴミ箱」は当たり前になり、あることが当たり前になっています。Arch Linuxのように少しずつシステムを構成するものを肉付けしていくと、思いがけず「あって当たり前だったものがない」新鮮さに出会うことがあります。そして改めてMacintoshが現在の「パソコン」に与えた影響に驚かずには居られません。

Sponsored Link


Linuxの標準エディタを変更する

$
0
0

こんにちは。今回のテーマは『Linuxの標準エディタを変更する』です。CUI環境で作業することが多い方はコンソールエディタにはこだわりがあるのではないでしょうか?sudoの設定をしようとしてvisudoコマンドを実行したらviが起動すると思っていたのにnanoが起動して戸惑った等の経験をした方もいるかも知れません。或いはDebianやUbuntuでnanoしか使ったことの無い方にはviはとても難しく感じると思います。今回はそんなエディタのお話です。
【関連記事】
これで使える!Vimのコマンド集(基本操作編)


【目次】
標準のエディタって?
標準エディタの変更はとても簡単
確認してみよう

標準のエディタって?

Linuxの標準エディタと言われてもピンと来ない方もいるかも知れません。コンソール上で動くCUIアプリケーションがエディタを呼び出すときに立ち上がるエディタは決まっています。

例えばlessでファイルを開いている最中に「v」キーを押すと編集モードとなりエディタが起動します。この時に起動するエディタはディストリビューションによって予め決められていることが多いです。大抵の場合はvimやviが多いと思います。Debianをお使いの場合はnanoが起動すると思います。この他の例としてはsudoコマンドの設定ファイルを開くコマンドとしてvisudoがありますが、この際にも標準エディタが起動します。

自分の環境の標準エディタが何かは起動してみればすぐに分かります。試しにlessで何かのファイルを開いてみましょう。

$ less ~/.bashrc

ここで「v」キーを押してエディタを起動します。この時起動するのが標準エディタに指定されているエディタです。筆者環境ではvimが起動しました。
01

ここで使い慣れていないエディタが起動すると戸惑ってしまう場合もあると思います。vimで編集したかったのにnanoが起動したとか、或いはその逆とか・・・エディタは慣れと好みが別れるツールなので設定をしておくと良いと思います。

標準エディタの変更はとても簡単

前置きが長くなってしまいましたが、標準エディタの変更はとても簡単です。EDITORという環境変数を変更するだけでOKです。~/.profileもしくは~/.bash_profileに以下のフレーズを記載します。今回は~/.profileを編集してnanoを標準エディタに指定します。

$ vim ~/.profile

以下のフレーズを追加します。

export EDITOR=nano  # 標準に指定するエディタ

VimやEmacsを指定したい場合は以下を追記します。

export EDITOR=vim  # Vimを指定する場合
export EDITOR=emacs  # Emacsを指定する場合

この設定を反映させるために以下のコマンドを実行します。

$ source ~/.profile

確認してみよう

では、本当に標準エディタはnanoに切り替わったのでしょうか?試してみましょう。まずは環境変数を確認してみます。

$ export -p | grep EDITOR

nanoが指定されていればOKです。では、実際に試してみましょう。先ほどと同じく~/.bashrcをlessで開きます。

$ less ~/.bashrc

「v」キーを押してエディタを起動します。先ほどはvimが起動しましが今回はnanoが起動しました。
02

最後に

普段CUIアプリケーションをあまり使わない方にとってはコンソール上で起動するエディタが何であれ興味は無いかも知れませんが、普段CUI環境をよく使う方は起動するエディタはお気に入りの方が良いと思います。VimmerもEmacseもnano使いも自分の好みのエディタを設定しておきましょう。

Sponsored Link


Ubuntu 14.04にOpen JDK 8を導入する

$
0
0

こんにちは。今回のテーマは『Ubuntu 14.04にOpen JDK 8を導入する』です。少々話は変わりますが、Javaの開発元のSunを買収したOracleがGoogleを相手に起こした訴訟で米最高裁がGoogleの上訴を棄却したというCNET Japanの記事を興味深く読みました。

本件はAPIの著作権とフェアユースの問題をクローズアップした訴訟問題として有名であり、今回特にオープンな技術として浸透していたJavaについてOracleに有利な判決が出たことはオープンソース界にも影響を与えるのではと思っています。個人的にはOracleの主張も分かるのですが、Oracleがライセンスを主張すればするほどJava開発者を萎縮させJava離れの空気を醸成するのではと思っています。太陽と北風の話を思い出してしまいました。
【関連記事】
Ubuntuで使用するJavaを切り替える


【目次】
Ubuntu 14.04LTSでOpen JDK 8を使いたい
Open Java 8をインストールする
使用するJavaを切り替える

Ubuntu 14.04LTSでOpen JDK 8を使いたい

Ubuntu 14.04LTSの公式リポジトリにOpen JDK 8がない

Java 8で開発を行いたい場合はOracle製JDKを導入するかOpen Java 8を導入するかの選択になると思いますが、残念ながらUbuntu 14.04LTSの公式リポジトリにはOpen JDK 8はありません。Open JDK 8が公式リポジトリに入れられるのは14.10(Utopic Unicon)からです。14.04LTSでUbuntuを使うためには非公式にリポジトリであるPPAを追加する必要があります。(もちろん自分でビルドする猛者はこの限りではありませんよ)

JavaFXを使いたい場合はご注意を

結論から言えばJavaFXを手軽に使いたい場合はOracle版JDK 8を導入する方が良いと思います。ご存知の通りOracle版JDK 8からはJavaFXはJavaの標準GUIとなりJDKに同梱されている状態となっているのでインストールするだけでJavaFXが使用可能です。

一方、Open JDK 8の方はUbuntuではopenjdk-8-jdkとopenjfxという二つのパッケージに分離しています。そしてJavaFXのオープンソース版であるopenjfxは2015年6月末時点ではPPAでも提供できていないようです。(いずれPPAからopenjfxが提供されるかもしれません)

Open JDK 8をインストールする

サードパーティリポジトリの追加

まずはPPA for OpenJDK uploads(restricted) TeamのPPAを追加します。以下のコマンドを実行します。

$ sudo apt-add-repository ppa:openjdk-r/ppa
$ sudo apt-get update

openjdk-8-jdkのインストール

つづいてopenjdk-8-jdkをインストールします。以下コマンドを実行します。

$ sudo apt-get install openjdk-8-jdk

使用するJavaを切り替える

ここでjavaとjavacのバージョンを確認しておきましょう。以下コマンドを実行して確認します。

$ java -version
$ javac -version

それぞれのコマンドに応じてjavaとjavacのバージョンが示されたと思います。もじ初めてjavaを導入した場合は1.8.0などのJava 8のバージョンが示されたと思います。それ以外のバージョンの場合は使用するJavaを切り替える必要があります。

以下コマンドで切り替えて行きましょう。

$ sudo update-alternatives --config java

現在使用可能なjavaの一覧が出るので数字を入力して選択肢ます。

javacについても設定をしておきましょう。

$ sudo update-alternatives --config javac

同様に数字でjavacのバージョンを選択肢ます。

最後にもう一度ヴァージョンを確認しておきましょう。これで以下のように出ればOpen JDK 8が利用可能です。
javaのバージョン
01

javacのバージョン
02

最後に

Java 8からjavaFXが標準GUIになったのでOpen JDK 8においてもopenjdkを導入すればSwingと同じようにGUI構築ができると思っていたのですが、まるで追加ライブラリのような別パッケージになっているのが少々意外でした。Oracle JDK環境でJavaFXを使用して書かれたコードのコンパイルにはopenjfxパッケージが必要なので注意してくださいね。

Sponsored Link


LinuxのFirefoxに手動でFlash Playerをインストールする

$
0
0

こんにちは。今回のテーマは『LinuxのFirefoxに手動でFlash Playerをインストールする』です。2015年6月23日にAdobe Flash Playerの脆弱性情報が公開されました。もう珍しくもなんともない状態であり、Web上のコンテンツにおけるFlashの需要が減ってきていることも相まってますます「いらない子」状態です。しかしアンインストールしてしまうと見れない動画系のサイトがあったりと微妙に不便になってしまい悩ましいところです。早く世の中が脱Flash化すれば良いのですが・・・

今回はそんなFlash Playerをパッケージマネージャに頼らず手動で入れましょうというお話です。公式リポジトリでflashpluginを扱ってないディストリビューションや何故かflashpluginだけインストールできない筆者のような状況の方のお役に立てば幸いです。
【関連記事】
CentOS 7にFlash Playerをインストールする
LinuxでGyaoを観る方法 【2015年版】


【目次】
FirefoxにFlash Playerを手動で入れたい
flashplugin-installerの中身とは
マニュアルでflashpluginをインストールする
flashpluginのインストールを確認する
flashpluginを更新するには
不要になったflashpluginを削除する

FirefoxにFlash Playerを手動で入れたい

Linuxにおけるパッケージの導入は基本的にはディストリビューションの公式パッケージをリポジトリから導入するのが良いと考えています。しかし、筆者の使用しているXubuntu 15.04ではflashpluginだけがリポジトリからのインストールできない状態が続いています。HDDをまっさらに消去してクリーンインストールしたにも関わらず「チェックサムが適合しません」のエラーを出し続けています。

flashpluginを導入するヘルパーとしての”flashplugin-installer”パッケージも導入しましたが、やはりflashpluginの取得は失敗しています。

拉致が開かないので筆者は手動でFlash Player(flashplugin)を導入することにしました。とは言え難しいことは何もありません。”flashplugin-installer”パッケージがやろうとしたことを手動で行うだけです。

flashplugin-installerの中身とは

インストール方法のみ知りたい方は飛ばして頂いて結構です
Ubuntuにflashpluginを導入したい場合、”adobe-flashplugin”と”flashplugin-installer”の二つの選択肢があります。前者の”adobe-flashplugin”はプラグイン本体を含んでおり、後者の”adobe-flashplugin”は文字通りインストーラーとして機能します。
この”adobe-flashplugin”というインストーラーはシェルスクリプトです。要はflashplugin-installerが行っていることはtarファイルを取ってきて展開し、その中に入っているlibflashplayer.soというバイナリファイルを/usr/lib/mozilla/plugins/ディレクトリ内にリンクさせるということをやっています。

以下コマンドでadobe-flashpluginの中身が見れます。

$ less /usr/lib/flashplugin-installer/install_plugin

ここでダウンロードしているtarファイルはUbuntuのサードパーティリポジトリにあるadobe-flashplugin_<バージョン>.org.tar.gzというファイルであり、そのURLは/usr/share/package-data-downloads/flashplugin-installerに記載されています。

マニュアルでflashpluginをインストールする

さて、前置きが長くなりましたが本題です。簡単に言えば”flashplugin-installer”が行っている処理と似ている処理をすれば良いというだけの話です。

flashpluginの入手

flashpluginの本体は本家本元のadobe社のHPから取ってくるのが一番手っ取り早いです。

リンク先のページで32bitか64bitかを選択し、tar.gzファイルを選択してinstall_flash_player_11_linux.<arch>.tar.gzをダウンロードします。今回はinstall_flash_player_11_linux.x86_64.tar.gzを~./Downloadsにダウンロードしました。
01

インストール

ではインストールしていきましょう。筆者の場合は外部からのソフトウェアは/usr/local/myappディレクトリにバイナリファイルを用意し、そこからリンクをするようにしています。コチラの記事も参考にしていただければと思います。必ずしも同じ方法でなくてもOKです。

$ sudo mkdir -p /usr/local/myapp/flashplugin
$ sudo mv ~/Downloads/install_flash_player_11_linux.tar.gz /usr/local/myapp/flashplugin/
$ cd /usr/local/myapp/flashplugin
$ sudo tar -zxvf install_flash_player_11_linux.tar.gz

続いてリンクを貼っていきます。

$ sudo ln -s /usr/local/myapp/flashplugin/libflashplayer.so /usr/lib/mozilla/plugins/

flashpluginのインストールを確認する

ではインストールできたか確認しましょう。Firefoxを起動しアドレスバーに”about:plugins”と入力します。

flashpluginがインストールされている場合には以下のように表示されます。
02

flashpluginを更新するには

パッケージマネージャーの管理外でインストールした場合は当然ながらAPTやYUM等のパッケージ管理システムの恩恵に預かることは出来ません。よってFlash Playerの更新も手動で行う必要があります。特にFlash Playerは頻繁に脆弱性が報告されるので情報に敏感になっている方が良いと思います。

少々手間ですが、インストールと同じ要領で/usr/local/myapp/flashplugin/内のlibflashplayerを新しい物に交換すれば更新は完了です。リンクの貼り直しは不要です。

不要になったflashpluginを削除する

公式リポジトリのflashpluginを使いたくなったり、Flash Player自体が不要になった場合はリンク元の/usr/local/myapp/flashpluginディレクトリを削除すればOKです。ただ、そのままだとリンク切れのシンボリックが残って気持ち悪いですのでリンク先も削除しておきましょう。以下の要領になります。

$ sudo rm -r /usr/local/myapp/flashplugin
$ cd /usr/lib/mozilla/plugins
$ sudo rm $(find -xtype l)

※素直にlibflashplayer.soを削除してもOKです。

最後に

少々長くなってしましましたが、筆者の環境でFlash PlayerがAPTでインストールできなくなったかのは不明のままです。Xubuntu 15.04特有の問題なのか、Ubuntu共有の問題なのかも検証できていません。ともかく今後は手動メンテナンスで更新していって早いところFlash Playerが引退してくれることを祈るばかりです。

Sponsored Link


Debian 8 JessieをCUIで起動する方法

$
0
0

こんにちは。今回のテーマは『Debian 8 JessieをCUIで起動する方法』です。システムを起動する度にディスプレイマネージャーが起動するのは最近のシステムでは当然のようになりましたが、CUIモードで起動したい方も結構多いのではないでしょうか?今回はSystemdを導入したことで話題となったDebian 8 Jessieを取り上げます。
【関連記事】
Fedora 21をCUIで起動する方法


【目次】
DebianのSystemdは他のシステムとちょっとちがう
DebianをCUI起動する方法
補足説明

DebianのSystemdは他のシステムとちょっとちがう

Systemctlではサービスを無効化できないものもある

これまでSystemdの導入されているシステムをCUI起動する方法としてはsystemctlでディスプレイマネージャーをdsiableすれば良いとしてきました。しかし、Debian Jessieではそう簡単にはいかないのです。結論から言えばsystemctlではディスプレイマネージャー出来ませんでした。

Systemctlはupdate-rc.dを起動するトリガー

後半で少々詳しく扱いますが、ディスプレイマネージャーに関してはSystemctlはSysVinitのスクリプトであるupdate-rc.dを起動するトリガーとして機能しています。よってSystemdでdisableしてもgdm3.serviceは無効化されません。

DebianをCUI起動する方法

さて、またしても前置きが長くなりましたが、ここからが本題です。Systemd-sysvの導入によってinittabファイルでrunlevelが設定できなくなったわけなので、起動時のディスプレイマネージャーの起動を止めることでCUI起動に切り替えます。以下の方法1もしくは方法2のどちらかを行えば良いと思います。個人的には方法1がオススメです。

方法1:default-display-managerを編集する(推奨)

vimやnano等のエディタで/etc/X11/default-display-managerを開きます。sudoコマンドについてはDebianやFedoraでsudoコマンドを使う

$ sudo vim /etc/X11/default-display-manager

お使いのディスプレイマネージャー(gdm3,kdm,lightdm等)が記載されていると思いますので、以下のようにコメントアウトします。
編集例

# /usr/sbin/gdm3

方法2:gdm.serviceを無効化する

※方法1を行っていれば以下の操作は不要です。
前述の通りsystemctlからはgdm3のサービスは変更できません。よって、systemdが呼び出しているgdm.serviceを直接無効化します。誤って削除しないようにご注意下さい。元に戻したい場合はファイル名を戻せばOKです。

$ cd /lib/systemd/system/
$ sudo mv gdm.service gdm.service.back

再起動するとCUI起動に変わっているはずです。
01

補足説明

本題と外れるので興味ある方のみどうぞ
通常のSystemdがinitシステムの場合systemctlでenableすると/usr/lib/systemd/以下の.serviceファイルを/etc/systemd/以下の各ディレクトリにリンクを貼ることで有効にします。もちろん、Debian 8でもこのように管理されているサービスもあります。しかしディスプレイマネージャー等多くのサービスについてはSytemctlはかつてのSysVinit方式でupdate-rc.dのトリガーとして機能しています。

Systemctlは何をしているのか?

試しにsytemctlを使ってgdm3をenableにしてみます。

$ sudo systemctl enable gdm3

そして以下のコマンドで/etc/rc2.dのgdm3のリンクを見てみます。

$ ls -l /etc/rc2.d/ | grep gdm3

04

今度は反対にsystemctlでdisableして同様にリンクを見てみます。

$ sudo systemctl disable gdm3
$ ls -l /etc/rc2.d/ | grep gdm3

03

頭文字がSからKに変わりました。ご存知の方も多いとは思いますが先頭が”S”で始まる物が起動(Start)、”K”で始まる物が停止(Kill)となります。結局のところSystemctlは/usr/sbin/update-rc.dというPerlで書かれたスクリプトを実行していたのです。

このupdate-rc.dは/etc/init.d/以下のスクリプトを/etc/rc[0-6].d/以下にリンクを生成したり削除する役割をします。まさにSysVinitですね。Debian 8で導入されたSystemdはSysVinitを包括する形でSystemdのように使えるinitシステムと捉えた方が良いかも知れません。(間違ってたらごめんなさい。)

さて、Systemctlがupdate-rc.dを操作することはわかったのですが、このSysVinit方式の管理はディスプレイマネージャーの起動・停止には有効なのでしょうか?試しに以下コマンドを実行して/etc/rc[0-6].d/からgdm3のリンクを削除してみましたが、やはりGDMは起動しました。

$ sudo update-rc.d gdm3 remove

なぜGDMは起動するのか?

なぜ、/etc/rc[0-6].dからリンクを削除してもgdmは起動したのでしょうか?実はgdm3およびgdmのサービスは/lib/systemd/systemに存在し、そこから呼び出されています。このサービスはsystemctlでは操作されないようです。

最後に

CUI起動に切り替えようと思った時にはSystemctlで簡単に設定出来ると思っていたのですが、意外に手こずってしまいました。DebianはSysVinitを包括する形でSystemdへ移行したのだなあと開発陣の苦労を垣間見た気がしました。

Sponsored Link


UbuntuにJavaFX開発環境を構築する

$
0
0

こんにちは。今回のテーマは『UbuntuにJavaFX開発環境を構築する』です。Java 8から標準GUIとして位置づけられたJavaFXは現代的なGUI開発を可能としており、SwingからJavaFXへ切り替えようとしている方も多いのではないでしょうか?今回はUbuntuにJavaFX環境の構築方法をお伝えできればと記事にしました。
【関連記事】
Ubuntu 14.04にOpen JDK 8を導入する


【目次】
Ubuntuのバージョンにご注意を
OpenJDK 8のインストールと設定
openjfxを導入する
JavaFXの動作を確認する

Ubuntuのバージョンにご注意を

Oracle JDK 8の場合はJavaFXを同梱していますので、JDK導入と同時にJavaFXが使える環境が整うのですが、OpenJDK 8にはJavaFXが含まれていないので別途導入する必要があります。

ここで問題になるのが、Ubuntuのバージョンです。残念ながら公式リポジトリでは14.10(Utopic)からのサポートとなっています。また“PPA for OpenJDK uploads (restricted)” teamでも14.04(Trusty)向けのパッケージはビルド失敗している状態(2015年7月現在)で提供されていません。Ubuntu 14.04LTSユーザーの方の現実的な解決方法は残念ながらOracle Java 8の導入ということになると思います。(ご自身でopenjfxをビルド出来る方は除きます)

本記事の内容はUbuntu 14.10以降のバージョンが対象となりますので、ご注意下さい。

OpenJDK 8のインストールと設定

インストール

OpenJDKでJavaFXを使用する場合バージョン8以降でないと、コンパイルおよび実行が出来ません。以下のコマンドでインストールしておきましょう。

$ sudo apt-get install openjdk-8-jdk

設定

javaコマンドとjavacコマンドにopenjdk8を用いるように設定します。

$ sudo update-alternatives --config java
(番号を選択)
$ sudo update-alternatives --config javac
(番号を選択)

openjfxを導入する

以下コマンドでopenjfxを導入するだけです。

$ sudo apt-get install openjfx

JavaFXの動作を確認する

ここまでで準備は完了です。JavaFXが導入され、コンパイル・実行可能か試してみましょう。

ソースの準備

打ち込んだ文字を返すだけの簡単なコードを用意しました。以下のコードを打ち込んだファイルTestApp.javaを用意します。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
 
public class TestApp extends Application {
    Label label;
    Button button;
    TextField textField;
 
    @Override
    public void start(Stage stage) throws Exception {
        label = new Label("入力された文字:");
        textField = new TextField();
        button = new Button("OK");
        //buttonクリック時のアクション
        button.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                String typed_msg = "入力された文字:" + textField.getText();
                label.setText(typed_msg);
            }
        });

        BorderPane borderPane = new BorderPane();
        borderPane.setTop(textField);
        borderPane.setCenter(label);
        borderPane.setBottom(button);
        Scene scene = new Scene(borderPane, 240, 120);
        stage.setScene(scene);
        stage.setTitle("TestApp");
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
 
}

コンパイル

javac TestApp.java

実行

通常のコンソールアプリやSwingアプリと何も変わりません。以下のように実行します。

$ java TestApp &

実行例
図のようなウィンドウアプリケーションが開くと思います。文字を入力してボタンを押すと内容が反映されます。
01

最後に

今後のJavaでのGUIアプリケーションの開発はAWT/SwingからJavaFXに変わっていく流れだと思います。ただ、ユーザーサイドにはAWT/Swingに比べると浸透していない感じもあり、「一度書けばどこでも動く」状況ではないのが少々引っかかるところですね。Ubuntu14.04LTSもまだ現役のバージョンですから、openjfxパッケージを公式サポートして欲しいと密かに願っています。

Sponsored Link



EasyTAG:Linuxで使える音楽ファイルのタグ編集ソフト

$
0
0

こんにちは。今回のテーマは『EasyTAG:Linuxで使える音楽ファイルのタグ編集ソフト』です。Linuxでもオーディオファイルのタグ情報を編集したいという機会はいろいろあると思います。今回は多くのディストリビューションで配布されている非常に便利なEasyTAGを紹介します。(なんだか通販番組みたいになってしまいましたが・・・)
【関連記事】
SoundConverter:Linuxで使えるオーディオファイル変換ソフト


【目次】
オーディオファイルのタグ編集はEasyTAGで
EasyTAGをインストールする
基本的な使い方
便利なタグ編集画面
文字化けだって怖くない
CDDBでトラック情報の検索もできる

オーディオファイルのタグ編集はEasyTAGで

EasyTAGはLinuxユーザーにとってはオーディオファイルタグ編集ソフトの定番とも言えるソフトだと思います。Flac,MP3,Ogg,ACC等のオーディオファイルのタグ編集が可能で、便利で非常に多機能なソフトです。文字情報だけでなく画像情報も編集可能です。

後述しますが、Windows時代からLinuxにオーディファイルを引き継いだためにタグ情報が文字化けしているなどのケースにも対応可能です。

EasyTAGをインストールする

EasyTAGはフリーウェアであり多くのディストリビューションで提供されています。ここでは代表的なディストリビューションでのインストールコマンドを挙げて起きます。(sudoを使わない方はsudo=root#と読み替えて下さい)

Debian系(Debian,Ubuntu,Linux Mint等)

$ sudo apt-get install esaytag

Fedora

$ sudo dnf install easytag

Arch Linux

$ sudo pacman -S easytag

Gentoo Linux

$ sudo emerge --ask media-sound/easytag

基本的な使い方

EasyTAGを起動すると以下のような画面が出ます。まずは左のツリーから音楽ファイルがあるフォルダを選択しましょう。すると中央の画面に音楽ファイルが表示されます。
01
基本的には中央の画面でファイルを選択して右側面の編集画面でタグを編集していきます。編集画面では”Image”を押せば画像情報との結びつけが可能です。音楽ファイルをモバイルや音楽プレーヤーで持ち歩く方には必須の機能かも知れませんね。
02

編集が終わったらメニューの”Save Files”かパネルの保存ボタンを押して変更を保存すればOKです。簡単ですね。
03

しかし、EasyTAGはそんな単純なソフトではありません。タグ編集に便利な機能がいろいろ入っているのです。全ては紹介できませんが主要な機能をご紹介できればと思います。

便利なタグ編集画面

右サイドのタグ編集画面ですが、なかなか便利な機能がついています。活用するとより編集が楽になります。

共通部分の一括入力

入力フォームの右端にボタンがあり、これを押すと選択しているファイル全てに共通して入力することが可能です。アーティス名やアルバム名など共通部分は効率的に入力出来ますね。
04

トラック番号の一括入力

コントロールを押しながらファイルを一つひとつ順番に選択した後に「トラック」の横にある”#”ボタンを押すとトラック番号が連番で入力されます。
05

文字化けだって怖くない

WindowsマシンからLinxuマシンにデータを移行したのは良いけれどオーディをファイルを再生してみたら曲名やアーティスト名が文字化けしていて残念な気持ちになったことはないでしょうか?ファイル名の文字化けは直せてもタグ情報が直らなくてお困りの方もいらっしゃるのでは・・・?そんな時にもEasyTAGは強い見方になります。
こんな症状ありませんか?
06

タグ情報を様々な文字コードで読み込むことが可能です。メニューバーの「編集」(Edit)の「設定」(Preferences)を開き「ID3タグの設定」を選択すると画面下に「IDタグ読み込み時の文字セット」があります。ここにチェックを入れてお好みの文字コードを選択肢ます。WindwosユーザーでしたらShift_jisを選択肢て下さい。
10

これで文字化けしていたタグ情報も読み込めるようになりました。あとはこの情報を保存すればLinuxでも文字化けせずにタグ情報が読み込まれるようになります。
07

CDDBでトラック情報の検索もできる

アルバムを取り込む際にCDDB情報を取得し忘れて曲をPCにに取り込んでしまった時などにはEasyTAGのCDDB機能は大変役に立ちます。EasyTAGでは自動検索としてfreedb.orgとmusicbrainz.orgの二つのデータベースから検索可能であり、高確率でヒットします。Bansheeで取得できなかったトラック情報も取得できる可能性があります。

使い方としてはアルバム全てのファイルを選択肢てパネル上のディスクマークのボタンを押します。
08

別ウィンドウが開きますので「検索」ボタンを押すだけです。
09

CDDBは曲の長さ等の情報から検索を行いますので1曲とか2曲だけの検索は難しいです。(ほぼまともな検索結果になりません)

最後に

駆け足でしたが、EasyTAGの紹介でした。このソフトは音楽を愛するLinuxユーザーには必須のソフトだと思います。まだまだ紹介できなかった細かい機能が沢山ありますが、使いながら発見していただければと思います。No Music No Life.今日も良いLinuxライフを!

Sponsored Link


Fedora 22をインストールした後の環境設定まとめ

$
0
0

こんにちは。今回のテーマは『Fedora 22をインストールした後の環境設定まとめ』です。筆者がfedora 22をインストール後に行った環境設定をまとめてみました。プログラミングの作業環境整備は省きました。基本的にはFedora 21の時の設定まとめと同様ですが、パッケージマネージャがYumからDNFに変更されているためコマンド等を変更してあります。
関連記事:Fedora 21をインストールした後の環境設定まとめ

※本記事ではroot権限での作業はsudoコマンドを用いています。sudoを導入していない場合は$sudo をroot#と読み替えて下さい。



【目次】
システム関連
日本語環境
エディタ関連
サードリポジトリの追加
マルチメディア関連
グラフィック関連

システム関連

sudoコマンドの有効化

筆者はroot権限での実行にはsudoコマンドを使っています。頻繁にrootディレクトリを触る都合もあり、その度にrootユーザーになって作業するのが面倒だからです。賛否両論あると思いますので不要な方は飛ばして下さい。

$ su -
パスワードの入力
root# visudo

上記のコマンドを実行するとエディタVIが起動します。起動するエディタを変更した場合はエディタ関連を参考にしてください。以下の赤字部分のようにrootの下にユーザ名を登録します。

# User privilege specification
root	ALL=(ALL:ALL) ALL
ユーザ名	ALL=(ALL:ALL) ALL

homeディレクトリ名の英語化

これも趣味の問題だとは思うのですが、CLI操作が多い方はディレクトリが日本語だと操作しにくいと思います。以下のコマンドで英語化しておきます。

$ LANG=C xdg-user-dirs-gtk-update

以下のような画面が出てきますので、”Don’t ask me again”にチェックを入れて”Update Names”を選択します。
03

Yum Extender-dnfのインストール

個人的にgnome-softwareがあまり使いやすいと思わないのでYum Extenderを使ってきました。Fedora 22からはyumからdnfに変わったことでYum Extenderもyumex-dnfにパッケージ名が変わっています。そのうち名称も変わるのでしょうか…?

$ sudo dnf install yumex-dnf

gccのインストール

fedoraにはgccが入っていません。ソースからビルドする時不便なのでインストールしておきます。

$ sudo dnf install gcc

OpenJDK開発環境のインストール

javaの実行環境はインストールと同時に入っていますので、Javaを動かすだけなら問題ありませんが、開発環境は手動でインストールする必要があります。Javaで書かれたソースを扱わない場合は特に必要ありません。

$ sudo dnf java-1.8.0-openjdk-devel

日本語環境

ibus-mozcをインストールする

Fedora 22には日本語環境としてibus-kkcが入っていて、これはこれで使いやすいのですが、やはりmozcが使いたいのでibus-mozcをインストールします。
インストール

$ sudo dnf install ibus-mozc

設定
「設定」→ 「地域と言語」を選択
01

「+」を押して「日本語」を選択すると「日本語(mozc)」を追加します。この設定で入力にmozcが加わります。「Super(windowsキー)+ Space」で複数の入力を切り替えられます。
02

もしibusではなくfcitxが使いたい場合は以下の記事を参考にして下さい。
Fedora 22に日本語入力Fcitxを導入する
Fedora 22に日本語入力fcitx-mozcを導入する

エディタ関連

CUIエディタとしてはデフォルトでVIが入っていますが、Vimが使いたいという方やVIの操作が慣れなくてnanoが使いたいという方もいるかと思います。お好みでインストールして下さい。

vimの導入

以下コマンドでvimをインストール

$ sudo dnf install vim

nanoの導入

以下コマンドでnanoをインストール

$ sudo dnf install nano

標準のエディタをnanoに変更する場合は環境変数EDITORを以下の手順でnanoに変更して下さい。詳細はコチラの記事をご覧ください。

$ nano ~/.bashrc

以下のフレーズを一番下に書き込みます。rootでも同様に設定して下さい。

export EDITOR=/usr/bin/nano

サードリポジトリの追加

ここではこの後必要となるリポジトリを設定しておきます。RPM FusionとAdobeのリポジトリを紹介しておきます。GPGキーはパッケージインストール時に自動でインポートされるので割愛します。

RPM Fusionリポジトリ

fedoraのサードリポジトリとして有名なRPM Fusionを入れておきます。dnfではlocalinstallコマンドはなくなりましたのでinstallでローカルファイルもインストールして下さい。

$ cd Download
$ wge thttp://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-22.noarch.rpm
$ wget http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-22.noarch.rpm
$ sudo dnf install rpmfusion-free-release-22.noarch.rpm
$ sudo dnf install rpmfusion-nonfree-release-22.noarch.rpm

Adobeリポジトリ

何かと物議を醸しているFlashPlayerですが、まだ「不要!」と斬って捨てるわけにも行かないのでインストールしています。http://get.adobe.com/jp/flashplayerにアクセスしてLinux用YUM(YUM)をダウンロードします。ダウンロードしたrpmファイルを以下のコマンドでインストールします。

$ sudo dnf install adobe-release-i386-1.0-1.noarch.rpm

マルチメディア関連

ここでは前段で述べたサードリポジトリが追加されている前提で作業を行っています。リポジトリの登録が未だの方は登録してから作業に進んで下さい。

Flash Player Pluginのインストール

以下コマンドでflash Player Pluginをインストールします。

$ sudo dnf install flash-plugin

コーデックのインストール

MP3コーデック

$ sudo dnf install lame

Gstreamerプラグイン
gstreamer1関連を以下コマンドでインストール

$ sudo dnf install gstreamer1 gstreamer1-plugins-good gstreamer1-plugins-bad-freeworld gstreamer1-plugins-ugly

gstreamer旧バージョン関連を以下コマンドでインストール

$ sudo dnf install gstreamer gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly gstreamer-ffmpeg

メディアプレーヤーのインストール

動画プレーヤーVLC
以下コマンドでインストール

$ sudo dnf install vlc

音楽プレーヤーbanshee
以下コマンドでインストール

$ sudo dnf install banshee

グラフィック関連

画像ビュアーviewniorのインストール
GNOME環境ではデフォルトでeye of gnoemが入っていますが、個人的な趣味で入れておきます。画像ビュアーについてはコチラの記事も参照下さい。

$ sudo dnf install viewnior

ドキュメントビュアーEvinceのインストール

PDFの閲覧には欠かせません!

$ sudo dnf install evince

GIMPのインストール

写真の編集等あると便利ですよ。

$ sudo dnf instal gimp

Inkscapeのインストール

イラスト等を描く場合には必要に応じてinkscapeも入れておきます。

$ sudo dnf install inkscape

最後に

個人的な設定メモなので突っ込みたいところは多々あるとは思いますが、この設置でインストールしたての環境よりはマシになったのではないかと思っています。デスクトップマシンとしてマルチメディアに強いマシンにするにはrpmfusion等のサードリポジトリの追加は欠かせないのではと考えています。

Sponsored Link


CentOS 7にLAMP環境を導入する

$
0
0

こんにちは。今回のテーマは『CentOS 7にLAMP環境を導入する』です。LAMPとはLinux Apache MySQL PHPの頭文字を取ったものでWordPressを動かしたりPHPで開発をする際には多く用いられる環境です。CentOS 7上のLAMP環境を構築しましょう。
【関連記事】
Arch LinuxにLAMP環境を導入する方法
Ubuntu14.04にLAMP環境を導入する


【目次】
Apacheの導入と設定
MySQL(MariaDB)の導入と設定
PHPの導入と設定
MariaDBとPHPの連携テスト

Apacheの導入と設定

インストール

まずはApacheをインストールしてウェブサーバーが動く環境を整えましょう。
以下コマンドでApacheをインストールします。

$ sudo yum install httpd

Apacheの設定ファイルは/etc/httpd/conf/httpd.confにあります。このファイルでDocmentRootに設定されている/var/www/htmlがローカルwebサーバーのホームディレクトリになります。

Apacheの起動と起動設定

まずはSystemctlでhttpd.serviceをスタートさせます。

$ sudo systemctl start httpd.service

次に起動時に起動するように以下のように設定します。

$ sudo systemctl enable httpd.service

MySQL(MariaDB)の導入と設定

インストール

次にデータベースを使えるようにします。CentOSは現在ではMySQLを公式リポジトリから外して代わりに、そのフォークであるMariaDBを標準のデータベースとしています。MariaDBはMySQLと互換があり操作感は変わりません。ただしMySQLをインストールしたい場合はリポジトリを追加してインストールします。ここではMariaDBをインストールします。

$ sudo yum install mariadb mariadb-server

MariaDBの起動と起動設定

MariaDBを起動し、今後システム起動時に起動するように設定します。

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

準備が完了したらMariaDBにアクセスします。

$ mysql -u root

このような画面が出ればOKです。
04

PHPの導入と設定

インストール

では次はPHPの準備をしていきます。まずは以下のコマンドでインストールします。

$ sudo yum install php php-mysql

PHPの動作テスト

テスト用のPHPファイルを作成します。

$ cd /var/www/html
$ vim index.php

以下のフレーズをファイルに書き込みます。

<?php
    phpinfo();
?>

ウェブブラウザでhttp://localhost/index.phpにアクセスします。以下のような画面が出ればOKです。
02

MariaDBとPHPの連携テスト

ここまでの作業でLAMP環境は整いました。最後にデータベースにデータを入れてPHPで取り出す簡単なテストを行いましょう。

MariaDBへのデータ入力

ここではPHPでデータを取り出せるか簡単なテストをすることを目的なので、root権限で作業します。

$ mysql -u root

以下はMariaDB(MySQL)での操作です。

mysql> use test
mysql> cleate teable sampletable (
       id int(3),
       color varchar(10)
       primary key(id)
       )
mysql> insert into sampletable values(1,'Black')
mysql> insert into sampletable values(2,'White')
mysql> insert into sampletable values(3,'Blue')

PHPの準備

ではPHP側で呼び出す準備をしましょう。

$ cd /var/www/html/
$ sudo vim test.php

test.phpに以下の内容を書き込みます。

<?php
    $connection = mysql_connect('localhost', 'root', '') or die('error(connect)');

    mysql_select_db('test', $connection) or die('error(select_db)');
    $data = mysql_query('select * from sampletable', $connection);
    
    echo '<ul sytle="list-style-type:square";>';

    while ($row = mysql_fetch_array($data)) {
    echo '<li>'.$row['id'].'.'. $row['name'] .'</li>';
    }
    echo '</ul>';

    mysql_close($connection);
?>

ウェブブラウザでhttp://localhost/test.phpにアクセスします。以下のように表示されてデータベースの内容が反映されればOKです。

  • 1.Black
  • 2.White
  • 3.Blue

お疲れ様でした。これでCentOS 7にLAMP環境を構築できました。

最後に

今回の設定はあくまでLAMP環境の導入です。取り敢えず使える状態にはなりましたが、ApacheやMariaDBにはまだまだ設定すべき点はあります。使っていく中で調整していけば良いと思います。

Sponsored Link


Gentoo LinuxをUEFI + GPT環境にインストールする

$
0
0

こんにちは。今回のテーマは『Gentoo LinuxをUEFI + GPT環境にインストールする』です。最近はUEFIシステムのマシンが増えてきてGentooもUEFIに対応した公式ハンドブックを更新しました。しかし、ほとんど英語であり、少々分かりづらい点もあると思います。今回は実際に行った作業に基づき、「そんなに難しくない」という点をお伝えできればと思います。
【関連記事】
Arch LinuxをUEFI + GPT環境にインストールする
Slackware 14.1をUEFI + GPT環境にインストールする



【目次】
インストール環境と構築するシステム
インストールメディアの準備と起動
ネットワークの準備
パーティショニングとファイルシステムの作成
システムファイルのインストール
Gentooベースシステムの設定
カーネルの設定
システムの設定とローカライズ
ブートローダの設定
システムの再起動

インストール環境と構築するシステム

<インストール環境>

CUP:AMD Phenom
RAM:1 GB
ブートシステム:UEFI
ネットワーク:有線

<構築する予定のシステム>

アーキテクチャ:amd64(64bit)
initシステム:OpenRC
ブートローダー:Grub2

インストールメディアの準備と起動

Minimal CDではUEFIブートは出来ないのでUEFIシステムへのGRUBのインストールが出来ません。ここで選択肢は以下のようなものがあると考えられます。

  1. Live DVDを使用する
  2. Minimal CDからUEFI起動可能なUSBメモリを作成する
  3. SystemRescureCDなどのGentoo以外のメディアを用いる
  4. ブートローダ設定部分だけLive DVDを使用し、他はBIOSモードでMinimal CDを使用する

ここでは1番のUEFIブート可能なLive DVDを使用する前提で話を進めます。

LiveDVDの入手

公式ページからダウンロード出来ますが、直接のダウンロードは失敗する可能性があります。こちらのページから.torrentファイルをダウンロードしてTorrentを用いてダウンロードすることをオススメします。
ファイルをダウンロードしたら公式ページのハッシュと一致するか確認して正しいファイルをダウンロードしたか確かめます。

$ sha512sum livedvd-amd64-multilib-20140826.iso

LiveDVDの起動

LiveDVDはUEFIシステムで起動可能です。起動するとディスプレイマネージャーKDMが起動し、ログインする環境を選べますが、筆者としては日本語キーボードへの変更が容易なコンソールログインをオススメします。

CASE 1: Live DVDでコンソールログインする場合
電源ボタンを押して”console login”を選びます。これはGUI環境ではキーボードの日本語化に手間取るためです。コンソール環境の方が設定が容易であり、Minimal CDを用いる場合と同様の作業環境となります。
02

Minimal CDではキーボード選択画面がでますが、LiveDVDでは出ません。以下コマンドでキーボードを日本語に切り替えます。

$ loadkey jp106

CASE 2:Live DVDでGUIログインする場合
GUIデスクトップ環境でログインするとブラウザで情報を集めながら作業ができるメリットがあります。
03

しかし日本語キーボードへ変更を手動で行う必要があります。以下の操作をして下さい。

$ sudo su -
# vim /etc/X11/xorg.conf.d/00-keybord.conf

以下のように修正

Option "XkbLayout" "us"
↓
Option "XkbLayout" "jp"

この設定後にログアウトして再ログインして下さい。日本語キーレイアウトへ変更されています。

これで準備は完了です。

ネットワークの準備

インストールは有線LANで行うことをオススメします。無線LANの構築はシステム構築後にトライするのが賢明かと思います。これより先は有線LANを前提に進めます。

ネットワーク接続確認

多くの場合はLive DVDのシステムが自動でネットワークデバイスを読み込み自動でネットワーク接続を行います。以下コマンドで接続有無を確認します。

ping -c 3 www.google.com
ping: unknown host 

のエラーが出たら接続が確立されていません。
コチラを見ながら設定作業をしてください。

パーティショニングとファイルシステムの作成

パーティショニングにはgdiskがオススメ

UEFIブートではGPTを使うことが推奨されています。今回もGPTでパーティショニングをします。PartedはMBRとGPTに対応していますが、少々使い勝手が悪いです。筆者としてはGPTでパーティショニングをする場合はgdiskをオススメします。gdiskは以下コマンドで実行します。(OSをインストールするHDDがsdaの場合)

# gdisk /dev/sda

gdiskを起動したら以下のようにoでGPTのパーティションテーブルを作成します。(この作業で既存パーティションは全て削除されますので注意して下さい)

Command (? for help):o

ESP(EFI System Partition)の作成

UEFIブートをする場合はESPと呼ばれるFAT32でフォーマットされたパーティションを作成する必要があります。容量は512MB程度が推奨されています。

Command (? for help):n
Permission number: 1
First sector     : 何も押さずエンター
Last sector      : +512M
Hex code or GUID : EF00

その他のパーティショニング

ESP以外は自由にパーティショニングして下さい。root,swap,home等のパーティションに分けるのが一般的です。今回はrootとswapのみ作成します。

swapパーティション(作成例)

Command (? for help):n
Permission number: 2
First sector     : 何も押さずエンター
Last sector      : +1G
Hex code or GUID : 8200

rootパーティション(作成例)

Command (? for help):n
Permission number: 3
First sector     : 何も押さずエンター
Last sector      : 何も押さずエンター 
Hex code or GUID : 8300

今回はこのようなパーティションにしてみました。

sda        8:0    0  93.2G  0 disk 
├─sda1   8:1    0   512M  0 part /boot 
├─sda2   8:2    0     1G  0 [swap]  
└─sda3   8:3    0    13G  0 part /  

ファイルシステムとswapの作成

ESPのフォーマット

# mkfs.vfat -F32 /dev/sda1

Linuxファイルシステム(ext4)のフォーマット

# mkfs.ext4 /dev/sda3

スワップの作成と読み込み

# mkswap /dev/sda2
# swapon /dev/sda2

パーティションのマウント

先ほど作成したパーティションをマウントしましょう。まずはルートからです。

# mount /dev/sda3 /mnt/gentoo

次にESPを/mnt/bootにマウントします。ESPの場所は後に重要になってきます。

# mkdir /mnt/gentoo/boot
# mount /dev/sda1 /mnt/gentoo/boot

システムのインストール

日時の修正

まず日付を正確に合わせます。
<日時の確認>

# date 

<日時の設定>

# date [MMDDhhmmYYYY] 

stagetarballのダウンロードとインストール

# cd /mnt/gentoo
# links http://www.gentoo.org/main/en/mirrors.xml

国内のミラーリンクを選択し
releases/x86/autobuilds/ディレクトリに移動しstage3-i686-.tar.bz2をダウンロードします。ダウンロードは”d”を押せばOKです。
以下コマンドで展開します。

# tar -xvjpf stage3-i686-.tar.bz2

※オプション”p”はパーミッションの付加に必要なので省略しないこと

コンパイルオプションの変更

以下コマンドでmake.confを編集

# nano -w /mnt/gentoo/etc/portage/make.conf

筆者の場合はデフォルトの設定に以下を追加しました。特にGRUBの設定は後ほど重要になるので注意が必要です。

MAKEOPTS="-j3"
LINGUAS="en ja"
GRUB_PLATFORMS="efi-64"

Gentooベースシステムの設定

公式ハンドブックではミラーリンクの設定をするようになっていますが、mirrorselectコマンドがうまく働かず、設定ファイルに反映されませんでしたので無視して進めます。

chrootする

<DNS情報のコピー>

# cp -L /etc/resolv.conf /mnt/gentoo/etc/

</procと/devファイルシステムのマウント>

# mount -t proc proc /mnt/gentoo/proc
# mount --rbind /dev /mnt/gentoo/dev
# mount --rbind /sys /mnt/gentoo/sys

もしsystemdを導入する場合は以下のコマンドも実行しておいて下さい。今回はOpen-RCのため割愛します。

# mount --make-rslave /mnt/gentoo/sys
# mount --make-rslave /mnt/gentoo/dev

<新環境へのchroot>

# chroot /mnt/gentoo /bin/bash
# source /etc/profile
# export PS1="(chroot) $PS1"

portageのインストール

CASE 1:emerge-webrsyncを使う
こちらの方が公式ページで紹介されている方法であり、より簡単にportageを導入できるようになっています。以下コマンドを実行するだけです。

# emerge-webrsync

CASE 2:手動によるインストール
※CASE 1でemerge-webrsyncを実行した場合は不要です。
従来通り手動でportageのスナップショットをインストールする場合は以下の操作を行って下さい。

# cd /
# links http://www.gentoo.org/main/en/mirrors.xml

国内のミラーリンクのsnapshots/ディレクトリに移動してportage-latest.tar.bz2をダウンロードします。
では展開しましょう。

# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /usr

portageシステムの設定

<portageツリーの更新>

# emerge --sync

<profileの設定>
以下コマンドで使用可能なprofile一覧が現れる

# eselect profile list

以下コマンドでprofileを変更する。

# eselect profile set [番号]

筆者は以下の設定にしました。

default-linux/amd64/13.0/desktop *

<USEフラグの設定>
利用可能なUSEフラグは以下コマンドで確認

# less /usr/portage/profiles/use.desc

以下コマンドでmake.confを修正

# nano -w /etc/make.conf

筆者の設定は以下のとおり(かなり適当です)
後にいくらでも修正可能なので気負わなくて大丈夫です。基本的にプロファイル設定時に基本的なフラグは設定されているので、追加するぐらいの気持ちで気楽にやりましょう。

USE "bindist x acpi alsa dbs dvd flac gimp git gtk gzip ogg wifi networkmanager java"

カーネルの設定

マニュアルでカーネルをビルドする場合

今回はマニュアルでコンフィギュレーションしました。
以下コマンドでカーネルをインストールしコンフィギュレーションメニューを開く

# emerge gentoo-sources
# cd /usr/src/linux
# make menuconfig

コンフィギュレーションについて具体的なことは書けないのですが、何回でもやり直せますのでハードの情報をよく調べて挑戦してください。デバイスに関する情報はlspciコマンドで得られます。特に注意すべき点はEFIのサポートに関する部分はチェックを漏らさないように注意して下さい。納得のいく設定ができたらカーネルをビルドしてインストールします。

# make && make modules_install
# make install

genkernelを使って自動でカーネルをビルドする場合

※マニュアルでカーネルビルドした場合は飛ばしてOKです。
もしマニュアルでカーネルをビルドするのが面倒だったり自身がない場合も問題ありません。genkernelという自動ビルドツールがあります。genkernelを使う場合は次の章のfstabの作成を先に行ってから以下コマンドを実行して下さい。

# emerge --ask genkernel
# genkernel all

/boot以下にkernel-から始まるカーネルが作成されています。

システムの設定とローカライズ

fstabの作成

以下コマンドでfstabを編集します。

# nano /etc/fstab

“boot”,”root”,”swap”の部分をそれぞれ”sda1,”sda3″,”sda2″に置き換えればOK。あと、注意しなければいけないのがbootのフォーマットですが、vfatに修正して下さい。

ネットワークの設定

ネットワークがシステム起動時に起動するように設定しておきましょう。
ネットワーク名はeth0とかenp0s3などが当てられていると思います。ifconfigで確認し、設定しましょう。

設定例

# cd /etc/init.d
# ln -s net.lo net.enp0s3
# rc-update add net.enp0s3 default

Rootパスの設定

以下コマンドでルートパスを設定します。

# passwd
New password : ********

ローカライズ

ここの設定は後回しにしてもOKしてです。
コンソール環境のローカライズをしておきます。
<タイムゾーン>
日本国内に住んでる場合
手っ取り早いのは以下のようにコピーする方法です。

# cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

別の方法としては以下のようにemerge –configを使う方法があります。

# echo "Asia/Tokyo" > /etc/timezone
# emerge --config sys-libs/timezone-data

<キーボードレイアウト>

# nano /etc/conf.d/keymap

以下のように修正

KEYMAP="jp106"

<言語>
/etc/locale-genの編集

# nano /etc/locale-gen

以下のように修正、あるいはコメントアウトを外す

en_US.UTF-8
ja_JP.UTF-8

以下コマンドを実行

# locale-gen

ブートローダの設定

公式ハンドブックではefibootmgrを使う方法が紹介されていますが、ルートパーティションを特定できずカーネルパニックを起こし上手く行きませんでした。ここではGRUBを導入する方法をオススメします。

Grub2のインストール

GrubのインストールはBIOSブートの時とは異なる点が多いので注意をして下さい。
#1 /etc/portage/make.confの編集

# nano /etc/portage/make.conf

以下のフレーズを追加します。既に追加済みの場合は結構です。

GRUB_PLATFORMS="efi-64"

# grub2とefibootmgrのインストール

# mkdir -p /boot/efi
# emerge grub efibootmgr
# grub2-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=gentoo_grub /dev/sda

このままではVirtualBox等のUEFIファームウェアではefiファイルが検出されません。以下のように/boot/efi/boot以下にbootx64.efiファイルを作成します。

# mkdir -p /boot/efi/boot
# cp /boot/efi/gentoo_grub/grubx64.efi /boot/efi/boot/bootx64.efi

#3 GRUB設定ファイルの作成
以下コマンドで自動作成します。

# grub2-mkconfig -o /boot/grub/grub.cfg

カーネルのビルドがトラブルなく終わっていればここでカーネルが検出されるはずです。一つも検出されない場合は/bootディレクトリでlsで確認してください。

システムの再起動

以下コマンドを実行し、マウント解除と再起動を実行する。再起動時はMinimal CDを抜くのを忘れずに。

# exit
cdimage ~# cd
cdimage ~# umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~# umount -l /mnt/gentoo{/boot,/proc,}
cdimage ~# reboot

最後に

ひとまず、ここまでとします。お疲れ様でした。Arch Linux等でUEFIブートシステムに慣れている方にとってはお馴染みの方法だったと思いますが、BIOSブートに慣れている方には何やら面倒に感じられたかも知れません。Arch LinuxのようにGentooのminimal CDもUEFIブートに対応すればもう少し楽になるとは思うのですが。

Sponsored Link


Gentoo Linuxを使ってみた

$
0
0

こんにちは。今回のテーマは『Gentoo Linuxを使ってみた』です。Gentoo Linuxというディストリビューションをご存知の方は多いと思います。ソースからのビルドをパッケージ管理の中心とするディストロで「難しい」「とっつきにくい」というイメージを持っている方も居るかも知れません。今回はGentoo Linuxの癖のある魅力をお伝えできればと記事を書きました。
【関連記事】
Gentoo LinuxをUEFI + GPT環境にインストールする
Gentoo Linuxをインストールする


【目次】
Gentooというエッジの効いたなディストリビューション
ソースベースならではのカスタマイズ性
Portageによる強力なパッケージ管理
インストールはマニュアル操作が基本
ある程度のマシンパワーが必要
こまめな手入れが必要
他のディストリビューションとの比較

Gentooというエッジの効いたディストリビューション

数あるLinuxディストリビューションのなかでも異彩を放ちカスタマイズを好むLinuxユーザーを惹きつけて止まないディストロ。それがGentoo Linuxである。名前は知っているが使ったことはないというユーザーもいれば現在使用している、過去には使っていたというユーザーも多いのではないでしょうか。

シンプルな最小環境から機能満載のデスクトップマシンまで構成可能な拡張性と目的に特化した調整を可能とするカスタマイズ性を有するディストリビューションです。それ故に癖が強く人を選ぶディストロでもあると思います。Linux界のスポーツカーという位置づけだと言えば伝わるでしょうか。

今回はGentooの魅力と使い勝手について、まだ使用したことのない方にもお伝え出来ればと思います。

ソースベースならではのカスタマイズ性

Gentooの大きな特徴はパッケージをソースからビルドすることにあると思います。ソースからビルドすることで、マシンに合わせた性能を引き出したり自分の目的にあった機能を付加ながらビルドすることが可能です。これはコンパイル済みのパッケージをインストールすることではなかなか難しい点です。

※もちろん、ソースベース管理の特徴はGentooの専売特許ではありません。CruxやSlackwareでもソースからビルドするパッケージ管理方法ですが、Gentooほど自動化されていないというのが感想です。

Portageによる強力なパッケージ管理

Gentooの心臓とも言えるのがパッケージ管理システムPortageです。パッケージ毎のスクリプトファイルebuildをPortageが管理することで依存性はもちろん、ビルドの際のオプションを管理し、使用者の目的に合わせた構成でビルドすることが出来るのです。

ユーザーは自分がシステムをどのように運用したいのかをPortageの設定ファイルに記載しておくだけで、これらの設定に基づき自動的にパッケージが管理されます。ビルド時間を考慮しなければ、まるでAPTやYUMシステムを扱っているかのように簡単なemergeコマンドでパッケージをインストールしたりシステムを更新したり出来ます。

Slackwareでマニュアルでソースをビルドしパッケージを作成し、依存性を解消し・・・という作業をしていた筆者は自動化されたパッケージビルドシステムにとても驚きました。

インストールはマニュアル操作が基本

Gentooが敬遠される原因の一つとして導入のハードルが高いと思われていることが挙げられると思います。インストール作業はパーティショニングから、システムのインストール、設定、カーネルのビルド、ブートローダーのインストールまで全てCLIでのマニュアル操作になります。

確かにLinuxシステムに全く触れたことのない人にGentooをインストールさせるというのは酷な話だと思います。しかし、ある程度Linuxシステムに慣れ親しんだ方ならばGentooを導入すること自体はそこまでハードルの高いことではないと思います。Arch Linuxを導入したことがある方ならば問題なくインストールできると思います。

筆者も微力ながらインストール記事を書いておりますので、参考にしていただければと思います。

ある程度のマシンパワーが必要

ソースからのビルドが基本であるGentooはパッケージのインストール・更新の度にビルド作業を行います。マシンのスペックが低いとビルド作業は長時間化します。特にGUIアプリケーションは非常に時間がかかります。ある程度ハイスペックなマシンを使用していても長期間更新せずに更新するパッケージの量が多くなると一晩かかっても処理しきれないこともあります。

筆者はメインマシンでGentooの使用を試みましたが、この長時間のビルド作業に耐えかねてサブマシンでの使用に切り替えました。代わりにメインマシンではバイナリパッケージで手軽にシステムの更新が可能なXubuntuを使うことにしました。

こまめな手入れが必要

Gentooはローリングリリースの更新システムなので日々リポジトリ上のPortageは更新されています。ユーザーはPortageを同期しシステムを最新に保つ必要があります。更新を怠けていると大量の更新パッケージが溜まりビルドに膨大な時間がかかってしまします。

時間だけの問題ではなく、あまり放置しているとアップデートが不可能になってしまう場合もあります。Gentooでは互換性を考慮してシステムを更新しているので数カ月ならば問題ない場合も多いですが、数年単位で放置しているとライブラリやツール類の進化による互換性がなくなりビルド時にエラーだらけになってしまう場合もあります。

こういう状態に陥った場合も救済策はありますが、こまめに日頃から手入れをしている方が楽です。

他のディストリビューションとの比較

ここでGentooを使ってみて他のディストロとの比較で感じたことを記しておきたいと思います。

Arch Linuxとの比較

GentooはArch Linuxとよく比較されます。Portsライクはパッケージ管理システムを有する点や、最小環境からの構築、パワーユーザー層をターゲットとしていて、システムの細かい点までカスタマイズできるという点は非常によく似ています。ただ、PortageにはUSEフラグやSlotという設定値があり、細かくパッケージの設定が出来ます。Archではここまで細かい設定はABSには備わっていません。(PackageBuildファイルを書き換えれば可能かも)逆にGentooは一部のパッケージしかバイナリで提供していないのに対してArchでは多くのパッケージがバイナリで提供されます。

Debianとの比較

DebianとGentooは非常に面白い比較対象だと思います。両者ともに自動でパッケージを管理する手法を探求しDebianはAPTをGentooはPortageを生み出しました。Debainが巨大なバイナリパッケージの図書館として他のディストロへ大きな影響を与えているのに対して、GentooはBSD系のPortsシステムをLinuxに適用し独自の進化を遂げメタディストリビューションと呼ばれる存在になりました。パッケージの管理に対する両者の立場はとても興味深いものです。

最後に

Gentooのユーザーはパワーユーザーが多く、筆者のようなものがGentooを語るなど100年早いとお叱りを受けるのではと公開を留まっていました。しかし100年たったら確実に生きていないので生きてるうちに公開しておこうと思い直し公開しました。

ここに書いた内容はあくまで使った筆者の個人的な感想です。この記事に目を留めた方が実際にインストールしてご自身の目で確かめるのが一番確実だと思います。本記事がGentooとの出会いになれば幸いです。

Sponsored Link


Viewing all 226 articles
Browse latest View live