mscomctl.ocxとcomctl32.ocxはいずこ?

Windows7は64bit、Office2010も64bitを指定してインストールしたところ、仕事で使うExcelのAdd-inが要求しているらしいmscomctl.ocxが見つからないって怒られた。VB6時代のランタイムだから当然32bitだけど、標準でインストールされないのね。

  1. 32bitのDLLだからsyswow64で登録させることは想像がついたが、肝心な最新バージョンのファイルの入手先がよくわからない。
    検索でそれらしくヒットしたMicrosoftダウンロードのサイトから、VisualBasic6-KB896559-v1-JPN.exeをとってくる。
  2. EXPLZHなどを使って、ファイルを解凍。
    欲しいのはmscomctl.ocxと念のためcomctl32.ocx。
  3. エクスプローラで、c:\windows\syswow64に二つのファイルをコピー。管理者権限が必要なので、対応はそれなりに。
  4. コマンドプロンプトを管理者として実行。これも権限は必要。
  5. コマンドプロンプトで以下を入力してocxを登録する。

    cd \windows\syswow64
    regsvr32 mscomctl32.ocx
    regsvr32 comctl32.ocx

これでよくわからないエラーメッセージは出ないで起動するようになったけど、Add-in が正常に期待通り動くのかはこれから要検証。

OS X で、isoファイルを作る方法 2

以前メモを書いたんだけど、isoファイルの作成方法

複数のフォルダから寄せ集めてイメージを作る場合、
手元にすべてのファイルを集めてやれば良いんだろうけど、
OS Xに標準で付いてるディスクユーティリティで楽出来ないかな。。。と。

だって、滅多に使わないコマンドのオプションなんか覚えてないって。

早速ディスクユーティリティを立ち上げて、オプションを設定してみる。と馬鹿正直にCDサイズのファイルができあがる。中身は空っぽなのに!!

オプションはこんな感じかな

オプションはこんな感じかな

マウントすれば、普通のフォルダとしてアクセスできるので、必要なファイルをドロップ。して、あうんマウントすればいいわけだが、、、
このままじゃWindowsから読めない

《゚Д゚》ゴラァァァァァァァァァァァァア!!

となると結局hdiutil のお世話にならなくちゃいけない。

hdiutil makehybrid -iso -joliet -o output.iso imput.cdr

またこれをすると、実際のファイルの使用量に応じたisoファイルができあがる。
つまり、ディスクユーティリティを使ってイメージを作っても、このhdiutilを使った作業が実質必須ということか?

パーティションフォーマットをFATなどにもしてみたけど、どうも期待通りの動作をしないんだよね。
hdiutilのmakehybridに相当する動きをディスクユーティリティにしてもらいたいんだが…

 

Just System イメージ悪すぎ

#処理の待ち時間にざっと書いたので、乱文失礼。^^;

今朝、MacのATOKに更新があり、コンピュータも再起動させたら、こんな画面が

キャンセルとか、「今はしない」といった選択肢が見当たらない。まぁ左上の赤い丸印を押せば閉じることは出来るんだけど、問題はそれだけじゃない。

「ATOK Syncは無料でご利用いただけます」。ふむ。

ねんのためブラウザを立ち上げて確認してみると、ATOK 2011では「ATOK Sync アドバンス」を”1年間無料で”使えますとな。
けっ、やっぱり1年だけで有料じゃん。

あれ、昔はWebDavサーバを自前で用意すれば(他のクラウドサービスでも良い)、逃げ道にならなかったっけ?こんなページ (ATOK Syncを使って無料で辞書を同期する | penchi.jp)もあったよなぁ。

とよく見ると、バージョンが違う。
確かにJust Systemのページを見ると、2011の場合と、2010以前とで別れてる。

なるほど2010までにあった逃げ道を2011では塞いだのね。

Syncさせたきゃお布施を払えと。

DropBoxや、iCloudといったサービスに意地でも対抗したいのだろうか?金を取るだけのアドバンテージが見いだせない。
この人も半年前に全く同じ事を書いてる。「ATOK Sync:たいして回収できない月額料金を回収するためのコスト

会社がキーエンスに買収されて浮川さんが退社してから、どうもJustSystemの製品のこういう挙動、というかインターフェースというか。。。やらしくなったよなぁ。

 

CentOS の SELinuxを無効にする

CentOS インストール直後、
Apache の mod_aliasを使うと、

(13)Permission denied: access to /hoge/hoge denied

といったメッセージが出る。

ネット上に公開するサーバにはおすすめしないけど、
手物のVMWareで手っ取り早く動かしたいので、Slinuxを無効にする。

キーワードは”enforce”。

現在の状態を取得するには、

getenforce

Enforcingと表示されれば、SELinuxが有効になっている。

一時的に無効にするには、

setenforce 0

この状態で getenforce をすると、Permissive となる。この状態で、Apacheの動作確認などを行うことができる。

再起動したら設定が戻っちゃうので、無効のまま起動させるために、/etc/sysconfig/selinux を書き換える。

SELINUX=disabled

このファイルには、以下のように親切に書かれているので、書き換えるファイルさえわかれば迷わないはず。

# SELINUX= can take one of these three values:
#     enforcing – SELinux security policy is enforced.
#     permissive – SELinux prints warnings instead of enforcing.
#     disabled – No SELinux policy is loaded.

CentOS の Apache にアクセス出来ない? iptablesか!

VMWareにCentosを入れて、yum でapacheを入れる。でもそれだけじゃアクセス出来ない。

CentOSのFirewall 、iptablesの設定を更新する必要がある。

まずは初期状態の確認。

[root@centos ~]# iptables -L –line-number
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all — anywhere anywhere state RELATED,ESTABLISHED
2 ACCEPT icmp — anywhere anywhere
3 ACCEPT all — anywhere anywhere
4 ACCEPT tcp — anywhere anywhere state NEW tcp dpt:ssh
5 REJECT all — anywhere anywhere reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 REJECT all — anywhere anywhere reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

Chain INPUTがフィルターの流れ。
4行目でsshが許可されているが、次の5行目で残りがrejectされるようになっている。
つまりこの間に、httpやhttpsといった外部からつなげたいポートを許可する設定を書くって訳だ。

# /sbin/iptables -I INPUT 5 -p tcp –dport https -j ACCEPT
# /sbin/iptables -I INPUT 5 -p tcp –dport http -j ACCEPT

確認。

[root@centos ~]# iptables -L –line-number
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all — anywhere anywhere state RELATED,ESTABLISHED
2 ACCEPT icmp — anywhere anywhere
3 ACCEPT all — anywhere anywhere
4 ACCEPT tcp — anywhere anywhere state NEW tcp dpt:ssh
5 ACCEPT tcp — anywhere anywhere tcp dpt:http
6 ACCEPT tcp — anywhere anywhere tcp dpt:https
7 REJECT all — anywhere anywhere reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 REJECT all — anywhere anywhere reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

よしよし。

設定を保存。

# /sbin/service iptables save

後からpostgresを許可したければ、こんな感じにすればいいのかな。

# /sbin/iptables -I INPUT 7 -p tcp –dport 5432 -j ACCEPT

vmshrink の最新版は何処?

「仮想の背中」さんが閉鎖されてからだいぶ経ちますが、「VMwareのディスク使用量を減らす – VMwareToolsがインストールされていない場合」のページは「vmshrink」でGoogle検索すると2番目に表示されるようですね。

HDDの容量が大きくなった昨今、vmshrink の必要性はかなり減ったとは思います。
また最近のVMwareのバージョンであれば、「仮想マシンのクリーンアップ」機能があり、これが同じような働きをしているのでは無いでしょうか?(検証したわけではないので間違っているかもしれません)

ですが、vmshrink などの開発は止まっちゃったのかな?とか、作者さんはご健在?といった疑問は残るわけです。

vmshrink.cの冒頭を見てみると、

	vmshrink.c
	virtual disk shrink utility

	Copyright (c) 2006 Ken Kato

とあります。これと「vmshrink」で検索したら、”それらしい”ページがサイトがあるじゃないですか。

VMware Command Line Tools – VM Back

このサイトのオーナーに関する情報を見つけるには至っていませんが、掲載されている内容からするに、 「仮想の背中」の後継のサイトとみて良さそうです。

Memo:ディレクトリ内のファイル数を数える

どんどん蓄積されるファイル群の期間ごとのファイル数を知りたくて、いつものようにこんなコマンドを打ったんだけど、ファイル数が多いと時間がかかるのよね。そこで調べたら、速度比較までして検証しているサイトがあった。 ディレクトリ内のファイル数を速く数える(Linux,ext3,ls,find,wc)。そこにも書かれているけど、find はいろいろ使えるので、メモ。

ls コマンドは通常ファイル名でSortが発生するので、普通に使ったのでは遅い。だから単にlsと打ったのではだめ。

ls . | wc -l

ls のソートを止めるには、オプションの -f を使う。

ls -f . | wc -l

一番高速なのが、find コマンドを使う方法。

find . -type f | wc -l

Unable to copy the users Xauthorization file.

メモ。サポート環境の整備のためにリモートデスクトップ接続。

LAN1 -(INTERNET)-> LAN2 -(VPN)-> LAN3

ちと面倒な接続で、LAN3には外部から直接アクセスできないので、LAN2内のPCを経由する必要がある。というわけで、中継用のPCとして、ライセンス云々が面倒な事にならないUbuntuなノートを用意。

順調にリモートデスクトップを使っていたのだが、パッケージ管理の様に管理者権限が必要とされるアプリケーションを起動させようとすると、エラーメッセージが表示される。

Unable to copy the users Xauthorization file.

で、このエラーメッセージで調べたところ、ubuntuにwindows7からリモートデスクトップ接続したときのメモというタイトルでそのまんまの記事を発見!オリジナルはUbuntuのフォーラムの[ubuntu] xrdp user permissions problem – Ubuntu Forums

touch ~/.Xauthority
chmod 600 ~/.Xauthority

あっさり解決できて良かった。

Lionのイメージはダウンロードとインストールの間にコピーしておけ?

一昨日の夜、ダウンロード販売が開始されたOS X Lion。

今年の頭に買ったMBPに突っ込んだのですが、インストールが終わったら、ダウンロードしてきたインストーラーが見当たらない。

「Install Mac  OS X Lion.app」という、約3.7GBのアプリケーションがダウンロードされるんだけど、どこ行った?

リアルタイムで呟いてみたけど、似たような情報は無し。周囲にはそこまでホットな人は居ないし、ホットな人はみな目の前のLionに釘付けだったろうからね :-)

念のためにとっておいたバックアップから古いOSで起動して、再度Lionをダウンロードしてみました。
パッケージの内容を表示させてみたところ、

Contents -> SharedSupport -> InstallESD.dmg が 3.74GB占めていることが判明。名前からしてもこれがLionのイメージなんだろうな。
Installesd.dmg で検索すると、案の定いっぱい情報が出てくる。

8月には、USBに入ったLionが販売されるようだけど、別途費用が発生するようだ。
流れに従っていくと、勝手に消されるイメージ。HDDがクラッシュしたら古いOSのインストールから始めなくちゃいけなくなるけど、それがAppleの考える、今回の戦略なのかな?