投稿

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

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバは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の反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

chromebookの使い方を検証

イメージ
プライムセールでついつい… 毎年、この時期は急に欲しいものが増えてくる…www ということで、色々と探っていたら、ちょっとお値打ちに購入できることが分かった。 ハイスペックの物にはもちろん興味が有ったが、低いスペックのマシンでどこまでできて問題点がどこに有るのか?を知りたいと思っていた。 Lenovo Chromebook このマシンが、通常24k〜25k円くらいなのだが…。 ・キーボードはUSキー(ノートはスペースが小さいキーが押しにくいのでUSが好み) ・ストレージは、32GB ・メモリは4GB ・CPUはMediaTek MT8173C 若干重めだけれど、バッテリーは10時間程度持つ。 実際に使ってみた 設定は、Googleアカウントを設定して完了。 Webブラウザの起動は、電源を入れて、体感的には本当に即起動する感じ。 実際にはログイン等含めて10秒かかっていない程度の待ち時間。 通常PC上のChromeで出来ることはほぼできる 拡張機能も引き継ぐので、PCとほぼ同一の環境になる。 Microsoft OfficeはPCではないので、当然インストールできないのだけれど、OfficeOnlineを使用することで、通常のExcelやWord、PowerPointなどのファイルは閲覧も作成も出来る。 凝ったことをしなければ、特に問題はなさそう。 マクロは使用できないので、その点は注意が必要。 Andoridのアプリが使用できる IntelのCPUだと、高性能だがAndorid系のアプリの動作はイマイチらしい。 以前、Asus Zenfone2(Intelチップ搭載)を使用したことが有るが、Snapdragon等に比べるとおかしな動作や、性能が出ないことが多々有った…。 そう考えると、MediaTek搭載なのは、タブレットなどでの実績が多い分、Androidのアプリを使用するには安心感が有る。 Linuxが動作する 仮想Linuxが動作する。 今の所ベータ扱いになっているが、まともだった。 起動にやや時間がかかる(30秒程度)が、起動してしまえば、通常のLinuxだ。 aptコマンドが使用できるので、必要なものはインストールすれば良い。 ここでの問題は、Intelではないため、arm系でbuildしてないと動作しないことだ。 Linux上で、vscode(ar

Windows10へのアップグレードでの失敗

イメージ
無料アップグレードもあとわずか 2016年7月29日迄(以降?)は、有料となるWindows10も、今なら無料。 個人の場合は、入手する人も多いことでしょう。  ちなみに、Windows7→Windows10→Windows7と一旦アップグレードし、元に戻せば、Microsoft側にマシンとライセンスが紐付いて登録されます。  そうすると、7/29を過ぎても、Windows10にいつでも上げることが可能です。  いまはWindows10にしたくないけど…。という場合でも一度作業しておくのがおすすめです。 と、こんな事が書きたいわけではなくて、今回ハマってしまった事を。 台数が多いのでインストールメディアを用意 法人のお客さんですが、結構台数が多く、でもWindows10にして欲しいと。 1台ずつダウンロードなんて面倒ですので、あらかじめインストール用のメディアを用意します。 Windows10のダウンロードページ へ行きますが、「今すぐアップグレード」は選びません。 その下の方にある「ツールを今すぐダウンロード」からインストーラをダウンロードします。 これで、作成するメディアを選択するんだけど、DVDかUSBの選択となる。 今思えば、DVDにしておくのだった。 わざわざ、USBを何本も購入して、準備したのが仇となりました。 1本作成し、他のUSBにせっせとコピー。 こんなにUSBメモリ刺したことなかったので、記念にスクリーンショットを撮っておいたw 問題はこの後! 何が問題になったかというと、何台もアップグレードし、動作確認している段階で、動作がおかしい物、安定しないものなど、不調なマシンが存在する。  仕事で使用するには、問題があると判断したマシンを、元のWindows7に戻そうと、回復を試みる。 ところが…。回復ができない。 よく調べてみると・・・ 一応書いてはあった。 http://windows.microsoft.com/ja-jp/windows-10/windows-10-recovery-options 最後に1行「USBの場合は、そのUSBメモリが必要」

MacのExcel 2011でCSVを吐く

久々にハマったので… 開発中のシステムのDBを修正するのに、CSVでダウンロード→CSVでアップロードという流れになりました。 そこで、実際にテストを行ってみたものの、どうもおかしい。 なぜかアップロード時に、うまくデータが読めていないようなのだ。 その旨、連絡した所、他の環境では発生しないという。 そこで、こちらがダウンロードしたデータと、EXCELで開いて保存したデータをメールで送る。  ダウンロードしたデータは、システムに喰わせても問題ない。一旦開いて保存したものはエラーになる。  ところが、メールを受け取った仲間の環境では、問題が置きないという。????? こちらの環境の問題か?と思い、先ほどのEXCELで保存したcsvを仮想マシンのWindows上からシステムに喰わせるが、相変わらずエラーになる。  念のため、ブラウザを変更し、chrome/Firefoxなどでも試す。全滅。 Andoroid上のから、試すも同じようなエラーが出る。 ということは、システムの問題か?と疑うが、誰もエラーにならないという。 そこで、向こうで同じ条件でデータを吐き出し、更新可能なデータを送ってもらう。 パッと見は同じ。 diffでチェック とりあえず、こちらから送ったデータと、向こうから来たデータをdiffで確認。 全く同一だ。 バイナリエディタで確認 次は、 $ od -h a.csv > a.txt $ od -h b.csv > b.txt  とコードに置き直して、これでdiffってみる。  明らかに途中から違う。  念のため、od -c a.csv なんかで確認すると・・・。¥r ¥n と書いてある。はっ! 気付けば簡単 もうここまでくれば、明らか。 改行コードが違うのだ。 php側では、¥rのみを改行と認識していないため、次行を継続して読み込む。 当然フォーマットが合わないので、アウト。 なぜ、他の環境でエラーにならないのかを検証。 OS Office csv改行コード Windows7 Excel 2013 CR+LF Mac OS X Yosemite Excel 2011 CR そう、Mac 上のExcelはLegacyな改行コードを吐いてくれる

いまさらながらExcelで知ったこと

イメージ
長いことExcelを使ってきて multi planのあとLotus1-2-3、Excelと移り渡ってきて、Excelは特に長い間利用してきた。マクロも組むし、VBAも相当触ってきた。 初心者向けの講習も行ったり、学生にも教えたりしてきたし、自分の作業においてもかなりDeepな使い方もしてきたつもりだった。 それで、今回もcsvファイル(非常にデータ数が多い)の処理に、grepかsedかgawkなんて考えていたのだけれど、スクリプト書くのも面倒なのでExcelでサクッと処理することにした。 まあ、今のマシンは12GBのメモリを載せているし、まぁ問題なかろうと…。 オートフィルタでハマる ログの整理が目的で、まあ1ヶ月分の処理を行おうと、まずはcsvファイルを読み込んだ。 ザーッと確認すると、一時ファイルの作成も記録しているので、WordやExcelでファイルサーバ上のファイル操作をすると、大量にログが発生する。 まあ、こいつらは不要とみなして利用統計を取ろうというのが今回の趣旨。 一時ファイルは、ファイル名の先頭に〜(チルダ)が付くので、「〜」を含まない行のみで集計しようとしたのだが…。一向にオートフィルタが上手くかからない。 無視されるというか…。 「〜」を含まない行を指定するのだけれども、外れない。 *や?はワイルドカードと表示されているが、はて「〜」は? 仕方なく、grep -vで抜こうかとも思ったのだけれど、作業ファイルなどが増えて、あとあと嫌なので、もう少し踏ん張ることに。 分かった! 結局、あちこち調べてヒントを掴んだ。 *と?はワイルドカードというのは知っている。では、これらの文字を含むデータを扱うには?という情報を見ていて、気づいた。 「*」自身を検索等するには「〜*」と入力する必要があるのだった。もちろん「?」の場合も同じく「〜?」だそうだ。 これは、昔使ったことがあるような、うっすらとした記憶が…。 つまり、「〜」はエスケープ文字として機能しているらしい。ということは「〜」自身を検索するには「〜〜」ということになる。 試してみると…ビンゴ!!! 期待通りの動作をしました。チルダを含まない行、含む行などもちゃんと選択できるのを確認。 しかし、独自のエスケープ文字を使えるようにし

ショートカットには気をつけましょうね

イメージ
嬉しいできごと 今日相談を受けた、友人Aの話です。 職場で個人的に入出金の管理をしていて、ノートに記録し手作業で集計を行なっていました。ところが同僚Bはというと、コンピュータに詳しい仲間に集計表を作ってもらったそうで、自慢げに教えてくれました。 「ノートに書いてる入出金ごとのデータを入力すれば、集計はもちろん、必要な帳票も全部出るんだぜぇ〜」 見ると、Excelのワークシートで、何やら設定されていたそうです。 友人Aは、コンピュータに詳しくはないけれど、excel上で名簿やデータの入力をした経験もあり、それなら使えるぞと内心思ったそうです。自分では作れないけれど、入力なら出来るし、コピーしてくれと言ったら、すんなりコピーしてくれました。 「ラッキー!」 不思議なできごと ところで、友人の職場はFileサーバがあり、共有のデータドライブとして見えているそうです。その中に、個人別のフォルダが作ってはあるものの、他人さまの領域もしっかり見えます。 親切心から同僚Bは、友人Aのドライブにコピーをしてくれました。 早速、友人Aはファイルを開き、同僚の入力してあったデータを消し、自分のデータを入力しました。 特殊な処理はしていないので、単なる入力作業ですから簡単です。小1時間で入力完了し、同僚Bにお礼を言って、終わりました。 その後、同僚Bが自分のワークシートを開くと、なんとデータが、おかしくなっていました。見たこともない項目や金額に…。 おかしいとは思いながらも、同僚Bは再度入力をし直しました。 悲しいできごと そして友人Aが、データを追加しようとファイルを開くと、自分の入力したデータとは違う…??? 何かがおかしいことに、気づきました。そこで、調査を開始…。 同僚Bが、コピーしてくれたのはExcelのbookへのショートカットだったのです。 そのため、友人Aと同僚Bは同じファイルを編集していたのでした。 友人Aはコピーを貰ったと信じていますから、データを消し入力を行った。Bはおかしいと思いながらも、Aが入力したばかりのデータを消して入力しなおした…。という事件でした。 多分、最初にBのために設定した誰かは、間違えてファイルを消しても大丈夫なようにショートカットファイルを作って、それで説明したよ

話しが噛み合ない

EXCELの帳票出力を手伝って… ある会社の事務員さんが、困り果てて、知り合い通じて流れに流れて私の所へ。 シートは2枚。入力シートと帳票シート。 入力シートには表形式で、社員の資格やら履歴やらの管理情報を一覧で。一人1レコードで60項目程度。帳票シートは、入力シートのデータをもとに、A4用紙1枚に入るようにぎっちり罫線だらけで…。(日本人はこの形式が好きですね〜。履歴書もそうだし…) さて、問題は前任者がマクロで入力シートから帳票シートにコピーをかける仕様になっていてる。そのマクロは忘れ去られていたのか、入力シートと帳票シートで位置が合っていない。というか、マクロを実行すると帳票が壊れる。 そこで、現在の担当者は、帳票を使って、台帳を印刷したいということらしい。 社員は140名くらい。 ワークシートを送ってもらい、サンプルデータも確認。 随分、手を入れないとまともな出力が望めそうにない。 そこで、各項目のデータについてメールで確認を取ったのだが… 噛み合ない 以下私が問いかけた内容です。 【不要項目の出力について】 ・性別において、入力シートでは、「男」もしくは「女」を入力する。 名簿フォームにおいては、「男・女」のように出力する必要があるのか? (つまり、男と入力した場合、男に○をつけ、女の文字も出力するのか?) 入力が「男」であれば、「女」の出力は不要ではないか?ということです。 ・これと同様な項目がいくつかあります。合わせて確認をお願いします。 まあ、以前は手書きだったんでしょうね。名前の横に「男・女」となっている訳です。入力シートでは「男」もしくは「女」を入力するのにです。 事務の担当者とはお会いした事もなく、仲介者を通じてなので、極力丁寧に書いたつもりだったのですが… そして、以下が先方よりの返答。 >(つまり、男と入力した場合、男に○をつけ、女の文字も出力するのか?)   上記でよいです   > 入力が「男」であれば、「女」の出力は不要ではないか?ということです。 >・これと同様な項目がいくつかあります。合わせて確認をお願いします。   上記でお願いします  ふむ、つまり私の意図は全く通じず、PC(Excel)で処理するにもかかわらず、手書き時

文字コードで…

文字コードではまる wordのデータを整形して、csvにして欲しいと頼まれた。これ自体無茶な話しではあるんだけれど…。リストになっているものを表形式に…。 とりあえず、テキストエディタにコピーして、正規表現で何とか整形する事ができた。 作業は全てUTF8で行っていた。 さて、そのデータをExcelに貼り付けて、カラム数が合っているか等チェックして、CSV形式で保存した。 ここに、失敗があった。word→テキストエディタは意識して文字コードutf8を気にかけていたものの、Excel→CSVの確認を忘れていた。 officeは内部コードをUTFで処理するようになったというのが、変に意識に残っていたのかもしれない。 cp932では表現できない文字コードが含まれていたため、後の処理で引っかかってしまった。 ExcelもCSVで保存する時に、そういったメッセージは出ないしなぁ。 エディタで、特定の文字を置換して切り抜けましたゎ~