GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu22.04で起動時にスクリプトを実行する方法JammyJellyfishServer / Desktop

この記事の目的は、Ubuntu 22.04 Jammy Jellyfish Server/Desktopでシステムの起動時に実行されるようにBashスクリプトやPythonスクリプトなどのスクリプトを構成することです。

このチュートリアルでは、次のことを学びます。

  • Systemdサービスユニットの作成方法
  • 簡単なディスク容量チェックスクリプトを作成する方法
  • Systemdサービスユニットファイルに権限を設定する方法
  • スクリプトの権限を設定する方法
  • Systemdサービスユニットをシステムの起動時に実行できるようにする方法
ソフトウェア要件とLinuxコマンドラインの規則
カテゴリ 使用する要件、規則、またはソフトウェアバージョン
システム Ubuntu22.04ジャミークラゲ
ソフトウェア N / A
その他 rootまたはsudoを介したLinuxシステムへの特権アクセス コマンド。
コンベンション –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudoを使用して、root権限で実行する必要があります。 コマンド
$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります

Ubuntu22.04での起動時にスクリプトを実行する方法ステップバイステップの説明


Ubuntu 22.04はSystemdに基づいているため、起動時にスクリプトを実行する最も簡単で推奨される方法は、Systemdサービスファイルを作成し、システムの起動中にこのサービスを介してbash、pythonなどのスクリプトを実行することです。

以下の手順は、/homeのディスクスペース使用量を報告するbashスクリプトの例を実行する方法を示しています。 ディレクトリを作成し、レポートを/rootに保存します Ubuntu22.04システムが起動するたびにディレクトリ。

  1. まず、以下の例のようにSystemdサービスファイルを作成します。このファイルを/etc/systemd/system/disk-space-check.serviceとして保存します 。
    [Unit]
    After=network.service
    
    [Service]
    ExecStart=/usr/local/bin/disk-space-check.sh
    
    [Install]
    WantedBy=default.target

    :スクリプトをいつ実行するかをsystemdに指示します。この場合、スクリプトはネットワーク接続後に実行されます。他の例としては、mysql.targetなどがあります。
    ExecStart :このフィールドは、起動時に実行される実際のスクリプトへのフルパスを提供します
    WantedBy :systemdユニットをインストールする必要があるブートターゲットに

    <中央>
    Systemdサービスユニットの作成方法の詳細については、man systemd.unitを実行してください。 コマンド。
  2. Ubuntuシステムの起動時に実行されるスクリプトを作成します。上記の手順1で指定したように、この例の新しいスクリプトのパスと名前は/usr/local/bin/disk-space-check.shになります。 。

    以下はそのようなスクリプトの例です:

    #!/bin/bash
    
    date > /root/disk_space_report.txt
    du -sh /home/ >> /root/disk_space_report.txt
  3. Systemdサービスユニットとスクリプトの両方に適切な権限を設定します。
    $ sudo chmod 744 /usr/local/bin/disk-space-check.sh
    $ sudo chmod 664 /etc/systemd/system/disk-space-check.service
    
  4. 次に、サービスユニットを有効にします。
    $ sudo systemctl daemon-reload
    $ sudo systemctl enable disk-space-check.service
    
  5. これで、システムを再起動する準備が整いました。システムが起動すると、/root内のディスクスペース使用量を含む次のファイルが表示されます。 ディレクトリ:
    $ sudo ls /root/
    disk_space_report.txt
    

まとめ


このチュートリアルでは、システムの起動ごとにスクリプトを実行するようにUbuntu22.04を構成する方法を説明しました。これは、Ubuntuがシステムの再起動から読み込まれるたびにBashまたはPythonスクリプトが実行されるようにするために、システム管理者が実装するのに便利な機能です。


Ubuntu
  1. Ubuntu 22.04 LTSデスクトップ(Jammy Jellyfish)のインストール方法

  2. Ubuntuを22.04LTSJammyJellyfishにアップグレードする方法

  3. Ubuntu Server 22.04にfail2banをインストールする方法:Jammy Jellyfish

  1. Ubuntu 22.04JammyJellyfishデスクトップのインストール方法

  2. Ubuntu 20.04FocalFossaサーバー/デスクトップで起動時にスクリプトを実行する方法

  3. Ubuntu22.04LTSジャミークラゲにGnomeをインストールする方法

  1. Ubuntu 22.04 JammyJellyfishLinuxデスクトップにGnomeShellExtensionsをインストールする方法

  2. Ubuntu22.04でデスクトップショートカットランチャーを作成する方法JammyJellyfishLinux

  3. Ubuntu22.04でSFTPサーバーをセットアップする方法JammyJellyfishLinux