BLOGTIMES
«Prev || ... 709 · 710 · 711 · 712 · 713 · 714 · 715 · 716 · 717 ·... | | Next»
2014/05/31

CentOS 6 で夜中に自動的に yum update を実行する

centos6  systemmanagemant 

直接外のネットワークにつながっているサーバは安定性を多少犠牲にしたとしても自動的に yum update を実行するようになっていると便利なことがあります。これまでは cron に自分でスクリプトを仕込んでいたのですが、実は CentOS 6 にはオフィシャルにこれをやるためのパッケージが用意されていることが分かったので、乗り換えてみました。下記の通り、インストールは yum で一撃です。

yum install yum-cron

設定については /etc/sysconfig/yum-cron があるので、YUM_PARAMETER で実行時のパラメータを指定したり、DOWNLOAD_ONLY を yes にしてインストールせずにダウンロードだけをしておくことや、CHECK_ONLY を yes にしてアップデートがあるかどうかのチェックだけを行うという使い方もできます。設定が済んだらサービスを有効化しておきましょう。

chkconfig yum-cron on /etc/rc.d/init.d/yum-cron start

cron で事足りるのでは?

ちょっと気になったのは上記のコマンドを実行してもデーモンらしきものがサーバに見当たらないこと。普通に考えて日時のアップデートは cron で実行すればよいはずなのですが、何で init スクリプトが用意されてるんだろう・・・・・・と思いながらスクリプトをの中身をのぞいてみてびっくり。init スクリプトは /var/lock/subsys/yum-cron という空ファイルを touch しているだけでした。

肝心の本体スクリプトは /etc/cron.daily/0yum.cron にあって、これが日時で呼び出されるのですが、冒頭が下記のようになっていて init スクリプトが作るファイルをみて起動するかしないかを決定していることが分かりました。こういうアーキテクチャもあるんですね。

/etc/cron.daily/0yum.cron

#!/bin/bash # Only run if this flag file is set (by /etc/rc.d/init.d/yum-cron) if [ ! -f /var/lock/subsys/yum-cron ]; then exit 0 fi ・・・・・・

    at 21:02 |
    2014/05/30

    CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その4)

    postfix  systemmanagemant  dovecot 

    前回、Dovecot まで設定が終わったので、今日は最後に postfix の設定をしてサーバを完成させます。

    今回のサーバではメールの配信ディレクトリを /var/vmail 、ユーザーは vuser, ユーザーID は 1000 にすることにします。
    あらかじめ下記の要領でユーザーとグループ、ディレクトリを作っておきます。

    groupadd -g 1000 vuser useradd -g vuser -u 1000 vuser mkdir /var/vmail chown vuser:vuser /var/vmail chmod 771 /var/vmail

    以下、設定メモ。

    [CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その4) の続きを読む]

      at 22:36 |
      2014/05/30

      XSLT 2.0 で ISO 8601 形式の日付を処理する

      xml 

      XSLT は組み込みの関数が貧弱なので、日付の処理はできないと思い込んでいたのですが、XSLT 2.0*1ではいろいろと日付関連の関数が加わっていたことがわかったので、ちょっと使い方を調べてみました。

      今回やりたかったのは下記のような ISO 8601 形式の日付でタイムゾーンがバラバラの場合にこれらをローカルタイムに変換するという処理。

      <root> <date>2014-05-30T15:00:00Z</date> <date>2014-05-31T00:00:00+09:00</date> </root>

      これらはいずれも JST では 2014-05-31 00:00:00 なので、これを下記のように変換する XSL を書いてみます。

      <root> <jst>2014-05-31 00:00:00</jst> <jst>2014-05-31 00:00:00</jst> </root>

      以下、作業メモ。

      [XSLT 2.0 で ISO 8601 形式の日付を処理する の続きを読む]

      at 20:45 |
      2014/05/29

      非常時の無線 LAN は 「00000JAPAN」

      earthquake  hotspot  disasterpreparedness 

      無線LANビジネス推進連絡会が、災害用統一 SSID として 00000JAPAN を使うことを決めたようです。

      災害用統一 SSID というのは耳慣れない用語ですが、「公衆無線LANの利活用について」にある大規模災害発生時における公衆無線LANの無料解放に関するガイドラインの定義によると、「大規模災害発生時に公衆無線 LAN の無料開放の目的で事業者等が共通で使用する SSID。事業者共通で使用するためユーザ認証や暗号化を行わない。」とされています。東日本大震災では電話が発信規制で使えない状態が長く続いたことから、そういう事態になったときに円滑に無線 LAN が活用できるようにガイドラインを策定しておこうという動きみたいですね。

      ちなみに頭に 00000 がついているのは SSID のリストの最上位に来るようにという思ったより単純な発想でした。

      無線LANビジネス推進連絡会, "大規模災害発生時における公衆無線LANの無料解放に関するガイドライン," p.6.

      現状、SSIDのサーチ結果の上位に表示される SSID が 0000 で始まるものになっているため、災害用統一 SSID は、SSID のサーチ結果の最上位に表示される 00000 で始まるものにすることが視認性の観点で優れている。
      また 00000 に続く文字列については、海外からの救援者の利用も考慮すると国内外のユーザに理解しやすい文字列にすべきである。連絡会としては前述した実証実験において使用したJAPANを採用し、災害用統一 SSID は
      「00000JAPAN」
      を使用することとする。

        at 23:07 |
        2014/05/29

        今年の夏は開けると凍る三ツ矢サイダーで

        飲み物 
        三ツ矢フリージングサイダー - 今年の夏は開けると凍る三ツ矢サイダーで

        アサヒがコンビニで過冷却状態にした三ツ矢サイダーを売り出すようです。過冷却状態なので開栓するとシャーベット状に固まるワケですね。

        炭酸飲料を過冷却状態にして、コップに注いだ瞬間に凍らせるというテクニックは以前からたびたび話題になっていました*1が、家庭用の冷蔵庫だと温度調整が難しく、成功させるのが難しいのが難点でした。このフローズンサイダーはそういうことがないようにコンビニに専用冷蔵庫を用意するという力の入りようです。

        氷点下の三ツ矢サイダー「三ツ矢フリージングサイダー」新発売|ニュースリリース 2014年|会社情報|アサヒ飲料

        アサヒ飲料株式会社(本社 東京、社長 本山 和夫)は、「三ツ矢サイダー」のブランド生誕130周年にあたる本年、「三ツ矢サイダー」からの革新的な価値のご提案として、専用冷蔵庫により凍る直前マイナス5℃まで冷やしてご提供する「氷点下の三ツ矢サイダー」 『三ツ矢フリージングサイダー』を、6日4日(水)より、セブン‐イレブン約1,000店舗にて先行発売いたします。

        at 22:23 |
        2014/05/28

        今日から Jawbone UP24 開始!

        jawboneup 
        Jawbone UP24 by JAWBONE JP ライフログ リストバンド 活動量計 ( アプリ連動 / Bluetooth 同期 / パーシモン / サイズ M ) JL01-16M-JP

        先日 Jawbone UP が故障してしまったので、Bluetooth 同期に対応している後継型の UP24 を注文してみました。同じ色というのもちょっと芸がないかなと思って、バンドのカラーはパーシモン(オレンジ)になりました。

        いちいちイヤホンジャックをつなぐ手間がないのは大きいですね。これまではアラームの時間をセットするたびに同期をしなくてはならないのが苦痛でしたが、そのような作業から解放されて快適に使うことができそうです。ちなみに UP24 は有線でも Bluetooth でも同期できるものだと思っていたのですが、それは僕の勘違いで、実際には同期は Bluetooh でしかできないようです。イヤホンジャックの大きさも違うので、充電用の USB ケーブルも UP とは共用できないようです。

        初代 UP はどうなったかというと・・・

        実は平行輸入品だったので、国内代理店が修理取り扱いをしてくれません

        そのまま諦めてしまおうかと思ったのですが、買ったショップの販売ページを改めてチェックしてみると1年保証という記載が。とりあえず問い合わせするのはタダということで、ショップに故障したので保証修理をしたいのでどうしたらよいかというメールを送ってみました。そうしたら、商品をこちらショップに返送してくれれば、ショップ経由で保証修理を取り次いでくれるとのこと。ショップから海外にモノを送るのでかなり時間がかかるという前置きはありますが、これは予想外の展開。

        ショップまでの送料を負担すればいいだけのようなので、こちらはこちらで修理してもらうことにしました。


          at 19:42 |

          CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その3)

          postfix  systemmanagemant  dovecot 

          今日は IMAP/POP3 サーバである Dovecot 側の設定に入ります。
          Dovecot は設定が簡単なサーバですが、今回は MySQL と接続するための設定をしなければならないので多少手順が煩雑です。

          今回のキモは通常平文で保存されているパスワードを前回 AES で暗号化してしまったので、取り出すときに復号化するようなクエリを書く必要があることでしょうか。
          具体的にには下記のような定義ファイルを用意しました。

          /etc/dovecot/dovecot-sql.conf.ext

          driver = mysql default_pass_scheme = PLAIN connect = dbname=postfix user=postfix host=/var/lib/mysql/mysql.sock password=#####MYSQL_PASS##### password_query = SELECT AES_DECRYPT(FROM_BASE64(password),'####AES_PASS####') as password FROM mailbox WHERE username = '%u' AND active = '1' user_query = SELECT concat('/var/vmail/', maildir) as home, 1000 as uid, 1000 as gid FROM mailbox WHERE username = '%u' AND active = '1'

          以下、設定メモ。

          [CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その3) の続きを読む]

            at 18:22 |

            電車遅延でタクシー帰り(´・ω・`)

            railways  accident  taxi 
            タクシー乗車証明書 - 電車遅延でタクシー帰り(´・ω・`)

            スカイツリーラインで帰宅しようとしたら、せんげん台付近から全く動かず1時間以上足止めされてしまって参りました。迂回ルートもないので諦めて仕事を一つ片付けました。アナウンスは「路線への人立ち入り」でしたが、下記にまとめられている通り事件の舞台になった竹ノ塚駅はかなり大変だったみたいです。

            その後も西新井~北千住で1時間弱。合計で2時間以上電車に乗っていました。北千住についたときには既に0:30前、乗り換えの千代田線上りは既に終了。仕方がないので、東武の駅員さんに「千代田線が終わってしまって帰れないんですが・・・」と相談してみると、すんなりタクシー乗車証明書を渡されました。タクシー代はいったん立て替えで、後日領収書とともに精算してくれるとのこと。

            こういうアクシデントは東上線の踏切事故に乗り合わせた時以来ですかね。


              at 00:53 |
              2014/05/27

              楽天が駅の専用ロッカーで商品を受け取れるサービスを開始

              rakuten  delivery 

              楽天が駅の専用ロッカーで注文したを受け取れるサービスを始めるようです。
              駅に共用の宅配ボックスがあるという感じでしょうか。注文したものが軽いものならいいかもしれませんね。

              楽天市場の商品を「駅のロッカー」で受け取れるサービス--まずは大阪で - CNET Japan

              楽天BOXは、楽天市場で商品を注文し、受取方法で希望の「楽天BOX」設置場所を選択することで利用できる。指定した楽天BOXに商品が届くとメールでパスワードが通知され、楽天BOXにそのパスワードを入力することで商品を受け取れる。

                at 23:45 |

                CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その2)

                postfix  systemmanagemant  dovecot 

                今日は電車に閉じ込められてしまったので、電車の中でセットアップを続行します。。。

                postfixadmin は便利なのですが、認証として CRAM-MD5 を有効にしようとすると原理上パスワードは平文保存が必須になります。そうすると、ちょっとしたデータベースメンテナンスの時に平文のパスワードが見えてしまうという問題があります。気にしなければよいという話もありますが、やはりパスワードが見えてしまうのはイヤなので気持ちの問題かもしれませんが、AES を使ってパスワードを暗号化することにしました。

                AES は対称暗号なので、MD5 などのハッシュと違って平文に戻すことができます。しかも MySQL にはビルトインで AES_ENCRYPT() / AES_DECRYPT()*1 という関数があるので、DB のレイヤーで透過的に暗号化・復号化を行うことができます。

                実際に MySQL のコンソールで試すとこんな感じになります。
                TO_BASE64() / FROM_BASE64()*2を使っているのは、AES_ENCRYPT() の戻り値がバイナリなので、文字列としてパスワードをフィールドに格納できるようにするためです。

                mysql> SELECT TO_BASE64(AES_ENCRYPT('clear_text','####AES_PASS####')); +---------------------------------------------------------+ | TO_BASE64(AES_ENCRYPT('clear_text','####AES_PASS####')) | +---------------------------------------------------------+ | o7qqc0S6WgIfxewcrjlKTA== | +---------------------------------------------------------+ 1 row in set (0.00 sec) mysql> SELECT AES_DECRYPT(FROM_BASE64('o7qqc0S6WgIfxewcrjlKTA=='),'####AES_PASS####'); +-------------------------------------------------------------------------+ | AES_DECRYPT(FROM_BASE64('o7qqc0S6WgIfxewcrjlKTA=='),'####AES_PASS####') | +-------------------------------------------------------------------------+ | clear_text | +-------------------------------------------------------------------------+ 1 row in set (0.00 sec)

                以下、作業メモ。

                [CentOS 6 + Postfix + MySQL + postfixadmin + Dovecot をインストール(その2) の続きを読む]

                at 23:26 |
                «Prev || ... 709 · 710 · 711 · 712 · 713 · 714 · 715 · 716 · 717 ·... | | Next»