タグ

ブックマーク / uyota.asablo.jp (4)

  • 一番簡単なシリアルコンソール: uyota 匠の一手

    FreeBSD でのシリアルコンソールの使い方は Setting Up the Serial Console に長々と書かれている。 シリアルコンソールを有効にする設定は色々あるみたいだが、一番簡単なのは、/etc/ttys を変更する以下の方法だろう。 #ttyd0 "/usr/libexec/getty std.9600" dialup off secure ttyd0 "/usr/libexec/getty std.9600" vt100 on secure ttyd を vt100 など、自分に対応するターミナル型を記述する。 この方法だと、login: プロンプトがシリアルコンソールを通して受けられる様になる。

  • lockf(1): uyota 匠の一手

    ふと、面白いコマンドを見つけた。FreeBSD では、結構古い部類に入るコマンドだ。UNIX や FreeBSD の知識はそれなりにあるとは思っているが、インストールされているコマンドの数は多い。また、特定のプラットフォームだけにしかないコマンドは、古くから入っていたとしてもなかなか気が付かないこともある。 % man lockf NAME lockf -- execute a command while holding a file lock SYNOPSIS lockf [-ks] [-t seconds] file command [arguments] DESCRIPTION The lockf utility acquires an exclusive lock on a file, creating it if necessary, and removing the file

  • ports 作業ディレクトリの削除の高速化: uyota 匠の一手

    既に WRKDIRPREFIX=/ports/tmp を /etc/make.conf に設定している。その為、ports をビルドする時の作業ディレクトリは全て /ports/tmp 以下になり、make clean をする必要がなく、作業ディレクトリの削除も rm -rf /ports/tmp/usr/ports ですむ。 今回、ports を最初から入れ直したら、5 GB 程の作業ディレクトリがたまった。そこで、rm -rf /ports/tmp/usr/ports をしたのだが、15 分も掛かったのだ。こんなに時間が掛かっては、高速化したくならないわけがない!!! そこで、ports 作業ディレクトリに専用パーティションを与える。特に余裕もないので、mdconfig で vnode 型を割り当てるのだ。パーティションを占める領域はわずかに減るかも知れないが、ファイルの削除は一瞬で出

  • fision: 同一内容のファイルを単一 i-node にまとめる: uyota 匠の一手

    pdumpfs を使ってバックアップを取っている。特定の日のファイルを全て、そのままのディレクトリ構造で保存しておきたいからだ。pdumpfs のバックアップは月に一度しかやらないが、ファイルがたまっていく。pdumpfs でも明記されているが、長期にわたって続けていると cp や mv などの影響で複製がどんどん増えていくのも困り物だ。 同じ内容のファイルをハードリンクに変えるプログラムを探したが見つからなかった。同じ内容のファイルを探して、削除するプログラムはたくさん見つかったが。同じ内容だからといって、消されては困るのだ。 そこで、同一内容のファイルを一つの i-node にまとめるプログラムを書いた。指定されたディレクトリ内のファイルの大きさでまとめ、同じサイズのファイルを比較する。もし、ファイルの内容が同じと判定されたら、新しい方のファイルを削除し、古い方のファイルへのハードリン

  • 1