QT SOLAR 愛島発電所
- 本日の発電量
- 1729 kWh
- 現在の日射量
- 1 Wh/㎡
- 現在の外気温
- 2.2 ℃
(2024/12/10 22:33 更新)
QT SOLAR 愛島発電所
(2024/12/10 22:33 更新)
QT SOLAR 下増田発電所
(2024/12/10 23:00 更新)
QT SOLAR 北原東発電所
(2024/12/10 22:31 更新)
QT SOLAR 長久良辺発電所
(2024/12/10 22:25 更新)
QT SOLAR 白坂発電所
(2024/12/10 22:47 更新)
QT SOLAR 清水沢発電所
(2024/12/10 22:27 更新)
Perlでサービスを実現するためには、実行スクリプトがデーモンとして動作する仕組みが必要となります。
先ずは超簡単な方法でデーモンの実装をしてみましょう。
テストのためデーモンとして実行するスクリプトを作ります。
goodnight.pl
中身は無限ループです。
#!/usr/bin/perl print"Good night world!\n"; while(1){sleep(10)}; exit;
権限を付与します。
chmod 755 goodnight.pl
試しにスクリプトを起動してみる。
perl goodnight.pl
あるいは以下の方法でも良いです。
./goodnight.pl
無限ループに陥るので、制御が返ってきません。
ここでは、control+c
で終了させます。
では、このスクリプトをデーモン化してみます。
方法はいたって簡単。コマンドの最後にアンパサンド「&」を付けるだけです。
./goodnight.pl &
これで制御が返ってきます。バックグラウンドで動いていることを確認してみましょう。
ps aux | grep goodnight
では、このデーモンプロセスの起動を自動化してみます。これは、起動スクリプトの作成によって行います。
sudo touch /etc/init.d/goodnight sudo vi /etc/init.d/goodnight
以下編集。
実行するPerlスクリプトをフルパスで記述します。
#!/bin/sh /home/your-account/goodnight.pl &
このとき最後に & を付け忘れると、プログラムが終了するまでシステムの起動が停止します。
権限の付与。
sudo chmod 755 goodnight
これで起動スクリプトが完成です。
次に、ランレベルの設定をしますが、ここではシンボリックリンクの作成で行うことにします。
取りあえずランレベル2がどうなっているか確認してみます。
ls -l /etc/rc2.d
apache2より後に起動させるようにしてみます。
以下、ランレベル2〜5まで。
sudo ln -s /etc/init.d/goodnight /etc/rc2.d/S92goodnight sudo ln -s /etc/init.d/goodnight /etc/rc3.d/S92goodnight sudo ln -s /etc/init.d/goodnight /etc/rc4.d/S92goodnight sudo ln -s /etc/init.d/goodnight /etc/rc5.d/S92goodnight
正しく出来ているか確認します。実体がない場合、ls -la でシンボリックリンクが反転表示されます。
なお、シンボリックリンクの削除にも触れておきます。
sudo unlink /etc/rc2.d/S92goodnight
rm
でも出来ますが実体を削除しないよう注意です。
と、いうことですが、ランレベルの設定は「sysv-rc-conf」を使っても出来ます。
先ほどの設定が正しく行われたか確認してみましょう。
sudo sysv-rc-conf
これで何の役にも立たないデーモンが完成しました。
再起動して試してみましょう。
sudo shutdown -r now
再起動したら動作しているか確認します。
ps aux | grep goodnight
root権限で動いていますね。
宮城県仙台市太白区長町一丁目2-11
[運営者]
[発電所]
本ウェブサイト上のQT SOLAR 発電所は、グループ会社の発電所も含まれます。