我想透過命令列(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/modules/文字編輯器(空的):
重要的:
我測試中使用的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
方法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 伺服器。一些複雜的系統功能甚至可以拆分為多個模組 - 例如,磁碟分割區、安裝磁碟和磁碟配額管理是標準 Webmin 發行版中的 3 個獨立模組。
理論上,模組可以用任何語言編寫。但是,若要使用 Webmin API,應使用 Perl 版本 5.8 或更高版本。模組應該完全用 Perl 編寫,沒有 C 函數或外部二進位程式。目的是使模組盡可能在不同的 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 此模組的主選單上顯示的圖示。該圖示應為 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 模組。
答案2
這*.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