さすがはLinux
(コメント: 0)
あるプログラムをCentOS 7に対応させる作業の中、quotaの扱いで「やはりLinux」と思う挙動がありました。ユーあーのquotaを調べるために、
- ユーザーのホームディレクトリを取得:
getpwnam(3)
- マウントされているファイルシステムの情報を取得:
getmntinfo(3)
- 得られたマウント情報からquotaが有効かどうか確認
- ホームディレクトリのあるデバイス番号と、マウントしているデバイス番号が一致しているものを選択
として、ホームディレクトリのあるデバイスファイルを得た上で、quotactl(2)
でquotaの情報を得ています。(若干、細かいところは省略しています。)
ここで、3.のところでCentOS 6やUbuntu 12では得られたquotaを使用するようにてマウントしているかどうかが、CentOS 7のXFSでは取得できません。(何てこった!)
さらに、quotaそのものもXFS専用の指定が用意されています。一応、それを使用しなくてもユーザーやグループのquotaの情報は取得できていますが、XFSだけのプロジェクトのquotaは専用の方でないとダメそうです。つまり、新しいファイルシステムをサポートするのは良いのだけど、カーネルやシステムコールといったレベルでは全然まとめられていません。
あー、さすがLinuxでした。
Copyright © 2011-2024 Takahiro Kambe all rights reserved.
コメント
コメントを追加