如何通過命令行(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/text-editor**
收件人:/etc/webmin/text-editor
至:/var/webmin/modules/text-editor(空):
重要的:
我的測試中使用的Webmin安裝方法:
方法一:
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
方法二:
wget https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb sudo dpkg --install webmin_1.910_all.deb
我問作者(Jamie Cameron)沒有回复日期,因為他是 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 模組
簡介 ——— Webmin 旨在允許在不更改任何現有程式碼的情況下輕鬆添加新模組。模組可以被認為是 Photoshop 外掛或 iPhone 應用程序——它可以由 Webmin 開發人員以外的其他人編寫,並根據開發人員選擇的許可證分發。
應該編寫一個模組來管理一項服務或伺服器,例如 Unix 密碼文件或 Apache Web 伺服器。一些複雜的系統功能甚至可能被拆分為多個模組——例如,磁碟分區、掛載磁碟和磁碟配額管理是標準 Webmin 發行版中的 3 個獨立模組。
模組理論上可以用任何語言編寫。但是,要使用 Webmin API,應該使用 5.8 或更高版本的 Perl。一個模組應該完全用 Perl 編寫,沒有 C 函式或外部二進製程序。目的是使模組盡可能跨不同的 Unix 系統和 CPU 類型進行移植。
用其他語言編寫的模組將不會使用標準 Webmin UI 顯示,也無法呼叫其 API。由於這些原因,強烈建議使用 Perl。
在最簡單的情況下,模組實際上只是 Webmin 的 Web 伺服器執行的 CGI 程序的目錄。但是,應遵循某些規則以確保它們與 Webmin API、主菜單和訪問控制系統一起使用。即使您可以將任何現有的 CGI 腳本粘貼到模組目錄中,這也不是一個好主意。
所需文件
每個模組在 Webmin 基本目錄下都有自己的目錄,所有模組的
CGI
程序和配置文件都必須儲存在該目錄中。例如,如果Webmin
base 是/usr/libexec/webmin
,則會在 中創建或安裝一個名為 foobar 的模組/usr/libexec/webmin/foobar
。您可以通過查看
/etc/webmin/miniserv.conf
文件中的根行來找到此基本目錄。它會因安裝的作業系統而異Webmin
。對於要在主
Webmin
菜單上顯示的模組,它至少應包含以下文件。只是module.info
強制性的。
module.info
此文件包含有關模組及其執行的作業系統的資訊。有關其格式的詳細資訊,請參見下文。images/icon.gif 此模組主菜單上顯示的圖示。該圖示應為 48x48 像素,並應使用與主菜單上其他圖示相同的配色方案。lang/en 此模組使用的文本字元串,如本文件的國際化部分所述。install_check.pl
檢查服務或程序是否已安裝且可用的程序,如果是,則返回非零值。
Webmin's
左側菜單中的每個模組名稱都是指向模組目錄的連結。因此,當使用者點擊連結時,您必須有一個 index.cgi 文件才能顯示。一個典型的模組包含許多.cgi
從 index.cgi 連結到的程序,每個程序都執行一些功能,例如顯示表單或保存表單的輸入。當您第一次創建新模組時,它不會出現在任何 Webmin 使用者的允許列表中,因此您將無法在主菜單中看到它。要解決此問題,您必須首先刪除該文件
/etc/webmin/module.infos.cache
以清除已知模組的記憶體。然後要使您的模組可見,請編輯文件/etc/webmin/webmin.acl
或使用 Webmin 使用者模組授予您自己的訪問權限。https://doxfer.webmin.com/Webmin/Module_Development
我找到了
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
如果你想使用 dpkg 命令安裝 deb 包,這裡是如何做到的:
sudo dpkg -i path_to_deb_file
在這兩個命令中,您應該將 path_to_deb_file 替換為您下載的 deb 文件的路徑和名稱。
從 github 頁面:
要求
Perl 5.10 或更高版本。安裝
Webmin 可以通過兩種不同的方式安裝:
通過從我們的下載頁面下載可用於不同發行版(CentOS、Fedora、SuSE、Mandriva、Debian、Ubuntu、Solaris 等)的預建構軟體包;
注意:強烈建議將儲存庫添加到您的系統以進行自動更新。
通過下載、提取源文件並執行 setup.sh 腳本,不帶任何參數,它將直接從該目錄執行它,或者使用命令行參數,例如目標目錄。
注意:如果您在 Windows 系統上安裝 Webmin,則必須執行命令 perl setup.pl。Windows 版本取決於幾個可能不屬於標準分發的程序和模組。您將需要 process.exe 命令、sc.exe 命令和 Win32::Daemon Perl 模組。
這
*.wbm.gz
似乎是 webmin 模組目錄的 tar 球文件。因此,我相信但尚未完全檢查過,您可以簡單地提取 Webmin 目錄中的存檔,如下所示。在 RHEL 上,Webmin 目錄是/usr/libexec/webmin
. 在 Ubuntu 上,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