投稿

ラベル(14.04)が付いた投稿を表示しています

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバはVPS上に構築していた。 ・Ubuntu Server ・Postfix ・Dovecot ・spamAssassinと、BlackListの利用 Spam対策を行ってきたし、サーバ上でメールをトリガーにして各種プログラムを動かしたりしてきた。 メールサーバのメンテナンスは結構面倒くさくて、  ・Disk容量のチェック  ・不正アクセスのチェック  ・各種セキュリティパッチの適用 など、手間がかかる。 そこで、外部のサーバを利用することに…。 結構安くて使い勝手の良さそうなのが、「さくらのメールボックス」 3年契約で、3070円とな…。  メールアドレスは自分のだけなので、20GBまで利用可能!  (Gmailより大きいねぇ) ということで、早速契約。 アカウント設定を行って、既存のDNSを書き換える。WHOISも書き換えて完了。 SMTPとIMAPが利用できればOK。 ちょうど、GoogleがSPF設定していないと受信しないし、DKIMおよびDMARCに対応していないメールを弾くようになったので、対応しているのを確認。 さくらサーバ自体は、これまでお客さんのサーバとして何件も利用しているので、利用方法も難しくはない。  Webメールにも対応しているので、いざという場合にもありがたい。 ということで、各メールソフトの設定を変更。  PC(常時使用する3台)とタブレット、スマートフォンと台数は多いがそれ程手間はかからない。 問題は、旧サーバで送受信したメールの履歴だけれど、これはThunderbrdを使ってローカルに保存することで回避。  本当は、サーバtoサーバでMailboxに残そうとも考えたんだけど、古いメールはそれ程必要ないし、ローカルにバックアップしてあれば凌げるので、良しとする。 移行時にDNSの反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

recollでドキュメント検索

イメージ
全文検索といえばNamazu 古い人間なので、やっぱりNamazuでしょ!というイメージがあった。 サーバ上でApacheと連携して、ファイルサーバ上のドキュメントを検索するには十分な機能だったが、Indexの作成に若干時間がかかるので、夜間バッチ(cron)で回したりしていた。 ただクライアント上の検索となると、夜間にcronで回すわけにはいかない。以前はBeagleなんてソフトをテストした覚えがあるが、あまり良い印象が残っていない・・・。 もう少し便利なものはないかなぁと思って、探してみたら結構良い物があった。 Recollを試す 結構古くから開発されているのに、全然知らなかった。 ドキュメントを読んでみると、かなり高機能。しかも速度が早いらしい。 インデックスはバックグラウンドでリアルタイムに監視して作成してくれるらしい。 ということで、ubuntu用のパッケージを確認すると、しっかりあった。 # apt-get install recoll で完了。あっけない! 初回起動時に、「Index scheduling setup」のDialogが表示されるので、もちろんRealtimeを選択。この機能が使いたかったわけですし・・・。 最初はインデックスが無いので、作成まで少々時間がかかるけれど、所詮モバイルクライアントなので、それ程多くのドキュメントを抱えているわけじゃない。 少しまつことで、indexingが完了する。 起動すると、こんな画面。 検索したい語句を入力してエンターもしくは「Search」ボタンを押せば結果が出てくる。 嬉しいことに、メールも全部拾ってくれる。 Preferencesから詳細な設定も可能。 自分は、「.cache」をskipped pathに設定してみた。 詳細な日本語の解説も見つけたので、載せておく。 Recoll――シンプルなインタフェースにまとめられた強力なデスクトップ検索エンジン 少々古めの記事だけれど、分かりやすく解説されていた。 コードも当然検索できるので、色々と使えそう。 これで、grep や find をチマチマ叩かずに快適になりそう。 なにせ、Preview機能とOpen

ubuntuでLINEを使ってみた

イメージ
少しはPCネタも… メインのモバイルは Lenovo X200 にUbuntu 14.04LTSを入れて利用している。 DesktopはiMacで、基本的にWindowsは仮想マシンのみで運用中。 通常はMacで作業することが多いので、そちらに色々と入れているのだけれど、寒くなってくるとファンヒーターの前や、ホットカーペットの上で仕事がしたくなる。 その場合は、X200を持ってきて、画面が少し小さいことだけ我慢すれば、仕事上ほとんど困ることはない。 最悪、ネットワーク越しにMacを操作してデータを取り出せば済む話なわけで。 ただ、TwitterやSMS、LineなどはiPhoneで処理することが多いのだけれど、写真や動画を送るのをiPhoneで行うのは、少々面倒だったりする。 その場合はいつもPCから利用しているのだけれど…。Ubuntu版のLineは出ていない。 ということは、wineの出番ですね。 LINEのサイトに行き、Downloadを選択すると、PCはWindowsとWindows8(これはWindowsではないのね?www)とMac用の3つしか無い。  ここは、無難にWindows用を落としておく。 さて、コンソールから実行してみる $ wine LineInst.exe 特に問題なくインストールを終了する。 でもって起動すると、本人の認証へ。 iPhone側のLineを開いて、認証コードを入力しろと表示されるので、コードを入力すると、その直後にLINEの画面が暗くなったまま反応しなくなってしまう。 ちなみに、環境は Ubuntu 14.04LTS 32bit wine 1.6 Windows用LineInst.exe ちっ、使えないのか、設定の問題か…と思い、念の為ググってみる。 すると、古めの情報ではwineで動作するという報告が見つかる。新しい情報では、wine1.6系では動作しないよ。とのこと。 ただし、1.7系だと動くという報告もあるので、試すことに。  まずは、先ほどのLineを一旦Uninstall。 Ubuntu14.04のwineは、公式には1.6なので、ここはppaを利用するしかない。 $ sudo add-apt-repository ppa:ub

久しぶりで、使い方を忘れてた…(Perl)

Perlでプログラムをガシガシと 昨年納品したプログラムの、追加機能の要求が上がったので、見直しを行っていた。 今回は、DBを使うほど件数が増えそうにもない。 履歴を見て登録されているユーザか、そうでないかを判別するだけなので、ハッシュをファイルに紐付けて、簡易のDBとして使うことにする。  昔なら、メモリがパンクするんじゃ?とかディスク遅いっすとか思ったりして躊躇するんだろうけど、今どきはドンドンメモリ使っちゃおう!ファイル使っちゃおう!なんて思ったりもする。 さて、前回利用したモジュールは Jcode; MIME::Parser; MIME::WordDecoder; File::Basename; File::Path; Fcntl; File::Temp; 書き出してみるとこんなにもあった。 でもって、今回新たに Storable; 当然、稼働しているプログラムなので、直接いじるわけにはいかない。 とりあえず、ローカルでテストをする。 ソースを取り出して、修正内容を細かく分割。 それぞれテストして、組み立て…。 と、最初のテストで躓いた。 ローカルの環境が、この春に14.04で準備したNewマシンなので、モジュールが入っていない! モジュールのインストール そもそも、最初のuse Jcode;でエラー吐いているし… ということで、インストールしようとしたが、コマンドを全く思い出せない。 あれれ? どうやら老化と共にやってくるアレか? # perl -MCPAN -e shell これが思い出せずに、仕方なくググりました。 いやぁ、外部記憶に入れておいて良かったゎ(泣) というか、内部記憶から消去されている模様。 忘れないように、自分を戒めるために記録しておく。 作業自体は、コマンド入力して完了するのに1分もかからないというのに、思い出そうとした時間の方が長いとは…。 root@X200:~# perl -MCPAN -e shell CPAN.pm requires configuration, but most of it can be done automaticall

Evernoteをubuntuにインストール

イメージ
Evernoteは数あるCloudサービスの中でも老舗で、僕もかなり昔から使っている。 いろんなCloudを使っていて、基本的なPC用のファイルに関しては、Dropbox。 外で入力が必要になるようなケースがある場合は、Google drive。 そして、アイデアをまとめたり、名刺や買った本の管理などはEvernoteという使い分けをしている。 最近はOne Drive(旧Sky Drive)の使い方をどうしようかなぁなどと考えていたり、Macとの連携をする時(NumbersやPages)はiCloudを使ってみたり、メールの添付はBoxを使ったりと、試しにいろいろ行っている。 Ubuntuに入るか? 最近は、メモリ追加&SSD換装したノートをメインに使うことが増えたので、こいつでもEvernoteのデータを確認したいと思うようになった。 たまならリモートで母艦のiMacにVNCで接続して、操作という手もあるんだけど、データのコピーなんかは少々不便だったりするので、手元で扱いたいなぁと…。 Evernoteクローンはいくつかあるし、以前にも使ったことはある。 でも、使い勝手は少々悪かったり、不安定だったりとあまり良い印象がない。 そこで、本家を使ってみることにした。 「 UbuntuでEvernoteをインストール(Wine) 」というちょっと古めのブログでは、.NET非対応の古めを使えば動くと書いてある。 やってみるかと、Evernoteのサイトへ行ってみると、Windows版は、「Evernote_5.4.1.3962.exe」がカレントバージョン。古めのは「Evernote_4.6.7.8409.exe」しか置いていない。 そうりゃそうだよね。ブログの記事は2010年12月だからなぁ…。 ということで、まずは新しい方から試してみる。 $ wine Evernote_5.4.1.3962.exe インストーラが起動。 そのままOKで進めていくと、問題なく起動した。 そういえば、以前いろいろなテストをする上で、wintricksを使って.NET関連やDLLなどもいくつか入れていたのを思い出した。 結構動くもんだな。 アカウントの設定をしたら、問題なく同期を始めてくれた。 しばらく待つと、すべ

Ubuntu14.04+SublimeText+Xdebug

イメージ
14.04でXdebug ノートPCは、14.04が入っていて、これで開発を先行して行っている。 今回、大規模用に、もう少し整えようと準備を行っているが、どうも上手くいかない。 まずは、xdebugをインストールして、xdebug.iniを確認する。 Ubuntuの場合、xdebug.iniは自動で作成されているので、手間は少ない。 # apt-get install php5-xdebug # vi /etc/php5/mods-available/xdebug.ini zend_extension = xdebug.so xdebug.remote_enable = 1 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=localhost xdebug.remote_port=9000 xdebug.profiler_output_dir = "/tmp" 以上でOK。 Apache2を再起動すれば、問題はないはず。 念のため、xdebugが利用できる状況か、確認しておく。 $ php -v PHP 5.5.9-1ubuntu4.2 (cli) (built: Jun 25 2014 17:17:37) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies     with Zend OPcache  v7.0.3, Copyright (c) 1999-2014, by Zend Technologies     with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans いつも使っている、Sub lime text2にxdebugのプラグインをインストールして、接続してみるものの、上手く動作していない。 サイトを確認すると 、python2.6のライブラリが必要らしい。 ところが、14.04ではpython2.7になっていて、すでに2.6はインストール出来ない。 これで動かないわけだ。

gitkが動かない?

イメージ
gitのテスト中に 少々開発の準備をするために、あれこれテストしている。 通常は使わないコマンドも、チームとなった場合テストしておく必要もあるし…。 ちゅうことで、guiツールってどうなのよ?って思い、調べてみるとgitkなるものがあるらしい。 macの場合はsourceTreeを利用したことはあるけれど、LinuxだとCUIばかりだったので、試してみる。 普通にインストールすれば、多分gitコマンドは使えるはずで、その中にgitkがあるらしい。 実行してみると、エラーで起動しない。 $ gitk /usr/bin/gitk: 3: exec: wish: not found gitkの中身を見ると、確かにwishと書いてある。 #!/bin/sh # Tcl ignores the next line -*- tcl -*- \ exec wish "$0" -- "$@" おや? wishって確かtkだったよなぁ。 ということで、調べてみる。 tkはインストールしてある。 バージョンは8.6。 パッケージの中身を見ると、wish8.6はあるけどwishはない。 あんまり使う人がいないのか、そういうものか…。少々不明。 仕方ないので、手動でリンクを作成する。 $ sudo ln /usr/bin/wish8.6 /usr/bin/wish でもって、guikを実行。 無事起動しました。 使ってみると、それほど悪くないですねぇ。 この画面から、さらにgit guiを呼び出して、細かな操作がちゃんとできるようになっている。 まあ、CUIで十分だけど、ブランチが増えたりしたら、見やすいかもね・・・。 ちなみに環境は、ubuntu14.04 32bitです。

PHP+sqliteでcoud not find driver

イメージ
前回からの検討内容… DBを使ったアプリを作成する依頼があったので、内容を検討。 ターゲットとなる環境が厳しいので、いろいろと検討し、そろそろ決めることにした。 クライアントが古めで、アプリを入れて動かすのは故障時のリスクが高すぎる。 何せ外部に接続していないXPマシンが1台含まれており、メモリが512MBと超遅め。 壊れるまで使いたいという希望。 3台のクライアントで利用するのだけれども、扱うデータは担当者別で同時に同じデータを触ることはない。 要はアプリは1種類で、データは3種類になるという縛りがある。 そのうちの1台が古いXPということなので、最低のマシンで動作するようにしないといけない。 そこで、当初LibreOffice上のBASE+マクロ(BASIC)で構築しようと思ったけれど、XPマシンに入れて快適に動きそうにない。 VB or VC# or etc.+SQLiteも検討したが、Microsoftに縛られたくない。 ということで、Linuxサーバ(内部向け)の上で、SQL+PHPで構築して、ブラウザで利用という事で進めることにした。 テスト環境を準備 通常なら、Virtualboxでサーバを構築して、その上で作業をするのだけれど、今回は14.04が出たばかりなので、検証を兼ねて14.04にUpgradeしたノートPC上を作業環境にしてみる。 まずは、apacheのインストール。 $ sudo apt-get install apache2 動作確認で、開いてみると「お!ぉぉ!!!」今までの殺風景な it worksではなく、洒落た画面になっていた。 ついでに、Firefoxも最新のものに更新したので、chromeみたいなタブになっていて、何だか違和感ww 一応スクリーンショットを撮ってみた。 ぱっと見た感じはchromeのようだけど…。確かにFirefoxなんだよね〜。 検索窓が別に用意されているけれど、アドレスバーの欄に入力しても検索してくれて変な感じ。 続いてphpのインストール $ sudo apt-get install php5  本当に、楽になったもんだ。依存する必要なモジュールは勝手に入れてくれるし…。

AccessのMDBファイルをUbuntuで利用

イメージ
仕方なく方法を探っただけで、やりたいわけでは… Windowsで動くDB関係のシステムが、XP上で動くものの、Windows7では動作しない。 何とかならないか?と相談を受けて、検討している。 調べてみると、OfficeXP上のAccessを利用して構築されたシステム。 しかし、当時Setupしたものの、すでにそのDiskは無い。 一応、お客の所でWindows7上のAccessでテストしたものの、起動せず…。 そこで、データだけは抜き出して、移植(というか再構築というか、まぁ作り直し)することに。 使用していない機能も多いため、聞き取りを行い、要件定義をしてみたり、設計してみたり…。 さて問題は旧データを取り出して使えるかだ。 我が家の仮想マシン(WindowsXPもWindows7)は、Accessなんて入っていない。 そもそも、Accessは、複数マシンからアクセスした時に超遅くて、挙句の果てにファイル壊してくれたりして以来、使用していない。 だからもう、10年以上開発には使っていないなぁ。 ずっと、PostgreSQLとMySQLでやってきたので、Accessが入っていないのも当然。 iMacのMS-OfficeにはAccessは含まれていない。 MDB Viewer Plusを発見 探してみたら、まぁなんとかなりそうなツールを発見。 MDB Viewer Plus だ。 検索語「MDB Viewer」で引っかかったので、まんまの名前だったww Accessなしで、MDBファイルから直接内容を読み取れるらしい。 早速、Windows7上で試してみる。 一応、MDBファイルは確かに読める。 ReportやForm、コードはダメだが、DB自体は読み込めるし、Exportも可能だ。 まぁ、最低限、過去のデータを手入力しなくても良さそうなので、一安心。 開発のことを考えると、迷うところ。 Excelとマクロで無理やり作る。 Windows上の新しいAccess2013で構築する。 バックエンドにDBサーバを置いて、Windows上のアプリを作成する。 バックエンドにDBサーバを置いて、WEBアプリで作成する。

ubuntu 12.04 LTSを14.04 LTSにUpgradeしてみた #2

イメージ
不完全動作中 どうもUnityの設定に問題があるような感じ。 これでは、いちいちコマンドを探す必要がある(あんまり使わないものはGUIで十分だったので)ため、少々面倒。 動作するものが、動作しないのは気分的に良くない。 そこで、別のWindow Managerを入れて確認してみることにする。 定番の、Gnome classicと、お気に入りのxfce4を入れてみる。 インストール自体は、難しくはない。 (参照→http://banikojp.blogspot.jp/2014/04/thin-client.html) ついでに、mozc-serverの再インストール指定、ibus関係も再度確認。 一旦、ログOFF。 デスクトップの種類を選択するのだけれど、これまでと表記が違う。 まあ、どれでもいいかと、選んだら、classicだった。 この状況でシステム設定を開くと、これまで通りの画面に戻っている。 mozcも正しく動作してくれているので、ibus関係との連携もOKそう。 つまり、gnome-panel(classic)は、安定して動作してくれている。 いざとなれば、このモードに降りれば何とかなりそう。 何せ、Linux導入したお客のところも、今後この手の対応が発生するだろうから、今のうちに情報を収集しておかないといけないので…。 余計に手間がかかる。 これで、途方に暮れるということは無さそうだ。 他のアプリも試しておく 一応、LibreOfficeやThunderbird、Google Chromeなどを起動して、動作の確認と文字入力のテスト、mozc/Anthyの切り替えなどをチェック。 chromeのfontがなぜか異なるものに変わっていたものの、自分で設定しなおしてやれば、問題なし。 ううむ、どこでこんな状態になってしまったのか、それがわからないのが気持ち悪い。 とは、言っても使ってみなくては分からないことも多々有るので、調査・記録しながらもう少し格闘することにする。 classicが正常動作するのを確認し終えたら、再度defaultのunityに戻して、設定を確認してみる。 移行のため

ubuntu 12.04 LTSを14.04 LTSにUpgradeしてみた

イメージ
常用しているノートで試す さすがにお客のマシンって訳にもいかないし、開発用のマシンも怖い。 とりあえず、一番問題なさそうなThinkPad X200で試してみる。 主に入っているのは、以下のようなアプリケーション。 google chrome sublime text 2 TexStudio wxMxima Virtualbox mozc-ibus Dropbox 程度でしょうか。あとは標準のものばかり。  実際の作業 まずは、すべての更新を行っておく。 # apt-get update # apt-get upgrade 続いて、13.10からのアップグレードを参考にする。 http://www.cyberciti.biz/faq/howto-upgrade-to-ubuntu-14-04-from-ubuntu-13-10-or-12-04/ # uname -mrs # lsb_release -a 自分の環境の確認。 # do-release-upgrade しかし、12.10があると言われる…。それは確かにそうなんだけど。目的は14.04なわけで。 # do-release-upgrade -d # update-manager これで14.04があるよと行ってくるので、思い切ってUpgrade。 結構時間がかかりました。約1時間程度。 途中、2度ほどファイルを残すか変更するかとか聞かれたのだけれど、確認しても問題なさそうなので上書き(というか新しくインストール)する方を選択。 最後、再起動して完了しました。 動作確認 再起動してログインする。 一応、問題なくパスワードも受け付け、デスクトップが表示される。 と、すぐさまクラッシュレポートが2度ほど。 ibus関係でエラー吐いてくる。mozcもおかしいと。 ibus死んでいればmozcどころじゃないので、実際の原因は分からないが… とりあえず、レポートを送信するようにして、修復しなくては。 まずは、mozc-server/ibusをremoveして、再度installしてみる。 システム設定→言語サポートを開くと不完全だと言われるので、必要なも

ubuntu14.04LTSが来た

イメージ
久々のLTSを早速テスト ubuntu12.04LTSをメインに使っていて、あちこちのサーバやらクライアントやらにも使いまくっている。もちろん、自分の開発環境も、仮想マシンもノートも12.04で統一してある。 本当は、もう1ヶ月くらい早く出てくれると、新年度に導入できるケースが多々有ったんだけどなぁ。 まあ、ノウハウ無しで導入ってワケにはいかないだろうから、微妙な時期ではあるんだけど。 Ubuntu Japanese Team がいつも提供してくれている日本語Remixは、まだリリースされていないので、 本家 からとりあえず、ダウンロードしてくる。 本家に行くと、いきなり選択を迫られる。 「for cloud」と「for desktop」になっている。 まあ、ここは自分で使用するだけだし、仮想マシンでのテスト環境なのでdesktop(64bit版)をダウンロードする。 サイズは713MBありますので、DVDに焼く必要がありますねぇ。 仮想マシンなので、ダウンロードしたisoをそのままマウントして起動。 動いているところは、これまでのインストーラとほとんど変わらないです。 表示言語で日本語を指定。 すぐさま日本語で表示してくれますが、フォントが微妙におかしい。(これって中国語フォントだよね…) まあ、気にせずインストール。仮想マシンと仮想CDだと異常に早いです。10分もあれば終了。 再起動直前のキャプチャが右のような感じ。やっぱりフォントがおかしい。 まあ、再起動してみる。 すぐさまVirtualboxのGuest Additionsをインストールする。 でもって、完了後再起動。 これで、Videoが広く使える。なにせ640×480で表示されると、ダイアログすら全部表示しきれず、使いものにならない。 細かい内容は、 リリースノート を見てもらえば分かるけれど…。 LibreOfficeは4.2.3.3だし、日本語の入力も表示も特に問題はなさそう。 さっきのフォントの違和感も、再起動後は気にならないので、インストーラのみの問題ってことかな。 それぞれの設定項目などはこれから サーバとして利用するには、それぞれ設定ファイルの