- 締切済み
LinuxのOS稼動時間(uptime)を変更する方法を探しております
お世話になります。 ◆質問 現在、社内試験において、 OSが起動してからの連続稼動時間を、変更する方法を探しております。 通常は、uptimeコマンドを実行すれば、OSが起動してからの起動時間が表示されますが、 この時間を365日起動後、497日起動後にする方法がございますでしょうか? ------------------------------------------------------------------------ 15:19:31 up 3 days, 23:23, 2 users, load average: 0.00, 0.00, 0.00 ------------------------------------------------------------------------ ※なお、実際にその日まで待つことは、試験の日数上できません。 ※環境は下記の通りとなります。 ◆実行環境 マシン: ML115 G5 OS: Red Hat Enterprise Linux ES release 4 (Nahant Update 6) ◆備考 インターネットで、「/proc/uptime」に秒数が 書き込まれて(?)いることはわかりました。 「/proc/uptime」をviで編集をしてみましたが、 エラーとなり、値を書き換えることができませんでした。 ※システムファイルを操作することはよくないと思いますが実行してみました。 --------------------------------------------------------------- 警告: 読込んだ後にファイルに変更がありました!!! 本当に上書きしますか (y/n)?y "/proc/uptime" E667: fsync に失敗しました 警告: 原本ファイルが失われたか変更されました ファイルの保存に成功するまでエディタを終了しないでください! -------------------------------------------------------------- どうか、よろしくお願いいたします。m(_ _)m
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- astronaut
- ベストアンサー率58% (303/516)
#2への補足で状況は良くわかりました。 次のようにすればいいのではないでしょうか? (1) 問題となっているシステムコールをフックして、日数が経過したようにシミュレートしたときに不具合が再現することを確認 (2) パッチをあてて、同様にシステムコールをフックして、不具合が解消されたかを確認
- astronaut
- ベストアンサー率58% (303/516)
RHEL4.x のカーネルは2.6系なので 497日問題は無いはずです。 365日というのは意図がわかりませんが、まずは、どのような観点で何を試験したいのかということが明確でなければ、uptime値を無理矢理変更することが出来たとしても意味がないのではないかと思います。
補足
ご回答ありがとうございました。 >RHEL4.x のカーネルは2.6系なので 497日問題は無いはずです。 情報ありがとうございました。 下記、補足させていただきましたとおり、 モジュールの不具合の再現と、パッチあて後の動作確認をしたいため 稼動時間を変更したいです。 おっしゃるとおり、そもそもuptime値を無理矢理、 変更することが稼働時間を変更することではないかもしれません。 最終目的は、不具合の再現とパッチあて後の動作確認です。
- uwi
- ベストアンサー率74% (55/74)
カーネルの管理する値で通常は変更は不可能だと思います。 変更可能にするカーネルパッチでも当てればできそうですが、 そんな普通でない状態での社内試験に意味があるのかどうかが微妙なのと、 連続稼動時間は連続稼働してその時間になるからこそ意味があるので、間を飛ばして値を書き換える試験に何の意味があるのかよくわかりません。
補足
ご回答ありがとうございます。 補足させていただきます。 あるモジュールがOSのtimeコールを使用しており、 ある日数が経過するとCPUが高騰してしまう不具合があります。 その現象の再現と、パッチをあてたときにその不具合が解消されて いるかどうかを確認したいため、サーバOSの稼動時間を変更する方法を 探しております。 ※単純にuptimeを変更すれば、偽装できないかと思いました。 また、このモジュールは他のモジュールでも使用しているため、 パッチあて後に、これらのモジュールの動作も 確認がとりたいと思っています。
- notnot
- ベストアンサー率47% (4900/10359)
確認してませんが、クロックの日付をずらせばいいのでは?
お礼
ご回答ありがとうございます。
補足
回答ありがとうございます。 dateコマンドにて1年後の値を設定してみましたが、 稼動時間(uptime)は変わりませんでした。
お礼
ご回答ありがとうございます。 >(1) 問題となっているシステムコールをフックして、日数が経過したようにシミュレートしたときに不具合が再現することを確認 なるほどですね!!そんな方法があったとは。。 ただ私のスキルが足りないため、システムコールをフックできるかがわかりません・・・。ネットで検索してみます!ありがとうございます^^ (2) パッチをあてて、同様にシステムコールをフックして、不具合が解消されたかを確認 そうですね、シミュレーションがうまくいけば確認ができますね! ありがとうございます! システムコールのフックについて勉強したいと思います! ありがとうございます。