GeekFactory

int128.hatenablog.com

linux

OpenSSLの証明書作成スクリプト(CA.sh)を理解する

サーバ証明書はOpenSSLに付属のスクリプトで簡単に作れますが、中で何をやってるのか分かりません。ここではopensslのコマンドを調べながら、一つ一つのステップを調べていきます。 新しい認証局を作る サーバ側のCSRを生成する 認証局で署名する /etc/ssl/o…

coreserverのSSH登録を自動化するスクリプト

coreserverにSSHで接続するには事前にIPアドレスを登録しておく必要がありますが、これを自動化するスクリプトを書きました。というか、以前に書いたのを消してしまってバックアップからサルベージしたのでついでに掲載。 #!/usr/bin/env perl use strict; u…

airproxy-0.5.0のインストール

WILLCOM向けの高速化プロキシを入れました。 airproxy は、画像を減色・縮小するフリーの HTTP プロキシサーバです。airproxy を使用すると PHS や 携帯電話などの低速回線でも快適にウェブブラウズができるようになります。 http://www.ne.jp/asahi/web/ryo/…

Domain Uのコンソールが表示されない時の対処法

Domain Uを起動するとカーネルメッセージは表示されるものの、その後のinitが出力されないことがあります。そんな時は設定ファイルに以下を追記しましょう: extra = "xencons=tty" drivers/xen/console/console.c のコメントに説明がありました。 /* * Mode…

インストール済みパッケージを時系列で表示する

インストール済みパッケージの情報は /var/db/pkg 以下に格納されています。 find /var/db/pkg/ -name CBUILD | xargs ls -ltr | sed -e 's,/\| , ,g' | cut -d' ' -f6,7,8,13,14 | column -t この1行コマンドを実行すると、インストール日時とパッケージ名…

xen-sources-2.6.27-r4のビルド

Xenの公式カーネルは2.6.18止まりですが、各方面で2.6.27のパッチが出ています。 xen-patches-2.6.27-6.tar.bz2 xen-sources-2.6.27-r4.ebuild http://code.google.com/p/gentoo-xen-kernel/downloads/list ビルド手順はこちらのページを参考にしました: eb…

X27Dで始める自宅サーバ(カーネル構築編)

X27DはデュアルコアAtomが載っている超小型デスクトップPCです。Linuxカーネル構築のうち、ハードウェアに依存するポイントをまとめてみました。カーネルはgentoo-sources-2.6.26-gentoo-r3 (Gentoo Linux)です。 Atom 330プロセッサ マルチコア、HTスケジュ…

X27Dで始める自宅サーバ(概説)

X27DはデュアルコアAtomが載っている超小型デスクトップPCです。仰々しいタイトルを付けたものの、やる気が持続する限りエントリを書き続けたいと思います。この連載(?)の目標は以下。 プライベートサーバと公開用サーバを兼ねる。両者はセキュアな方法で…

LVMブートのinitramfsをスクラッチから作る

/を論理ボリューム上に置く場合は、カーネルが/をマウントする前に論理ボリュームを有効化してやる必要があります。そのため、initramfsに有効化処理を組み込んでカーネルに渡します。genkernelを使うと自動でやってくれますが、スクラッチから作る方法もあ…

依存ライブラリを自動検出してinitramfsを生成するスクリプト

initramfsを作成するとき、すべてのバイナリをstaticビルドするのは面倒です。そこで、依存する共有ライブラリを検出し、ついでにcpioアーカイブまでやってくれるスクリプトを書きました。 使い方 initramfsに含めたい実行ファイルを引数に指定します。実行…

coLinuxでルートファイルシステムにxfsを使用する方法

coLinuxの標準カーネルではxfsサポートがkernel module扱いになっています。したがって、そのままでは起動時にxfsパーティションを認識できません。ここではinitramfsを使用してxfsパーティションを認識する方法を説明します。 構築準備 initramfsはカーネル…

依存するライブラリをすべて表示するPerlスクリプト

Linuxバイナリが依存するライブラリを表示するスクリプトです。 #!/usr/bin/perl use File::Basename; my %libs; open(deps, "ldd @ARGV |"); while(<deps>) { if(/ => (.+) \(/) { $libs{$1} = 1; } elsif(/ => \(/) { } elsif(/^\t(.+) \(/) { $libs{$1} = 1; } </deps>…

binutils-2.18 configure options

configureオプションについてまとめたドキュメントがなかったので調べてみました。各ディレクトリでconfigure --helpを実行し、オプションを集約してみました。 各ディレクトリで共通のオプションです。autoconfで一般的に生成されるものは省いてます。 --di…

Kernel 2.6.25

やっと動きました。パッチ force_mach-type.patch を当てる必要があります。 とりあえずコンソールのログを「Tumblr | int128 - kurobox pro kernel 2.6.25」に貼っておきます。USBメモリが空なのでinitが上がってないです。

Kernel 2.6.25-rc8-git8

2.6.25から玄箱Proがサポートされるらしいので試してみました。続きは明日以降。 u-boot mkimage そのままではMakeが通らないため、強引にコンパイルする。 cd tools gcc -g -Wall -pedantic -I../include -I.. -DTEXT_BASE= -DUSE_HOSTCC -O -c mkimage.c c…

sshfsで接続が切れたときに自動的に再接続する

autosshをインストールする。 # apt-get install autossh接続時にオプションとして ssh_command=autossh を渡す。 sshfs ユーザID@example.com:. /mnt/remote/example.com -o idmap=user,allow_other,transform_symlinks,ssh_command=autossh

windowsからssh経由でフォルダを読み書きする方法

root権限のあるLinuxマシンを用意する。ないときはVirtualBox等のVM上にLinuxを構築しよう。ここではUbuntuを前提として書く。 sshfsのインストールと設定 sshfsをインストールする。 # apt-get install sshfs/etc/fuse.conf を書き換える。user_allow_other…