まだプログラマーですが何か?

プログラマーネタとアスリートネタ中心。たまに作成したウェブサービス関連の話も http://twitter.com/dotnsf

システムプログラマーとして株式会社クーシーに入社後、半年が経ちました。

まだ毎日が勉強で、知らないことも驚くことも多いし、偉そうに感想を言えるような立場ではないのですが、特に大きく印象に残っている発見はこれです:
「今どきのウェブって、これだけの人がこれだけの作業をしてできているのか」

例えば企業のウェブサイト。中小企業だったりするとサイトの規模そのものは必ずしも大きいわけではないのです。極端な例ですが、1ページだけを作る場合で考えます。

これまでの自分がそのページを作ろうとすると、どちらかというと「やりたいことは技術的に実現できるかどうか」を中心に考えていました。今も自分の担当箇所でいえば技術的にできるかどうか、どのくらいでできそうか、ということが検討内容になりますが、それをどう見せるか、についてはあまり重視していませんでした。まあ「jQuery Mobileとか、Bootstrap とか、適当なフレームワークを適当にカスタマイズして使おう。画像は誰か描いて(苦笑)」程度に考えていた、というレベルです。ぶっちゃけ CSS とか基礎はわかっているつもりだけど自分ではサンプルを作る程度でそれ以上にいじることはほとんどない感じ。悪く言えば見た目は軽視してました。

今の会社では UI や UX を専門に担当するチームがあります。PC 用なのか、スマホ用なのか、レスポンシブデザインにするのかを考慮した上で、画像やグラフなどはピクセルレベルで調整して、必要であれば画像のデザインも行った上で HTML をデザインし、CSS を用意してくれます。僕らはその HTML をテンプレートにして組み込んだり、 CSS はロードして指定するだけ。これにバックエンド処理を加えたり、動的な JavaScript を加えたりしてページを作ります。良くも悪くも分業制を敷いて、それぞれのプロが担当する形です。クーシーの強みは(どちらかを外注するとかではなく)その両方のプロが所属しているところだと思います。

これまでの自分の感覚と比べると、軽視していた半分の作業を専門チームがやってくれている、という感じです。作業は細かいし、さすが質も高いし、そして自分は楽です(その代わり作業人月は増えるけど)。自分があまり注力していなかった分野のプロと接する機会がある、というだけでもすごくいい刺激が得られるし、技術を盗む相手という意味でも頼もしい。そして何よりも自分が担当したサイトやサービスがすごく良さげに見える(笑)。

と、そんな当たり前のことが新鮮な状態から自分にとっても当たり前のように感じつつある今日この頃です。


 

CentOS のローカル環境内に yum のリポジトリを作成する手順を紹介します。


RHEL(RedHat Enterprise Linux) や CentOS を使っている人には「何を今さら」な情報だと思いますが、アプリケーションやモジュールのインストールには rpm や yum を利用することが多いと思います。

特に yum を利用することで、目的のモジュールを導入するために必要となる前提ライブラリが既にインストールされているかどうかをチェックし、更にその前提ライブラリの前提となるライブラリのインストール状況も調べて・・・で、現在の環境に足りないライブラリやモジュールを順次インストールした上で最終的には目的のモジュールまでインストールしてくれます。非常に便利なツールです。

ただ RHEL にせよ CentOS にせよ、その利用の条件として「yum リポジトリ」と呼ばれる一連のファイル環境を用意する必要があります。DVD などからの新規導入時にはその DVD メディアの中に yum リポジトリが含まれていてそのリポジトリを使ってインストールが行われたり、インターネットアクセス環境が整っている場合はインターネット上の yum リポジトリを参照することでインストールを行うことができます。なので、通常はリポジトリの存在をいちいち意識することなく yum を利用することが大半だと思います。

ところが、インターネット接続のない特殊な環境下の場合、最初の導入時こそ DVD 内のメディアリポジトリを利用して指定したアプリケーションやモジュールを導入することになるので何も変わりませんが、その DVD を取り出して再起動した後からは yum リポジトリにアクセスできなくなってしまうため、後から足りないモジュールを追加インストールする際に苦労します。もちろんそこで改めて DVD メディアをマウントすればそのメディアリポジトリを使うことはできますが、わざわざ DVD メディアを再度用意する必要があります。またその場合でもインストールできるのは DVD 内に含まれている(最新版とは限らない)モジュールだけであって、最新モジュールを yum でインストールするには最新モジュールの含まれたリポジトリの DVD メディアを用意する必要があります。要は色々面倒なわけです。

そこでインターネット接続がない場合でも、メディアを意識せずに yum を使えるようにするためにローカル環境のディスクシステム内に yum リポジトリを作る方法を紹介します。この環境を作っておけばとりあえずそのリポジトリに含まれているモジュールについては yum で(依存関係ごと)導入できるようになるし、モジュールのバージョンアップをしたい場合は必要なモジュールをローカルファイルシステム上にコピーした上で再度リポジトリを作成し直せばいい、ということになります。バージョン管理の面倒さこそありますが、ディスク上にリポジトリを作っておくことで DVD メディアやネット経由のリポジトリよりは高速なアクセスが期待できる、というメリットもあります。


では以下にその手順を紹介します:

まずはリポジトリの元になる DVD のインストールメディア(RedHat や CentOS など)を用意します。このメディアが /mnt にマウントされていて、アクセスできる状態(/mnt/Packages/ というフォルダが存在している状態)になっているものと仮定します。

次にリポジトリを作成するディレクトリを用意します。ここでは /usr/tmp/repo/ というフォルダ以下にローカルリポジトリを作成することにします。

というわけで、まずは /usr/tmp/repo を作成しておきます:
# mkdir /usr/tmp/repo/


このディレクトリ内に centos/ サブディレクトリを作ります(これがリポジトリの名称になります):
# mkdir /usr/tmp/repo/centos


更にこのディレクトリ内を DVD と同じ状態にするべく、Packages/ サブディレクトリを作ります:
# mkdir /usr/tmp/repo/centos/Packages


DVD 内のリポジトリに含まれる一連の rpm ファイルを全て用意したディレクトリ以下へコピーします:
# cp /mnt/Packages/*.rpm /usr/tmp/repo/centos/Packages


ここから /usr/tmp/repo をローカルリポジトリにするための設定を行います。まずは rpm を使ってローカルリポジトリ作成に必要なツールだけを単独で3つ導入します:
# cd /usr/tmp/repo/centos/Packages
# rpm -ivh deltarpm-3.5-0.5.2009093git.el6.x86_64.rpm
# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
# rpm -ivh createrepo-0.9.8-4.el6.noarch.rpm
(バージョンの数値は用意したメディアによって異なっている可能性があります。適宜読み変えてください)


導入した createrepo を使って、/usr/tmp/repo 以下にローカルレポジトリを作成します:
# cd /usr/tmp/repo
# createrepo .


yum がこのローカルレポジトリを利用できるよう、以下のファイルを新規に作成・編集します:
# vi /etc/yum.repos.d/centos.repo

(以下、/etc/yum.repos.d/centos.repo の内容)
[centos]
gpgcheck=0
name=My Repo
baseurl=file:///usr/tmp/repo


yum リポジトリを更新します:
# yum clean all
# yum list


これでローカルファイルシステム内に centos という名称の yum リポジトリが作成できました。インターネットに繋がっていなくても、インストール DVD メディアがなくても yum を使ったモジュールのインストールが可能になります。


なお、モジュールを新しいものに更新したい場合や、このローカルリポジトリに別の .rpm ファイルを含めたい場合はそれらを /usr/tmp/centos/Packages/ 以下にコピーして、再度 yum リポジトリを更新(上述)すれば新しい内容の yum リポジトリになります。






 

3年前の今頃、震災直前の東京ディズニーランド「春キャン(春のキャンパスデーパスポート)」

今をときめく2人の女優さんが、まだ無名だった頃にこのCMで共演していた:



有村さんと能年さんは同じ事務所に所属していたので、まあ共演自体は珍しいことではないのだと思う。ただそれから2年経ち、社会現象になるような朝のドラマで共演して注目を浴びるようなる、その前の初々しい姿をたまたま見つけることができた。


となると、今やってる2014 年版の春キャンCMにも未来の大スターがいるのでは? と思ってしまう:


一番右の樋口柚子(ひぐちゆず)さんが可愛すぎて死ぬ。

 

このページのトップヘ