コマンドライン (bash) で Webmin モジュールをインストールするにはどうすればいいですか?

コマンドライン (bash) で Webmin モジュールをインストールするにはどうすればいいですか?

コマンドライン (bash) で webmin にモジュールをインストールしたいのですが、どうすればいいでしょうか?

例:

wget https://download.webmin.com/download/modules/text-editor.wbm.gz

この .gz 内: text-editor.wbm

sudo tar -xf text-editor.wbm.gz

ここに画像の説明を入力してください

GUI 経由でインストールされたモジュール (この場合はテキスト エディター):

ここに画像の説明を入力してください

ファイルを複数の場所に送信します。例:

/usr/share/webmin/テキストエディタ

ここに画像の説明を入力してください

に :/etc/webmin/テキストエディタ

ここに画像の説明を入力してください

に:/var/webmin/モジュール/テキストエディタ(空の):

ここに画像の説明を入力してください

重要:

私のテストで使用した Webmin のインストール方法:

方法1:

sudo sh -c 'echo "deb http://download.webmin.com/download/repository sarge contrib" >> /etc/apt/sources.list'
wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -
sudo apt -y install webmin

方法2:

wget https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb
sudo dpkg --install webmin_1.910_all.deb

著者に尋ねてみた(ジェイミー・キャメロン)日付には応答しません。なぜなら彼はwebminの作者であり、モジュールの作者インストールしようとする

Text Editor 1.4
Description Provides a simple interface for editing text files, with a history of recently-edited files.
Download    text-editor.wbm.gz
Author  Jamie Cameron
Last updated    2007-04-18 11:27:19

アップデート:

テキスト エディター モジュールをインストールするスクリプトを作成することができました。あまり「エレガント」ではありませんが、動作します。

sudo chmod +x text-editor.sh && sudo ./text-editor.sh

#!/bin/bash

fshare=/usr/share/webmin/text-editor
fetc=/etc/webmin/text-editor
fvar=/var/webmin/modules/text-editor

if [ ! -d $fshare ]; then mkdir -p $fshare; fi
if [ ! -d $fetc ]; then mkdir -p $fetc; fi
if [ ! -d $fvar ]; then mkdir -p $fvar; fi
touch $fetc/files
wget -c https://download.webmin.com/download/modules/text-editor.wbm.gz
tar -xf text-editor.wbm.gz
cp -f -R text-editor/* $fshare
cp text-editor/config $fetc
sed -i '$ s/$/ text-editor/' /etc/webmin/webmin.acl
sh -c 'echo "text-editor=1" >> /etc/webmin/installed.cache'
/etc/init.d/webmin restart

しかし、コマンドラインでWebminモジュールをインストールするより良い方法があるはずです。

答え1

はじめに --------- Webmin は、既存のコードを変更することなく、新しいモジュールを簡単に追加できるように設計されています。モジュールは、Photoshop プラグインや iPhone アプリケーションのようなものと考えることができます。Webmin の開発者以外の人が作成し、開発者が選択したライセンスに基づいて配布することができます。

Unix パスワード ファイルや Apache Web サーバーなどの 1 つのサービスまたはサーバーを管理するには、モジュールを作成する必要があります。複雑なシステム機能の中には、複数のモジュールに分割されるものもあります。たとえば、ディスクのパーティション分割、ディスクのマウント、ディスク クォータ管理は、標準の Webmin ディストリビューションでは 3 つの個別のモジュールになっています。

モジュールは理論的にはどの言語でも記述できます。ただし、Webmin API を使用するには、Perl バージョン 5.8 以上を使用する必要があります。モジュールは、C 関数や外部バイナリ プログラムを使用せず、完全に Perl で記述する必要があります。目的は、さまざまな Unix システムや CPU タイプ間でモジュールを可能な限り移植可能にすることです。

他の言語で書かれたモジュールは、標準の Webmin UI を使用して表示されず、その API を呼び出すこともできません。これらの理由から、Perl を使用することを強くお勧めします。

最も単純な場合、モジュールは Webmin の Web サーバーが実行する CGI プログラムのディレクトリにすぎません。ただし、Webmin API、メイン メニュー、およびアクセス制御システムで確実に動作するようにするには、特定のルールに従う必要があります。既存の CGI スクリプトをモジュール ディレクトリにそのまま配置することもできますが、これは良い考えではありません。

必要なファイル

各モジュールには Webmin ベース ディレクトリの下に独自のディレクトリがあり、そこにモジュールのすべてのCGIプログラムと設定ファイルを保存する必要があります。たとえば、Webminベースが の場合/usr/libexec/webmin、 foobar というモジュールが に作成またはインストールされます /usr/libexec/webmin/foobar

このベース ディレクトリは、ファイル内のルート行を確認することで見つけることができます /etc/webmin/miniserv.conf。インストールされているオペレーティング システムによって異なりますWebmin

メイン メニューにモジュールを表示するにはWebmin、少なくとも次のファイルが含まれている必要があります。module.infoただし、 は必須です。

module.info このファイルには、モジュールとそれが実行されるオペレーティング システムに関する情報が含まれています。形式の詳細については、以下を参照してください。images/icon.gif このモジュールのメイン メニューに表示されるアイコン。アイコンは 48 x 48 ピクセルで、メイン メニューの他のアイコンと同じ配色を使用する必要があります。lang/en このモジュールで使用されるテキスト文字列 (このドキュメントの国際化のセクションで説明)。install_check.pl サービスまたはプログラムがインストールされ使用可能かどうかを確認し、インストールされていれば 0 以外の値を返すプログラム。

左側のメニューにある各モジュール名は、Webmin'sモジュール ディレクトリへのリンクです。したがって、ユーザーがリンクをクリックしたときに表示される index.cgi ファイルが必要です。一般的なモジュールには、.cgi index.cgi からリンクされている多くのプログラムが含まれており、各プログラムはフォームの表示やフォームからの入力の保存などの機能を実行します。

新しいモジュールを初めて作成すると、そのモジュールはどの Webmin ユーザーの許可リストにも含まれず、メイン メニューに表示されません。これを修正するには、まずファイルを削除して、 /etc/webmin/module.infos.cache既知のモジュールのキャッシュをクリアする必要があります。次に、モジュールを表示するには、ファイルを編集するか /etc/webmin/webmin.acl、Webmin ユーザー モジュールを使用して自分自身にアクセス権を付与します。

https://doxfer.webmin.com/Webmin/モジュール開発


あなたが試しているようなガイドを見つけましたwebmin module installation and removal:

https://www.smarthomebeginner.com/install-webmin-modules/

https://www.linode.com/docs/websites/cms/how-to-install-a-webmin-control-panel-and-modules/

そしてここ:

モジュールのダウンロードページはこちらです:

http://www.webmin.com/standard.html

ここにすべてのサードパーティモジュールがあります:

http://www.webmin.com/cgi-bin/search_third.cgi?modules=1


ビルド済みrpmまたはdebパッケージを使用します。

現在の Webmin ディストリビューションは、さまざまなパッケージ形式でダウンロードできます。

https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb 14.8 MB

http://webmin.com/download.html

deb ファイルに apt コマンドを使用する場合は、次のように使用します。

sudo apt install path_to_deb_file

deb パッケージのインストールに dpkg コマンドを使用する場合は、次の手順に従います。

sudo dpkg -i path_to_deb_file

どちらのコマンドでも、path_to_deb_file を、ダウンロードした deb ファイルのパスと名前に置き換える必要があります。

github ページから:

要件

Perl 5.10以上。インストール

Webmin は 2 つの方法でインストールできます。

弊社のダウンロード ページから、さまざまなディストリビューション (CentOS、Fedora、SuSE、Mandriva、Debian、Ubuntu、Solaris など) に対応したビルド済みパッケージをダウンロードします。

注: 自動更新を行うには、システムにリポジトリを追加することを強くお勧めします。

ソース ファイルをダウンロードして抽出し、引数なしで setup.sh スクリプトを実行すると、このディレクトリから直接実行するようにセットアップされます。または、ターゲット ディレクトリなどのコマンド ライン引数を使用して実行するようにセットアップされます。

注意: Webmin を Windows システムにインストールする場合は、代わりに perl setup.pl コマンドを実行する必要があります。Windows バージョンは、標準の配布には含まれていない可能性のあるいくつかのプログラムとモジュールに依存します。process.exe コマンド、sc.exe コマンド、および Win32::Daemon Perl モジュールが必要になります。

答え2

*.wbm.gzは、webmin モジュールのディレクトリの tar ball ファイルのようです。したがって、次のように Webmin ディレクトリにアーカイブを抽出できると思いますが、まだ完全には確認していません。RHEL では、Webmin ディレクトリは です。Ubuntu/usr/libexec/webminでは、Webmin ディレクトリは です/usr/share/webmin。確認してください。

モジュールを取り外すには、

 # Be carefull with rm -rf, no *,?,. !
 # RH
 rm -rf /usr/libexec/webmin/text-editor
 # Debian-Ubuntu
 rm -rf /usr/share/webmin/text-editor

しかし、すでに誰かがインストーラを作成しています

 #RH
 /usr/libexec/webmin/install-module.pl 
 # Debian-Ubuntu
 /usr/share/webmin/install-module.pl

答え3

作成者のジェイミー・キャメロンによると、その内容は次の通りです。

ここに画像の説明を入力してください

つまり、私の場合は次のようになります。

sudo /usr/share/webmin/install-module.pl text-editor.wbm

関連情報