ソフトウェアエンジニア現役続行

雑多なことを綴ります

rpmスペックファイルの%config

RedHat系のLinuxディストリビューションではRPMでパッケージ管理を行います。RPMスペックファイルで、%configをつけるとそのファイルは設定ファイルとして認識されます。%configでは、noreplaceとmissingokを指定することができます。第5章 SPECファイルの記…

LinuxにJDKをインストール

LinuxにJDKがデフォルトでインストールされていない場合、Sunのサイトからダウンロードしてこないとダメなようです。他の言語のようにyumで簡単にインストールできるのかと探しまわったのですが、見つけることが出来ませんでした。 参考 ここの説明がとても…

情報セキュリティスペシャリスト試験を受けました

昨日(2010年4月18日)に、IPAの情報処理試験の情報セキュリティスペシャリスト試験を受けました。手応えがあったので、おそらく合格したと思います。合格発表は6/25(金)正午予定です。午前問題はすでに解答が出ています。午前1は免除でした。午前2は80点…

iPhotoはleopardのDVDから

MAC

MacBookにsnow leopardをクリーンインストールしたら、今まで使っていたiPhotoがなくなっていました。WebサイトからダウンロードしようとしてもiLifeとセットで有料のものしかなく、iPhotoを使うのを諦めたままでした。それから早9ヶ月、やっとiPhotoを無料…

仮想マシンのGuestOSでルータを構築する

仮想マシンを使って、GuestOS(ゲストOS)をルータとして使うことができます。複数のインタフェースを設定できる仮想マシンであれば構築できます。ユースケースとしては、Linuxルータを作って仕組みを理解したいが、物理的なマシンや追加NICを用意するのが面…

補助コマンドは /usr/libexec に

Unix系OSでは、コマンドによって登録されているパスが違います。一般的に/bin以下にあるコマンドは、そのLinuxディストリビューションにとって基本的なコマンドを指します。また/usr以下には/usr/binと/usr/sbinの2種類があります。/usr/bin以下に実行ファイ…

文字コードの違うマシンにssh接続するときの文字化け対策

日本語の文字コードは、今までのLinuxではEUC-JPが主流でしたが、今後はUTF-8が主流になっていくことでしょう。最新のfedoraもUbuntuも、デフォルトの文字コートはUTF-8になっています。さて、UTF-8環境のターミナルからEUC-JP環境のサーバにssh接続すると、…

Openofficeのセキュリティレベルを設定する

MAC

Openoffice.org3からデフォルトのセキュリティレベルが「高」になりました。これだと動かないマクロがあるので、「中」に変更したいときがあります。その方法を検索すると、『「ツール」−「マクロ」−「 セキュリティ」でマクロのセキュリティレベルを変更する…

P2Pソフトは危険

言うまでもなく、ファイル共有ソフト(P2Pソフト)はセキュリティ上、とても危険。当たり前のことなのに、ファイル共有ソフトを使っていて個人情報が流出してしまったというニュースを頻繁に目にします。本当に危険だということを認識していない人が多いんで…

Thunderbirdでフォルダ名を大文字に変えられない

Thunderbirdでは、フォルダ名の大文字小文字に変えるだけの変更をするとエラーになります。どういうことかというと、例えばフォルダ名"test"からフォルダ名"Test"に変更しようとすると、"そのフォルダ名は既に存在します"というエラーが出ます。これはバグ登…

Google Calendar APIに挑戦

プログラミング言語Java とEffective Java 第2版を読了しました。仕事でJavaを使うことは今のところないのですが、オブジェクト指向の言語をちゃんと勉強したのは初めてで、学ぶものは多かったです。忘れないうちにJavaでプログラミングしたい。ということで…

シェルスクリプトで、空白で詰めない

シェルスクリプトでは、空白は詰められてしまいます。 ダブルクォーテーションで囲むと、空白は詰められなくなります。 [Oswald@fedora ~]$ string="a b" [Oswald@fedora ~]$ echo $string a b (←空白を詰める) [Oswald@fedora ~]$ echo "$string" a b (←…

cronスクリプトが終了しない

cronスクリプトの実行が最後まで完了しない現象が起こりました。調べたところ、cronスクリプトの標準出力(+標準エラー出力)の量が多すぎて、パイプ詰まりが起こってしまい、処理がそこで固まっていました。例えば次のように大量の標準出力を行うcronスク…

cronディレクトリはinotifyサポートを受けている

/etc/cron.d、/etc/cron.daily、/etc/cron.weeklyなどのcronディレクトリはinotifyでサポートされているため、このディレクトリにスクリプトを追加/削除したり、編集したりすると、それらの変更はcrondを再起動しなくても反映されます。 サーバの設定ファイ…

ndiswrapperを使ってWindows用ドライバを動かす

Windowsで使っていたLogitec LAN-TX/U1H2 Ethernet AdapterをLinuxでも使おうと思ったら、楽勝でした。dmesgを見たらデバイスが認識されているようだったので、ndiswrapperを使ってWindows用のドライバをインストールしたら、簡単に動きました↓ [Oswald@fedo…

fedora12でvmware playerが起動しない

一昨日のエントリで、PCをデュアルブートにして、WindowsとLinuxを入れました。そして昨日のエントリで、Linuxからvmware playerでWindowsを起動できるようにしました。Linuxは、具体的にはFedora12を使っていました。仮想マシンはvmware-player-3.0.1を使っ…

vmware playerで既存のパーティションを起動する

昨日のエントリでWindowsとLinuxのデュアルブート(マルチブート)の状態になっています。/dev/sda1にWindows、/dev/sda2にLinuxがインストールされています。/dev/sdaにgrubが入っています。この状態でLinuxを起動して、ホストOSがLinuxの状態で仮想マシン…

Linuxに移行

Windows XP Proを使っていた既存のPCにLinuxを入れることにしました。Windowsの環境を削除するのはもったいないので、パーティション分割して、片方にはWindowsを残し、もう片方にLinuxをインストールすることにしました。 まずパーティションを分割するので…

MACで音声データの再生スピードを変更する方法

MAC

iPod touchは、バージョン3からオーディオブックやポッドキャストの音声データの再生速度を2倍速や1/2倍速に変更できるようになりました。バージョン2から3へのアップデートは600円なので、高くはないと思います。ではiTunesで再生速度を設定できないのかと…

自宅メールサーバーの構築

勉強を兼ねて、自宅でメールサーバーを構築してみました。1台のlinuxマシンにpostfixとdovecotを入れました。主な作業は以下の3点です。 dovecotの設定(/etc/dovecot.conf) postfixの設定(/etc/postfix/main.cf) OP25B対応(/etc/postfix/main.cf) OP25…

4月から池上彰さんのニュース番組が始まります

中学生のとき、毎週日曜日に週刊こどもニュースを見るのが楽しみでした。そのときどきのニュースを分かりやすく伝えてくれる番組でした。今は毎週土曜日18時10分〜42分にNHKで放送されています。当時、お父さん役だった池上彰さんは、今でもニュースを分かり…

Software Design 総集編を購入

Software Design 総集編 【2000~2009】(DVD付)を購入しました。付録のDVDには、2000年〜2009年までのすべての記事がPDFになっています。「創刊20周年記念企画第1弾!」と書いてあるので、第2弾以降も楽しみです。

オブジェクト指向でなぜつくるのか

オブジェクト指向でなぜつくるのかという本を読みました。友達の家に遊びに行ったときに見つけて、読みました。知っておくべきオブジェクト指向の話が網羅的に分かりやすく説明されていました。まず導入部として、オブジェクト指向の概念を説明しています。…

iPod touch入門・活用ガイド

iPod Fan iPod touch入門・活用ガイド 第2世代iPod touch対応版を読みました。夏にiPod touchを買ったのですが、iPodを使いこなしているとは言い難い状況です。iPodは購入しても分厚い取扱説明書は同封していないので、知りたい操作の方法だけインターネット…

オーディオブックがシャッフル再生されてしまう

ipod touchのオーディオブックがシャッフル再生されてしまい、戻し方が2,3日間、分かりませんでしたが、やっと戻し方が分かりました。音楽を再生するときのモードがシャッフル再生になっていると、オーディオブックもシャッフル再生になってしまうのが原…

徒歩通勤 + オーディオブック

最近、自分の健康のために徒歩通勤を始めました。 家から会社まで4km弱。早歩きで40分くらいです。 一度、二宮金次郎のように本を読みながら徒歩通勤してみたのですが、 とても目が疲れました。また、危険かも知れません。 そこで、オーディオブックを聴きな…

InsomniaX が snow leopard に対応しました

MAC

macbookを使っています。パソコンを閉じてもsleepモードにならないInsomniaXというフリーソフトが便利でお気に入りでした。leopardのときから使っていたのですが、OSをsnow leopardにアップデートしてから、このソフトが動かなくなっていました。今日、久々…

ネットワークスペシャリストに挑戦しました

先週の日曜はIPAの情報処理試験でした。今回はネットワークスペシャリストに挑戦してきました。結論から言うと、手応えがなく残念ながら不合格となりそうです。試験は午前1、午前2、午後1、午後2の4部構成です。 午前1は免除でした。春に応用情報技術…

迷いの晴れる時間術

シゴタノで書かれた紹介文を読んで興味を持ち、迷いの晴れる時間術という本を読みました。時間術というタイトルですが、自己啓発本によく見られるような時間術のことが書かれているわけではありません。時間志向という考え方を理解して時間のとらえかたを変…

SJC-Pに合格しました

今日はSJC-P(Sun認定Javaプログラマ)に挑戦してきました。無事に合格することができました。受験料が31,500円もするので、絶対に1回で合格したかった。合格できて、嬉しいというか、ホッとしています。この試験はJavaのバージョンに対応した試験を受ける…

hashCodeメソッドとequalsメソッド

JavaのhashCodeメソッドとequalsメソッドは以下のような条件を満たしてないといけません。 Condition Required Not Required(But Allowed) x.equals(y) == true x.hashCode() == y.hashCode() x.hashCode() == y.hashCode() x.equals(y) == true x.equals(y)…

yesコマンドの使い方

Unix系OSにはyesコマンドという、ずっと「y」を出力しつづけるコマンドがあります。 [Oswald ~]$ yes y y y y y y 使い道としては、対話的に返答を求めるコマンドに対して、yで返答しつづけることが出来ます。例えば、「rm -i *」とすると、対話的に返答を求…

SJC-Pに挑戦しようと思います

4月に応用情報技術者試験に挑戦して、無事に合格することが出来ました。次はSJC-P(Sun認定Javaプログラマ)に挑戦しようと思います。受験料が31500円(税込み)と高額ですが・・・。この試験はJavaのバージョンに対応した試験を受けることが出来ます…

localtime()は同じポインタを見ている

C言語でlocaltime()を使っていてハマりました。以下のようなケースで、です。 #include #include int main (void) { time_t t1, t2; struct tm *tm1, *tm2; t1 = time(NULL); // 現在時刻を取得 t2 = t1 + 24 * 60 * 60; // 24時間後の時刻を取得 tm1 = loca…

glibcの実装を見る方法2

glibcとは、gnuの標準Cライブラリのことです。 以前、glibcの実装を見る方法というエントリを書きました。このときは、サーバがCVSサーバであったため、CVSコマンドでソースコードを持ってくる方法を書きました。 しかし久々にアクセスしたら、今はGITサーバ…

応用情報技術者試験を受験

4/19(日)に応用情報技術者試験を受験してきました。応用情報技術者試験というのはIPAが実施する情報処理技術者試験の試験区分の一つです。以前はソフトウェア開発技術者試験という名前でしたが、今回から名前が変わりました。試験範囲は以前のものより少し広…

送信時刻を指定できるLetterMeLater

送信時刻を指定してメールを送りたいと思うケースがあると思います。そんなときに僕が使っているのがLetterMeLaterです。Thunderbirdのaddonにも送信時刻を指定してメールを送る機能がありますが、その時刻にThunderbirdが起動していることが前提なので可用…

シャットダウンプロセスの仕組み

Linuxの起動プロセスの仕組みに関する記述はよく見ることが出来ますが、シャットダウンプロセスの仕組みに関する記述はあまりないので、ここに記しておきます。 poweroffコマンドが呼ばれると、Linuのランレベルが0になります。rebootコマンドの場合はランレ…

リモートデスクトップがうまくいかないときのチェック項目

まず、コマンドプロンプトで netstat -an とやって、 3389番ポートが Listen されているかどうかを確認します。ちゃんと Listen されていれば、 「tcp 0.0.0.0:3389 * Listen」 みたいに表示されます。 3389番ポートが Listen されているかどうかで、確認す…

glibcの実装を見る方法

glibcとはGNUが提供する標準Cライブラリのことです。Linuxのマシンには標準で入っています。 「strcspnってどんな実装になっているのだろう?」と思ったことがあり、「いや、そもそも標準Cライブラリの実装ってどこで見ることが出来るのだろう」に発展しまし…

Adroit Photo Recoveryを使ってみました

Digital Assembly社のAdroit Photo Recoveryというソフトウェアがあることを知りました。これがすごい!ハードディスクから削除された画像ファイルを復元できるんです!詳しくはニューヨークタイムズの記事でも紹介されています。僕の拙い英語力で理解するに…

仕事は5年でやめなさい

タリーズコーヒーを日本に広めた松田公太さんの本です。友達の家にあった本、タイトルに惹かれて手に取りました。読みやすい本で2時間で読破しました。1〜5章で構成されていますが、「仕事は5年でやめなさい」というタイトルに沿った内容は1章の前半の…

[開く]ダイアログボックスへのフォルダの追加

今日もWINDOWS XP HACKSを読んで実践したことを一つ。 特定のWindowsアプリケーション(メモ帳など)を使用してファイルを開くと、[開く]ダイアログボックスの左側に、ファイルを開くために操作できるアイコンやフォルダのグループ(ここでは[履歴]、[デスク…

コントロールパネルの制御

WINDOWS XP HACKSという本を読んでいます。会社の本棚にあったので、借りてかえることに。 うちの会社はクライアントPCの管理が徹底されていて、基本的には Windows XP Professional ー Service Pack 2 しか使わせてもらえません。僕も会社では毎日 Windows …

文字パレットの表示を無効にする

MAC

「ことえり環境設定」->「入力操作」->「Windows風のキー操作」にチェックを入れて使っています。こうすると、例えば「っ」を出力したいときに、「xtu」とキーを打つのではなく、「ltu」とキーを入力すれば良くなります。 しかしこの設定をすると、Ctrl + K…

HTTPSプロキシの仕組み

例えば、以下のようなネットワークを考えます。 ┌──────────┐ ┌─────────┐ ┌───────────┐ │ クライアントPC │ <───> │ プロキシサーバ │ <───> │ HTTPSサーバ │ └──────────┘ └─────────┘ └───────────┘ 192.168.1.40 192.168.1.2 https_server.j…

ソフトウェア開発で伸びる人、伸びない人

入社直後に読んだ本を久々に読みました。当時はあまりピンと来なくて、あまり印象に残っていなかったのですが、久々に読んだら、「うんうん、そうだよなぁ」って思ったり、「あっ、この悪い例は僕もやっている・・・」って頭を抱えてしまったり。 この本では…