2.6.25より古いカーネルを採用しているCentOS 5などのディストリビューションでは、一般ユーザーでは ionice -c3 でジョブのIOのscheduling classをidleに設定できない。以下のようなエラーが表示される。
ioprio_set: Operation not permitted
この問題は、/etc/sudoersに設定を追加した上で、 sudo ionice -c3 のようにして実行すれば解決する。
設定
visudo を実行して /etc/sudoers に以下の内容を追加する。以下は amandabackup というユーザーがパスワード無しで sudo ionice -c3 を実行できるようにする例。
Defaults:amandabackup !requiretty
amandabackup ALL=NOPASSWD: /usr/bin/ionice
!requiretty は、ssh経由でコマンドを実行するときなどに必要。以下のようなエラーでsudoがうまくいかない場合に追加する。
sudo: sorry, you must have a tty to run sudo
実行例
sudo /usr/bin/ionice -c3 コマンド