Quero instalar um módulo no webmin por linha de comando (bash). Como você faz isso?
Exemplo:
wget https://download.webmin.com/download/modules/text-editor.wbm.gz
dentro deste .gz: text-editor.wbm
sudo tar -xf text-editor.wbm.gz
O módulo (neste caso editor de texto) quando instalado via GUI:
Ele envia os arquivos para vários lugares. Exemplo:
Para/usr/share/webmin/editor de texto
Para :/etc/webmin/editor de texto
Para:/var/webmin/modules/editor de texto(vazio):
Importante:
Métodos de instalação do Webmin usados em meu teste:
Método 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
wget https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb
sudo dpkg --install webmin_1.910_all.deb
Eu perguntei ao autor (Jamie Cameron) sem resposta até a data, pois ele é o autor do webmin eo autor do móduloque eu tento instalar
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
Atualizar:
Consegui fazer um script que instala o módulo editor de texto. Não é muito “elegante”, mas funciona:
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
No entanto, deve haver um método melhor para instalar qualquer módulo webmin por linha de comando
Responder1
Introdução --------- O Webmin foi projetado para permitir a adição fácil de novos módulos sem alterar nenhum código existente. Um módulo pode ser pensado como algo como um plugin do Photoshop ou um aplicativo para iPhone - ele pode ser escrito por alguém que não seja os desenvolvedores do Webmin e distribuído sob uma licença escolhida pelo desenvolvedor.
Um módulo deve ser escrito para administrar um serviço ou servidor, como o arquivo de senhas Unix ou o servidor web Apache. Algumas funções complexas do sistema podem até ser divididas em vários módulos - por exemplo, particionamento de disco, montagem de discos e gerenciamento de cotas de disco são 3 módulos separados na distribuição padrão do Webmin.
Os módulos podem, teoricamente, ser escritos em qualquer idioma. No entanto, para fazer uso da API Webmin, deve-se usar Perl versão 5.8 ou superior. Um módulo deve ser escrito inteiramente em Perl, sem funções C ou programas binários externos. O objetivo é que os módulos sejam tão portáveis quanto possível em diferentes sistemas Unix e tipos de CPU.
Módulos escritos em outras linguagens não serão exibidos usando a UI padrão do Webmin e não poderão chamar sua API. Por estas razões, o uso de Perl é fortemente recomendado.
Na sua forma mais simples, os módulos são apenas diretórios de programas CGI executados pelo servidor web do Webmin. No entanto, existem certas regras que devem ser seguidas para garantir que funcionem com a API Webmin, menu principal e sistema de controle de acesso. Mesmo que você possa simplesmente colar qualquer script CGI existente em um diretório de módulo, isso não é uma boa ideia.
Arquivos necessários
Cada módulo possui seu próprio diretório no diretório base do Webmin, no qual todos os
CGI
programas e arquivos de configuração do módulo devem ser armazenados. Por exemplo, se aWebmin
base fosse/usr/libexec/webmin
, um módulo chamado foobar seria criado ou instalado em/usr/libexec/webmin/foobar
.Você pode encontrar esse diretório base observando a linha raiz do seu
/etc/webmin/miniserv.conf
arquivo. Será diferente dependendo de qual sistema operacionalWebmin
está instalado.Para que um módulo seja exibido no
Webmin
menu principal, ele deve conter pelo menos os seguintes arquivos. Apenasmodule.info
é obrigatório.
module.info
Este arquivo contém informações sobre o módulo e os sistemas operacionais nos quais ele é executado. Veja abaixo detalhes sobre seu formato. images/icon.gif O ícone exibido no menu principal deste módulo. O ícone deve ter 48x48 pixels e usar o mesmo esquema de cores dos demais ícones do menu principal. lang/en As strings de texto usadas por este módulo, conforme explicado na seção Internacionalização desta documentação.install_check.pl
Programa que verifica se o serviço ou programa está instalado e utilizável, retornando um valor diferente de zero em caso afirmativo.Cada nome de módulo no
Webmin's
menu esquerdo é um link para o diretório do módulo. Assim você deve ter um arquivo index.cgi para ser exibido quando o usuário clicar no link. Um módulo típico contém muitos.cgi
programas vinculados ao index.cgi, cada um dos quais executa alguma função, como exibir um formulário ou salvar entradas de um formulário.Quando você cria um novo módulo pela primeira vez, ele não estará na lista de permitidos de nenhum usuário Webmin e portanto você não poderá vê-lo no menu principal. Para corrigir isso, você deve primeiro excluir o arquivo
/etc/webmin/module.infos.cache
para limpar o cache dos módulos conhecidos. Em seguida, para tornar seu módulo visível, edite o arquivo/etc/webmin/webmin.acl
ou use o módulo Usuários Webmin para conceder acesso.
https://doxfer.webmin.com/Webmin/Module_Development
Encontrei um guia para o webmin module installation and removal
que você está tentando:
https://www.smarthomebeginner.com/install-webmin-modules/
https://www.linode.com/docs/websites/cms/how-to-install-a-webmin-control-panel-and-modules/
e aqui:
Aqui está uma página de download do módulo:
http://www.webmin.com/standard.html
aqui estão todos os módulos de terceiros:
http://www.webmin.com/cgi-bin/search_third.cgi?modules=1
Use um pacote rpm
ou pré-construído deb
:
A distribuição atual do Webmin está disponível em vários formatos de pacote para download em:
https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb 14,8 MB
http://webmin.com/download.html
Se você quiser usar o comando apt para arquivos deb, use-o assim:
sudo apt install path_to_deb_file
Se você quiser usar o comando dpkg para instalar pacotes deb, veja como fazer:
sudo dpkg -i path_to_deb_file
Em ambos os comandos, você deve substituir path_to_deb_file pelo caminho e nome do arquivo deb que você baixou.
Na página do github:
Requisitos
Perl 5.10 ou superior. Instalação
O Webmin pode ser instalado de duas maneiras diferentes:
Baixando um pacote pré-construído, disponível para diferentes distribuições (CentOS, Fedora, SuSE, Mandriva, Debian, Ubuntu, Solaris e outras) em nossa página de download;
Nota: É altamente recomendável adicionar repositório ao seu sistema para ter atualizações automáticas.
Fazendo download, extraindo o arquivo de origem e executando o script setup.sh, sem argumentos, que será configurado para executá-lo diretamente deste diretório ou com um argumento de linha de comando, como o diretório de destino.
Nota: Se você estiver instalando o Webmin no sistema Windows, deverá executar o comando perl setup.pl. A versão para Windows depende de diversos programas e módulos que podem não fazer parte da distribuição padrão. Você precisará do comando process.exe, do comando sc.exe e do módulo Win32::Daemon Perl.
Responder2
Parece *.wbm.gz
ser um arquivo tar ball do diretório do módulo webmin. Então, acredito, mas ainda não verifiquei totalmente, que você pode simplesmente extrair o arquivo no diretório Webmin da seguinte maneira. No RHEL, o diretório Webmin é /usr/libexec/webmin
. No Ubuntu, o diretório Webmin é /usr/share/webmin
. por favor, verifique.
Para remover o módulo, basta
# Be carefull with rm -rf, no *,?,. !
# RH
rm -rf /usr/libexec/webmin/text-editor
# Debian-Ubuntu
rm -rf /usr/share/webmin/text-editor
Mas alguém já criou um instalador
#RH
/usr/libexec/webmin/install-module.pl
# Debian-Ubuntu
/usr/share/webmin/install-module.pl