タグ

osに関するy10kのブックマーク (2)

  • 安全なファイル書き換えにはディレクトリも fsync すべき。だけど Perl でどう書くか - kazuhoのメモ置き場

    間違ってたらツッコミお願いします。 ext4 が出たタイミングで話題になったことだけど、(ext4 に関係なく一般論として) ファイルを安全に書き換えるためには、いくつかの手順を踏む必要がある。で、Perl だとだいたい以下のようになる。 # 1) 適当なテンポラリファイル名 (格納先と同ディレクトリ) my $newfn = "tmp.$$"; # 2) ファイルを書いて fsync open my $fh, '>', $newfn or die "failed to open file:$newfn:$!"; print $fh $data; IO::Handle::flush($fh); or die "flush failed:$!"; IO::Handle::sync($fh); or die "fsync failed:$!"; close $fh; # 3) 古いファイルを別

    安全なファイル書き換えにはディレクトリも fsync すべき。だけど Perl でどう書くか - kazuhoのメモ置き場
  • Diff Unix Plan9

    以下に思いつくままにUNIXとPlan9との相違点を述べる。ツールに過ぎないものの相違は省いている。(重要な論点が抜け落ちているかも知れない。) なおUNIXに関しては多数の文献があるが、それが生まれた過程と特徴に関しては Dennis M. Ritchie による "The Evolution of the Unix Time-sharing System"(http://cm.bell-labs.com/cm/cs/who/dmr/hist.html) を読むのが良い。 root 特権 Plan9 には root特権は存在しない。そして root に関する全てのしがらみがPlan9では廃止された。 root のような特権ユーザがいない chown コマンドが廃止された SUID を廃止した su コマンドがない (しかしこれは作れるはずである。しかし必ずパスワードが要求されるが) 「

    y10k
    y10k 2007/05/06
  • 1