この記事では、初心者がLinuxサーバーでより速くより正確に作業する方法について説明します。シンプルで使いやすいヒントとコツを共有して、日常業務を自動化し、クラウドでアプリケーションを実行することで煩わしいことを取り除くことができるようにします。このガイドではDebian11ServerEditionを使用します。 Ubuntuを含む同じまたは任意のDebianバリアントサーバーを使用できます。すべての手順とコマンドは問題なく機能します。
スクリプト
初心者がLinuxサーバーの動作に慣れると、システムの更新、ファイルの追加、編集、パッチ適用など、アプリケーションのスムーズな実行を維持するための最大の問題が始まります。
スクリプトが登場します。これは、システム管理者が完璧に機能するのに役立ちます。スクリプトは、システムの効率を高めるだけでなく、システム管理者として成長するための個人的なスキルにも役立ちます。同じコマンドを何度も入力するのではなく、自動化することをお勧めします。スクリプトを作成するためにシステム管理者として使用する言語は関係ありません。 Python、Ruby、またはプレーンシェルスクリプトとします。彼らはあなたがあなたのルーチンから反復的なタスクを取り除くのを助けるために単一の仕事をします。
自動化する方法は?
何かを自動化したときにどのように機能するか見てみましょう。
すべてのLinuxシステム管理者は、セキュリティとパフォーマンスの理由からサーバーを最新の状態に保つ必要があることが確認されています。 Debian 11サーバーを使用しているため、aptアップデートを実行する必要があります 多くの場合、システムを最新の状態に保つためです。コマンドを何度も実行することになると、これは多忙になる可能性があります。
これは簡単に自動化でき、関連するコマンドを再度入力する必要はありません。将来リポジトリ構成を更新する場合は、スクリプトファイルを変更する必要があるかもしれません。
次のスクリプトを毎日のcronに追加しましょう 仕事:
$ #!/bin/bash $ Date=date $ sudo apt update $ echo “apt udpate has been run at $DATE” >> /var/log/apt-updatestats
このスクリプトがどのように機能するか見てみましょう:
$ #!bin/bash
この最初のものは「シバン」と呼ばれます。次に来るコマンドにどのようなインタプリタを使うべきかを示しています。この最初の行には、使用している言語の通訳者へのフルパスが必要です。 bashを使用しています 私たちの場合。
$ DATE=date
2行目は、変数 DATEを初期化したことを示しています。 現在の日付を保存します その中に。
$ sudo apt update
3行目は、 aptを更新するコマンドを実行します データベース。
これで、最後の行は次のようになります。
$ echo “apt update has been run at $DATE” >> /var/log/apt-update stats
メッセージをファイル「apt-updatestats」にエクスポートします 」。これは、コマンドがすでに実行された回数の記録を保持するのに役立ちます。
複数のコマンドがある場合はどうなりますか?
1つのコマンドを自動化する方法を学びましたが、複数のコマンドがある場合はどうでしょうか。次の例では、Debian 11システムで複数のコマンドを実行し、高速化を続ける方法を検討します。
bashシェルインタープリターは非常に強力であるため、ループを作成したり、関数を実行したりすることができます。強力なbashを利用するために、複数のコマンドを1つのファイルに追加してソースします。
これは/etc/init.d/hwclock.shの例です Debian 11サーバーの場合:
$ . /lib/lsb/init-functions
hwclock.shとして initです スクリプトを使用すると、これらすべての関数を1つのファイルにまとめる方が簡単です。このファイルは、システムの日常的な使用に応じてさまざまなタスクを実行するために提供されます。
結論
この記事では、単純なbashスクリプトが、反復的なタスクに時間を浪費することを回避するのにどのように役立つかについて説明しました。これらのタスクはバックグラウンドで実行する必要があり、障害が発生した場合は、ログファイルを調べるだけです。 1行のコマンドと、bashインタープリター用の複数のコマンドを含むファイルの使用方法の両方について説明しました。次の記事では、いくつかの高度なスクリプト手法を共有します。ご不明な点がございましたら、LinuxWaysでサポートさせていただきます。