MENU of Ubuntu Linux

私のメモです。参考になればいいですが、間違っていたらごめんなさい。16.04LTSから16.04LTSへのアップグレードのメモです。@2018.08.15

戯れ言

--------------------------------------------------------




























Ubuntu Linux

https接続に対応するのため、DN2820FYKHにインストールしていたUbuntu Linux14.04LTSを16.04LTSへアップグレードしたところ、セキュリティの関係で16.04LTSでletsencryptコマンドを使うことができない状態になっていました。16.04LTSから18.04LTSへのアップグレードは比較的スムースなようなので、16.04LTSにアップグレードしてすぐに18.04LTSにアップグレードすることにしました。

バックアップ

万が一に備えて、無くしては困るファイルはバックアップを取ります。16.04LTSへアップグレード直後ですが、多少設定ファイルも変更したので、/etc以下、sshのauthorized_key2をバックアップしました。

Back to MENU

文字コードの変更

16.04LTSでも、ja_JP.UTP-8がLANGに設定されていると、do-release-upgradeでのメッセージが全て文字化けして読めません。そこで、LANGコマンドで文字コードを「C」に設定しておきます。

# LANG=C

Back to MENU

アップグレード

準備が出来たら、まずは現在の14.04をできるだけアップグレードしておきます。

# apt-get update
# apt-get upgrade

もし、全く必要とされないファイルが残っているというメッセージが出たら、autoremoveで削除しておきましょう。カーネルのアップデートをしていると、ヘッダファイルなど容量を食うファイルが残ったままになっていることがあります。。

# apt-get autoremove

アップグレードするパッケージがなくなったら、do-release-upgradeコマンドでいよいよ18.04LTSへアップグレードを実行します。

# do-release-upgrade

aptのサイトをチェック後、削除されるパッケージの個数、新しくインストールされるパッケージの個数、アップグレードされるパッケージの個数が表示され、続行するかを尋ねられます。ここで「y]を入力するとパッケージのダウンロードが始まり、18.04LTSへアップグレードが開始されます。

パッケージのダウンロードが終わると、Change Logがレポートされます。読み終えた後、実際にインストールが始まります。参考までに、僕のサーバでは、インストールを終えて再起動するまでに次のことを尋ねられました。

再起動後、CMOSバッテリーエラーが出て起動できずに焦りましたが、単にマザボのコイン型電池が切れたことにより、一時的に再起動できなかっただけのようです。、DN2820FYKHを分解してコイン型電池を交換することも試みましたが、CPUファンの下にあり、CPUファンがどうしても外せなかったため、断念しました。電源をコンセントに指して、1分待ってから起動すると何とか起動するようです。

Back to MENU

微修正

14.04LTS→16.04LTSより変更が少なかったので、次の修正をしました。

Back to MENU

Let’s encryptの導入

今回はOffice YUAiさんのブログを参考にやってみました。僕の環境では、iptablesでポート443番を開けてからLet’s encryptの導入し、apacheの設定ファイルを修正しました。

Back to MENU

Namazuの導入

これまでお世話になったHyper Estraierがmake checkでcore dumpするようになり、とうとう僕には動かすことができなくなりました。名残惜しいですが、老舗のNamazuに変えることにしました。

  1. パッケージのインストール
  2. Ubuntu 18.04LTSでは、「namazu2」というパッケージになります。また、インデックスを作成するのに必要な「namazu2-index-tools」、「libnkf-perl」、「libtext-kakasi-perl」もインストールします。

    # sudo apt-get install namazu2 namazu2-index-tools libnkf-perl libtext-kakasi-perl


  3. cgiとテンプレートのコピー
  4. ウェブサーバで使う/usr/lib/cgi-bin/namazu.cgiを/var/www/cgi-binにコピーし、パーミッションを読み取りと実行、所有者とグループをwww-dataに変更します。

    # sudo cp /usr/lib/cgi-bin/namazu.cgi /var/www/cgi-bin
    # sudo chmod 500 /var/www/cgi-bin/namazu.cgi
    # sudo chown www-data /var/www/cgi-bin/namazu.cgi
    # sudo chgrp www-data /var/www/cgi-bin/namazu.cgi

    namazuが使うテンプレートもコピーしておきます。コピーしたテンプレートを自分のウェブページに合わせてカスタマイズすると良いです。パーミッションは読み取りにします。

    # sudo cp /usr/share/namazu/template/NMZ.*.ja /var/www/cgi-bin
    # sudo chmod 400 /var/www/cgi-bin/NMZ.*.ja
    # sudo chown www-data /var/www/cgi-bin/NMZ.*.ja
    # sudo chgrp www-data /var/www/cgi-bin/NMZ.*.ja


  5. cgiの設定ファイルの作成
  6. namazuのcgiは同じディレクトリにある.namazurcを優先的に読みに行きます。そこで、設定ファイル/etc/namazu/namazurcをnamazu.cgiのあるディレクトに.namazurcとしてコピーして使います。

    # sudo cp /etc/namazu/namazurc /var/www/cgi-bin/.namazurc
    # sudo chown www-data /var/www/cgi-bin/.namazurc
    # sudo chgrp www-data /var/www/cgi-bin/.namazurc


  7. cgiの設定ファイルの編集
  8. 設定ファイル.namazurcのコメントアウトを外して、自分の環境に合わせて設定します。以下は僕の環境の例で、#以降は説明で、実際の設定ファイルには記述しません。

    Index  /var/www/cgi-bin/nmz  # インデックスファイル置き場
    Template  /var/www/cgi-bin  # テンプレートファイルNMZ.*.ja置き場
    Replace  /var/www/html/ https://fishers.mydns.jp/  # ファイルパスをURLへ変換
    Lang  ja  # 日本語で表示
    Charset  "ja_JP.ecujp" "ECU-JP"  # 文字セットはEUC-JPに

    編集を終えたらパーミッションは読み取りにします。また、インデックスや結果の表示などで使う文字セットはここで設定したものに合わせます。namazuでは文字セットがECU-JPを前提にしている節があるので、それに従ってECU-JPにしました。

    # sudo chmod 400 /var/www/cgi-bin/.namazurc


  9. ja_JP.ecujp文字セットのインストール
  10. インデックス作成の前に、Ubuntu18.04LTSで使用できる文字セットにja_JP.ecujpが入っているかを「locale -a」で確認します。僕の環境で日本語の文字セットはja_JP.utf8しかありませんでした。そこで、次のコマンドで使用できる文字セットを確認し、EUC-JPをインストールします。

    # sudo cat /usr/share/i18n/SUPPORTED
    # sudo locale-gen ja_JP.EUC-JP


  11. インデックスの作成
  12. 次にインデックスを作成します。デフォルトでは、/usr/share/namazu/filter/hnf.plとmp3ファイルのIDタグを検索する/usr/share/namazu/filter/hnf.pl というnamazuのフィルタがエラーを起こすので、このファイルを名前を変更して無効化します。

    # sudo mv /usr/share/namazu/filter/hnf.pl /usr/share/namazu/filter/hnf.pl_back
    # sudo mv /usr/share/namazu/filter/mp3.pl /usr/share/namazu/filter/mp3.pl_back

    インデックスの作成はmknmzコマンドで行います。-Lで文字セットを、-Oで出力先を指定でき、そのあとにインデックスを作成するディレクトリを指定すると、そのディレクトリ以下をインデックス化します。下の例では、animalディレクトリ以下が/var/www/cgi-bin/nmz以下にインデックス化されます。

    # sudo mknmz -L ja_JP.eucjp -O /var/www/cgi-bin/nmz /var/www/html/animal/

    複数のディレクトリを1つのインデックスにする場合、ディレクトリをスペースで区切って指定します。

    # sudo mknmz -L ja_JP.eucjp -O /var/www/cgi-bin/nmz /var/www/html/animal/ /var/www/html/bird/

    注意点として、インデックスは追加だけされてるようです。自宅サーバ程度の規模であれば、定期的にインデックスファイルを全て削除してからインデックスを作成した方が良いかも知れません。

  13. 入力フォームの追加
  14. ウェブページで検索が行えるよう、検索機能を付けるページに次の行を追加します。

    
    <form action="https://fishers.mydns.jp/cgi-bin/namazu.cgi" method="get">
    <input type="text" name="query" size="50">
    <input type="submit" name="submit" value="K's Pageの検索">
    <input type="hidden" name="whence" value="0">
    	

Back to MENU