前回表題の件をUPしたのですが、回答いただけず取り下げ処置を取りました。
要旨とするところは
linuxの起動時に2つのprogramを実行します。
autologin
autoboot
です。
前者はGOとなったが後者は無視される、
その理由として前者は*.cのprogramを、
後者は*.shを実行することに原因がある、つまりscriptを実行してくれない要因がある、その解決策を教えてほしい、というものでした。
実行過程で両者に干渉がある可能性が浮上しました。そこで前者を単なるwaitに変更してみました。
for(i=0;i <1000; i++) {}
なんとこれでautbootしてしまいました。
つまりscriptを実行しない何らかの要因があるというのは誤りらしいことが分かりました。
これでようやく自動的にlinux側programが立ち上がるようになりました。
そこで質問があります。
1.loginしないでlinux OSが使える、これは正しいのでしょうか?。
以前にもこの問題はありました。autologin,autboot両方の機能を動作させたつもりが、実際は前者の実行が遅れ(?)、後者が先行して動作状態に入ってしまったらしく前者は実行されていませんでした。
この事態に気が付かず数か月間使い続け、その間は特に動作に支障はありませんでした。
このような動作で発生が予想される問題はありますか?
2.もちろんloginなしの動作は回避したいです。
今回は幸い(?)autologinが先に実行されます。それがどのような理由に寄るのは把握できませんが。
ここで適切なシーケンスになる措置を行えばこの異常は解消できるのではないかと考えられます。
前者の*.cは以下です:
autologin.c: #include <unistd.h> #include <stdio.h> int main() { execlp( "login", "login", "-f", "root", 0); }
この後にwaitを入れるなどの措置がとれればいいのですが。
autologinのbinはひとつのprogramである必要があると思います。
modifyしたprogramをご教示願えれば幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/24 11:44
2019/10/24 12:10
2019/10/24 12:17
2019/10/25 03:27