Fórum Ubuntu Linux - PT

Área para Iniciantes => Dicas e Truques => Tópico iniciado por: Sampayu em 03 de Setembro de 2014, 02:17

Título: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 03 de Setembro de 2014, 02:17
INTRODUÇÃO

Em agosto/2014 eu adquiri um nobreak inteligente da marca SMS, por isto instalei o programa SMS Power View¹ para GNU/Linux. O problema foi que acabei passando por alguns contratempos. Como felizmente consegui superar todos os contratempos que surgiram, resolvi elaborar um tutorial para auxiliar quem porventura venha a vivenciar as mesmas dificuldades.

O tutorial foi subdividido em quatro seções:
1. INSTALAÇÃO (http://ubuntuforum-br.org/index.php/topic,114513.msg632363.html#msg632363)
2. DESINSTALAÇÃO (http://ubuntuforum-br.org/index.php/topic,114513.msg632364.html#msg632364)
3. TROUBLESHOOTING (http://ubuntuforum-br.org/index.php/topic,114513.msg632365.html#msg632365)
4. AUTOMATIZAÇÃO (http://ubuntuforum-br.org/index.php/topic,114513.msg632372.html#msg632372)

A seção INSTALAÇÃO ensina a instalar o SMS Power View. A seção DESINSTALAÇÃO ensina a remover o SMS Power View. A seção TROUBLESHOOTING² apresenta soluções para problemas corriqueiros cujo solucionamento já é conhecido. A seção AUTOMATIZAÇÃO ensina a automatizar a inicialização do SMS Power View durante a inicialização do sistema operacional.

Importante: atualmente (27/11/2021), meu sistema GNU/Linux é o XUbuntu 20.04 de 64 bits e eu utilizo o JRE³ proprietário da Sun/Oracle instalado manualmente. Ainda: como eu uso XUbuntu e este fórum é do Ubuntu, todos os comandos deste tutorial utilizam a sistemática do sistema de pacotes DEB e a lógica de comandos do aplicativo APT. Se você usa uma distribuição GNU/Linux diferente (que funcione somente com pacotes RPM, por exemplo), será necessário adaptar os comandos deste tutorial de acordo com as particularidades da sua distribuição GNU/Linux.

¹ O SMS Power View (SPV) é um programa monitor e gerenciador de energia para uso em nobreaks inteligentes da fabricante SMS (http://www.sms.com.br).
² Troubleshooting é uma expressão da língua inglesa que significa algo como "resolução de problemas". Diz respeito ao processo que consiste em investigar um problema, descobrir sua origem e a solução para ele, e então registrar o método de solucionamento para que tal método/procedimento possa ser aproveitado por outros que venham a passar pelo mesmo problema.
³ JRE = Java Runtime Environment = Ambiente de Execução Java. Dentro de todo JRE existe uma JVM (Java Virtual Machine = Máquina Virtual Java). Ao contrário do que diz o manual do SPV, não é necessário instalar um JDK (Java Development Kit = Kit de Desenvolvimento Java) inteiro no seu sistema (de maneira geral, um JDK já vem com um JRE, e portanto com uma JVM): para o SPV funcionar corretamente com o Java é suficiente que você instale o JRE da Sun/Oracle. Não precisa instalar JDK não. E o JRE não precisa ser de 32 bits: se seu sistema for de 64 bits, instale o JRE de 64 bits mesmo.
Título: [Tutorial] SMS Power View - Seção 1: INSTALAÇÃO
Enviado por: Sampayu em 03 de Setembro de 2014, 02:18
1.1. Instale manualmente o Java da Sun

Acesse este tutorial (http://ubuntuforum-br.org/index.php/topic,110854.0.html) para saber como instalar manualmente o Sun Java. Ele deverá ser instalado em /opt/java/jre/, tal qual o tutorial ensina.

Nota: de maneira geral, dentro de um JDK (Java Development Kit = Kit de Desenvolvimento Java) existe um JRE (Java Runtime Environment = Ambiente de Execução Java) e dentro do JRE existe uma JVM (Java Virtual Machine = Máquina Virtual Java). O manual do SMS Power View (SPV) diz para instalar o JDK, porém isso não é necessário, porque o SMS Power View usa somente o JRE: se você instalar o JRE da Sun/Oracle, tal qual eu explico em meu tutorial, o SMS Power View irá funcionar (tanto que está funcionando normalmente no meu sistema).

1.2. Obtenha o SMS Power View (SPV) e também o manual de instalação dele

Acesse o website Alerta 24h (https://www.alerta24h.com.br), cadastre-se, efetue login no website e (somente) então acesse a página Download Center (https://www.alerta24h.com.br/alerta-download-center).

Agora clique no link Gerenciamento de Energia e faça download do SMS Power View (SPV) para GNU/Linux. Faça download também do manual de instalação: o manual estará em formato PDF e o SPV será um tarball, ou seja, um arquivo com extensão .tar.gz.

IMPORTANTE: caso o SMS Power View disponibilizado lá no download center da SMS não esteja funcionando em seu sistema, experimente instalar o pacote tarball da versão 3.00.01.00, que eu disponibilizei publicamente no meu OneDrive (https://1drv.ms/u/s!AvGdllDm3m3nkz3jzXIWZwITcQaL?e=zJsBPV). Esse pacote foi lançado em 2016 e está funcionando normalmente com meu XUbuntu 20.04 (lançado em abril de 2020) executando o JRE de 64 bits atualmente (25/11/2021) da versão 8 e atualização 301 (que foi lançada em 27/07/2021). A versão 4.07.00.05 (https://1drv.ms/u/s!AvGdllDm3m3nk0HtI1UzE3f7vh23?e=5vcm7K) (lançada em 2018) também está disponível.

Nota: daqui em diante vou usar a sigla SPV no lugar de SMS Power View.

1.3. Instale alguns programas auxiliares

Para facilitar sua vida, entre no terminal do shell (http://pt.wikipedia.org/wiki/Shell_(computação)) bash (http://pt.wikipedia.org/wiki/Bash) e execute este comando, que instalará dois programas:
Código: [Selecionar]
sudo apt-get install mousepad synaptic
O Mousepad é um editor de textos bastante simples mas muito útil. O Synaptic (http://wiki.ubuntu-br.org/Synaptic) é um poderoso gestor de pacotes DEB.

Nota: no XUBuntu, o editor de textos mais simples que geralmente vem pré-instalado é o Leafpad (http://tarot.freeshell.org/leafpad/), que no entanto não é tão simples assim porque pode salvar arquivos em formato RTF, por exemplo. Para ter certeza de que certos arquivos (como por exemplo arquivos de script) serão gravados em formato de "texto puro" (como tem que ser), eu geralmente uso um editor supersimples, como é o caso do Mousepad. Também é útil quando você copia um texto que tem formatação (fontes coloridas e/ou de diferentes tamanhos, texto com negrito, itálico etc.) e quer excluir essa formatação, pois basta colar esse texto dentro de uma janela do Mousepad que a formatação será perdida. No entanto, conforme eu comentei aqui (http://ubuntuforum-br.org/index.php/topic,114513.msg632389.html#msg632389), caso você já possua em seu sistema GNU/Linux algum outro "editor supersimples", como é o caso do GNOME Edit (https://wiki.gnome.org/Apps/Gedit) (linha de comando: gedit), não é necessário instalar o Mousepad. Do mesmo modo, há quem já utilize o programa Aptitude (http://algebraicthunk.net/~dburrows/projects/aptitude/), por exemplo, no lugar do Synaptic, portanto nesse caso não será necessário instalar o Synaptic. Enfim: instale os programas acima (Mousepad e Synaptic) caso não tenha certeza de que possui em seu sistema alguma alternativa para aqueles programas.

Ainda no terminal do shell, verifique se existe o arquivo de configuração global /etc/bash.bashrc (se não existir, talvez ele seja o arquivo /etc/bashrc). Supondo que ele seja mesmo o /etc/bash.bashrc, execute este comando para editá-lo:
Código: [Selecionar]
sudo mousepad /etc/bash.bashrc
Nota: se você usar a palavra gedit (ou a de algum outro editor de texto supersimples) no lugar de mousepad, o comando também funcionará. Caso você não esteja executando uma interface gráfica, recomendo que utilize o GNU Nano (http://www.nano-editor.org), que é um editor mais amigável que o vim (http://vim.sourceforge.net). O comando para instalar o nano é este, bem simples:
Código: [Selecionar]
sudo apt-get install nano
Se porventura não existir no seu sistema nem o /etc/bash.bashrc nem o /etc/bashrc, execute o comando abaixo para procurar no seu sistema todos os arquivos que contenham a palavra bashrc no nome. Um dos arquivos que forem encontrados será o arquivo de configuração global do shell bash (exceto aquele que aparecer dentro de uma pasta intitulada skel, pois skel é abreviação de skeleton, que em português significa esqueleto, ou seja: o arquivo dentro da pasta skel é apenas um "esqueleto", um modelo de arquivo de configuração, portanto não deve ser modificado):
Código: [Selecionar]
sudo updatedb && locate bashrc
Agora vá até o final do arquivo de configuração global que você acabou de abrir no editor de textos e então adicione estas linhas:
Código: [Selecionar]
#Variáveis necessárias para o funcionamento do SMS Power View:
JAVA_HOME=/opt/java/jre
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

Nota: o JRE que você instalou tem que ser o da Sun/Oracle (http://www.java.com) e ele tem que ser/estar instalado em /opt/java/jre/, conforme o tutorial que mencionei no item 1.1.

Salve o arquivo e então feche o Mousepad.

1.5. Descompacte o SPV e crie a pasta de instalação dele

Agora vou supor o seguinte:
i) Que o tarball que você obteve foi o arquivo install_SMS.tar.gz
ii) Que seu nome de usuário é bogus
iii) Que você salvou esse tarball dentro da sua pasta de Downloads, que fica em /home/bogus/Downloads/

Assumindo que todas as informações acima sejam verdadeiras (modifique-as de acordo com os valores corretos aí do seu sistema) e tendo em mente que o caractere ~ é um atalho para a pasta pessoal do usuário atualmente conectado (se seu nome de usuário for bogus, por exemplo, então o caractere ~ será um atalho para /home/bogus/), execute este comando para entrar na sua pasta de downloads:
Código: [Selecionar]
cd ~/Downloads
...e, agora que você está na sua pasta de Downloads, execute este comando para descompactar o tarball do SPV:
Código: [Selecionar]
tar -xzvf install_SMS.tar.gz
O comando acima colocará todos os arquivos de instalação do SPV dentro de ~/Downloads/sms_install/

Queremos instalar o SPV em /opt/sms/, portanto execute este comando para criar a pasta dele:
Código: [Selecionar]
sudo mkdir /opt/sms
1.6. Instale o SPV

Estando ainda dentro de ~/Downloads/ (você pode executar o comando pwd para confirmar sua localização atual na estrutura de diretórios. Se você não estiver em ~/Downloads, execute o comando cd ~/Downloads para entrar nesse diretório e poder prosseguir com o tutorial), execute este comando para instalar o SPV:
Código: [Selecionar]
sudo ./sms_install/install.sh
O instalador detectará automaticamente o Sun Java instalado em /opt/java/jre/. Se isso não ocorrer é porque foi necessário executar sudo no comando acima (que faz você "temporariamente se transformar" em usuário root) porém na pasta do root deve haver algum arquivo de configuração bashrc que "ainda não sabe" que seu JRE está instalado em /opt/java/jre/. Enfim: neste caso, informe manualmente (digite) o caminho /opt/java/jre e confirme pressionando a tecla ENTER.

O monitor padrão do seu sistema é o :0.0, portanto se o instalador perguntar se o valor padrão da variável DISPLAY é :0.0, basta confirmar pressionando a tecla ENTER. Alternativamente, você pode abrir outra janela do terminal e executar este comando, para saber qual é o valor da variável DISPLAY do seu sistema:
Código: [Selecionar]
echo $DISPLAY
Quando o instalador pedir para você digitar o local de instalação, digite /opt/sms e confirme com ENTER. Se o instalador pedir para confirmar essa decisão, digite s e novamente confirme com ENTER.

Se tudo correu bem, aparecerá uma mensagem como esta:

O SMS PowerView Linux encontra-se em /opt/sms e esta pronto para executar. Para tal, basta executar o script powerview

1.7. Inicialize o SPV

Para inicializar o SPV, basta executar este comando:
Código: [Selecionar]
sudo /opt/sms/powerview start -g
Ao executar o SPV em modo gráfico, surgirá uma janela informando o nome da sua máquina no Linux (hostname) e pedindo para você confirmar se deseja usar esse nome para essa instalação do SPV. Se quiser outro nome, basta editar o hostname que estará aparecendo. Após definir o nome que deseja, clique em OK.

IMPORTANTE: se você não executar este procedimento (i.e. não executar o SPV uma vez em modo gráfico e então definir um nome para essa instalação do SPV), quando você tentar acessar a interface web o SPV lhe pedirá uma senha misteriosa e você não conseguirá acessar a interface web.

Se a opção -g informada fizer o ícone do programa (uma letra S) aparecer na barra de tarefas, observe a cor dele. Se a cor for azul, que bom, deu tudo certo, mas se a cor for vermelha, então há algo errado com a execução do programa: neste caso, observe se apareceu alguma mensagem de erro no terminal do shell e então siga para a seção 3 (troubleshooting / resolução de problemas) deste tutorial para ver se há solução conhecida para o seu problema.

Abra uma nova aba do seu navegador e clique aqui (http://localhost:8080/sms/) para acessar o monitor web do seu nobreak. As figuras dos dois links abaixo ilustram a aparência do SMS Power View versão 3.00.02.00.

Figura 1 - Diagrama digital (https://1drv.ms/u/s!AvGdllDm3m3njx_p30MKYEN9_uO0?e=6S4iCU)
Figura 2 - Diagrama de blocos (https://1drv.ms/u/s!AvGdllDm3m3njyCibCDLWEmnLS9K?e=H68wbe)
Título: [Tutorial] SMS Power View - Seção 2: DESINSTALAÇÃO
Enviado por: Sampayu em 03 de Setembro de 2014, 02:18
LEGENDA:
A - o procedimento deve ser executado somente caso você tenha Automatizado a inicialização do SPV conforme explicado na seção 4 (http://ubuntuforum-br.org/index.php/topic,114513.msg632372.html#msg632372) deste tutorial
N - o procedimento deve ser executado somente caso você Não tenha automatizado a inicialização do SPV
AN - o procedimento deve ser executado independentemente de você ter ou não automatizado a inicialização do SPV

Para você desinstalar corretamente o SMS Power View, os procedimentos a seguir precisam ser executados de cima para baixo e respeitando-se a legenda de cada um deles:

A 2.1. (desfaz o item 4.5) Interrompa a execução do serviço smspv

Entre no terminal do shell bash e execute o seguinte comando, para interromper manualmente o serviço smspv:
Código: [Selecionar]
sudo service smspv stop
A 2.2. (desfaz o item 4.4) Elimine o vínculo entre o seu sistema operacional e o script de inicialização do serviço smspv

Execute este comando para que seu sistema operacional pare de executar o script smspv durante cada inicialização (boot):
Código: [Selecionar]
sudo update-rc.d -f smspv remove
A 2.3. (desfaz o item 4.3) Exclua o script de inicialização do serviço smspv

Ainda no terminal do shell bash, execute este comando para excluir definitivamente o script de inicialização smspv:
Código: [Selecionar]
sudo rm -f /etc/init.d/smspv
N 2.4. Pare o SMS Power View

Entre no terminal do shell bash e execute este comando para interromper o funcionamento do SMS Power View:
Código: [Selecionar]
sudo /opt/sms/powerview stop
AN 2.5. (desfaz o item 1.5) Exclua a pasta /opt/sms/

Ainda no terminal do shell bash, execute este comando para excluir todo o conteúdo da pasta sms (inclusive a própria pasta sms) que se encontra dentro da pasta /opt:
Código: [Selecionar]
sudo rm -rf /opt/sms
AN 2.6. (desfaz o item 1.4) Retorne o arquivo de configuração global do shell bash ao estado anterior

Assumindo que o arquivo que você editou durante a instalação foi o /etc/bash.bashrc, execute este comando para entrar no modo de edição do arquivo bash.bashrc via aplicativo Mousepad:
Código: [Selecionar]
sudo mousepad /etc/bash.bashrc
Agora exclua estas linhas que você havia inserido:
Código: [Selecionar]
#Comandos necessários para o funcionamento do SMS Power View:
JAVA_HOME=/opt/java/jre
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

...e então salve o arquivo e feche o Mousepad.

Alternativamente, você pode colocar um caractere # no início das linhas (exceto a primeira, que já possui esse caractere). Isso fará com que todas essas linhas sejam ignoradas pelo shell bash. O código deverá ficar assim:
Código: [Selecionar]
#Comandos necessários para o funcionamento do SMS Power View:
#JAVA_HOME=/opt/java/jre
#PATH=$JAVA_HOME/bin:$PATH
#export JAVA_HOME PATH

Daí basta salvar o arquivo e fechar o Mousepad. ;)

Pronto. ;)
Título: [Tutorial] SMS Power View - Seção 3: TROUBLESHOOTING (resolução de problemas)
Enviado por: Sampayu em 03 de Setembro de 2014, 02:19
Esta seção de troubleshooting (resolução de problemas) foi criada para apresentar dicas referentes a problemas corriqueiros cuja solução já é conhecida.

3.1. (incluído em 03/09/2014) Erro do "Stack Guard" devido à biblioteca librxtxSerial.so

Ao executar o SPV via terminal do shell bash, você pode vir a se deparar com uma mensagem parecida com esta:

Java HotSpot(TM) Client VM warning: You have loaded library /opt/sms/libs/32/librxtxSerial.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
Experimental:  JNI_OnLoad called.


Para entender essa mensagem de erro, é preciso entender duas coisas:

i) O arquivo librxtxSerial.so é uma biblioteca escrita em linguagem C. Ela faz parte do SPV e é carregada durante a inicialização da JVM (Java Virtual Machine / Máquina Virtual Java) para fornecer alguns recursos que permitem ao SPV comunicar-se em modo serial com o seu nobreak por intermédio da porta USB do seu computador.

ii) Stack Guard é um recurso da JVM que permite a essa JVM analisar o código-fonte de arquivos escritos em linguagem C (como é o caso da biblioteca librxtxSerial.so) e verificar se dentro desses arquivos há algum código malicioso ou mal escrito.

No caso, a mensagem de erro acima ocorreu porque o código-fonte do arquivo librxtxSerial.so que está dentro da pasta do SPV possui algum problema que foi detectado pelo Stack Guard da JVM. Para parar de ver esse alerta, você precisará instalar uma versão dessa biblioteca que seja compatível com a sua JVM. As mais recentes versões do Ubuntu (XUbuntu, KUbuntu etc.) possuem nos repositórios o pacote librxtx-java, que possui dentro dele uma versão compatível do arquivo librxtxSerial.so. Para instalar esse pacote, basta executar este comando, no terminal do shell bash:
Código: [Selecionar]
sudo apt-get install librxtx-java
Se quiser olhar com calma esse pacote, execute o Synaptic:
Código: [Selecionar]
sudo synaptic
...e então procure o pacote librxtx-java. Caso ele ainda não esteja instalado, instale-o e em seguida clique sobre ele com o botão direito do mouse, selecione a opção Propriedades e clique na aba Arquivos instalados: você verá uma lista contendo inclusive a linha /usr/lib/jni/librxtxSerial.so, que é justamente a localização do arquivo-biblioteca compatível de que você necessita.

Vamos fazer backup da biblioteca original do SPV e em seguida criar uma ligação para a biblioteca que é compatível. Primeiro o comando para criar backup da biblioteca original (o backup da biblioteca será o arquivo librxtxSerial.so.bak):
Se o seu sistema for de 32 bits:
Código: [Selecionar]
sudo mv /opt/sms/libs/32/librxtxSerial.so /opt/sms/libs/32/librxtxSerial.so.bakSe o seu sistema for de 64 bits:
Código: [Selecionar]
sudo mv /opt/sms/libs/64/librxtxSerial.so /opt/sms/libs/64/librxtxSerial.so.bak
Agora basta criar uma ligação que aponte para a biblioteca que funciona:
Se o seu sistema for de 32 bits:
Código: [Selecionar]
sudo ln -sf /usr/lib/jni/librxtxSerial.so /opt/sms/libs/32/librxtxSerial.soSe o seu sistema for de 64 bits:
Código: [Selecionar]
sudo ln -sf /usr/lib/jni/librxtxSerial.so /opt/sms/libs/64/librxtxSerial.so
Reinicie seu computador, retorne ao terminal do shell bash e execute este comando:
Código: [Selecionar]
sudo /opt/sms/powerview start -g
Se aquela mensagem de erro não aparecer mais, significa que a nova biblioteca librxtxSerial.so funcionou sem dar problemas com a sua JVM. ;)

Nota: caso não esteja executando uma interface gráfica, omita a opção -g, no comando acima. Se quiser reiniciar o powerview (em interface gráfica) sem reiniciar o sistema, execute este comando (omita o -g caso você não esteja em uma interface gráfica):
Código: [Selecionar]
sudo /opt/sms/powerview restart -g
3.2. (incluído em 13/09/2014) SPV perde a conexão com o serviço remoto Alerta 24h
Você se cadastrou no website Alerta24h (https://www.alerta24h.com.br), acessou o website local do seu cliente SPV (http://localhost:8080/sms), foi em CONFIGURAÇÕES, daí acessou ALERTA 24H, inseriu o mesmo usuário e senha usados no seu cadastro no Alerta 24h, selecionou o nobreak, clicou no botão Salvar, o painel direito (Status) passou a indicar que seu cliente SPV está conectado ao serviço remoto Alerta 24h (o ícone em formato de V / checkmark / sinal de visto "acendeu"), mas, após reiniciar seu computador e retornar ao website local do seu cliente SPV, você percebeu que a conexão com o serviço remoto Alerta 24h foi perdida (o ícone "apagou", virou um círculo cinza). Você reconectou, mas após iniciar novamente o seu computador o Alerta 24h novamente perdeu a conexão. E agora? Como manter a conexão persistente?

A solução é simples: edite o arquivo /opt/sms/xml/configuracoes.properties e mude o texto LOG_COMUNICACAO=0 para LOG_COMUNICACAO=1. Isso fará o cliente SPV enviar frequentemente um pedido de "keep alive" ("mantenha-se vivo / acordado") para o servidor remoto do serviço Alerta 24h e isso manterá a conexão ativa.

Comando para editar o arquivo usando o Mousepad:
Código: [Selecionar]
sudo mousepad /opt/sms/xml/configuracoes.properties
Após mudar de 0 para 1 o valor do parâmetro LOG_COMUNICACAO, salve o arquivo, feche o Mousepad e reinicie o seu computador.

Após executado esse procedimento, ainda é possível que seu computador venha a ser desconectado pelo serviço Alerta 24h: isso é raro, mas pode ocorrer caso o servidor remoto seja desconectado temporariamente (desligado e religado, ou então reiniciado, por exemplo). Quanto a isso não há muito o que se possa fazer: a empresa SMS é que precisa configurar seu servidor para não dar timeout nas conexões quando for reiniciado ou desligado e religado (timeout = tempo limite. Quando o tempo limite é atingido - seja por que motivo for - a conexão é perdida). O que você pode fazer é colocar este URL (http://localhost:8080/sms/editarTelaConfiguracoesWS.do) como página inicial do seu navegador, daí sempre que você abrir seu navegador veja se o serviço foi desconectado: se houver sido, basta deixar marcada a caixa Alerta 24h Habilitado e clicar no botão salvar. Pelo menos o log automático preservou suas credenciais e por isto você não precisou digitar novamente o usuário e a senha. Mas, repito: é raro acontecer de o servidor remoto sair do ar temporariamente.

3.3. (incluído em 08/11/2022) SPV não abre em modo gráfico, ou abre porém pede uma senha

A variável de ambiente DISPLAY basicamente informa o endereço de hardware do seu monitor de vídeo. O valor padrão dessa variável é :0.0, mas em alguns computadores é possível que o Ubuntu atribua um valor diferente de :0.0 para essa variável e o SPV mesmo assim tente mostrar as janelas dele no endereço de hardware :0.0, daí ocorre esse erro de exibição gráfica.

Para ver qual é o valor atual da variável DISPLAY no seu Ubuntu, execute este comando, no shell:

Código: [Selecionar]
echo $DISPLAY
Conforme explicado neste post (https://ubuntuforum-br.org/index.php?topic=114513.msg682701#msg682701), caso o valor da variável DISPLAY do seu Ubuntu seja diferente de :0.0, é necessário "informar" isso ao SPV. E, para "informar" isso ao SPV, é necessário abrir o arquivo /opt/sms/powerview em um editor de textos simples e então mudar o valor atribuído a DISPLAY nesse arquivo, para que a informação desse arquivo fique igual ao que o seu Ubuntu utiliza.

Uma vez resolvida a pane da interface gráfica, é necessário [1] executar o SPV em modo gráfico, em seguida [2] digitar um nome qualquer para a sua instalação do SPV e então [3] confirmar clicando em OK. Se você fizer isso, o SPV nunca irá lhe pedir senha nenhuma: o SPV só pede senha quando a instalação do SPV não possui um nome. Veja neste post (https://ubuntuforum-br.org/index.php?topic=114513.msg682611#msg682611) o que eu comentei a esse respeito.

3.4. (incluído em 08/11/2022) Resolvi a pane gráfica e da senha, mas mesmo assim o SPV não é exibido no navegador

É possível que a porta de rede 8080 usada pelo SPV no URL http://localhost:8080/sms/ já esteja sendo usada por outra aplicação web. Se você instalou o SPV em /opt/sms, então siga a dica (https://ubuntuforum-br.org/index.php?topic=114513.msg683417#msg683417) do usuário zan2 (https://ubuntuforum-br.org/index.php?action=profile;u=258092): edite o arquivo /opt/sms/webserver/libs/webserver.properties (com um comando como sudo gedit /opt/sms/webserver/libs/webserver.properties ou sudo nano /opt/sms/webserver/libs/webserver.properties) e então mude o valor httpPort=8080 para algo como por exemplo httpPort=9090.
Título: [Tutorial] SMS Power View - Seção 4: AUTOMATIZAÇÃO
Enviado por: Sampayu em 03 de Setembro de 2014, 10:19
Para que o SPV seja executado, é necessário executar o comando sudo /opt/sms/powerview start, com ou sem o acréscimo da opção -g, por exemplo. No entanto, essa pode ser uma tarefa ingrata para quem prefere que o SPV seja sempre executado, automaticamente, durante a inicialização do sistema.

Neste caso, para que o SPV seja iniciado automaticamente será necessário criar um script "init", que é um script de inicialização automática. Eis o passo-a-passo:

4.1. Execute o Mousepad em modo superusuário

Antes de qualquer outra coisa: caso o SMS Power View esteja em execução, encerre-o com este comando:
Código: [Selecionar]
sudo /opt/sms/powerview stop
Agora que o SMS Power View foi interrompido, entre no terminal do shell bash e execute este comando para inicializar o editor de textos Mousepad em modo superusuário:
Código: [Selecionar]
sudo mousepad /etc/init.d/smspv
4.2. Gere o código do script

Copie o código abaixo e cole-o dentro da janela do Mousepad:
Código: [Selecionar]
#!/bin/bash

### BEGIN INIT INFO
# Provides:          smspv
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: SMS Power View
# Description:       Script que executa o script 'powerview' como sendo um serviço denominado 'smspv'
### END INIT INFO

SMS_HOME="/opt/sms"

# Retorna erro caso não encontre o script 'powerview'
if [ ! -f $SMS_HOME/powerview -o ! -d $SMS_HOME ]; then
echo "O script 'powerview' não foi encontrado!"
exit 1
fi

case "$1" in
start)
   # Inicializa o serviço 'smspv' (o script 'powerview') quando o sistema operacional está em um dos runlevels definidos em Default-Start
   echo -n "Inicializando o serviço SMS Power View..."
   date >> $SMS_HOME/logs/sistema/inicializacoes.log
   $SMS_HOME/powerview start --no-gui >> $SMS_HOME/logs/sistema/inicializacoes.log
   echo "OK"
;;

stop)
   # Interrompe o serviço 'smspv' (o script 'powerview') quando o sistema operacional está em um dos runlevels definidos em Default-Stop
   echo -n "Parando o serviço SMS Power View..."
   $SMS_HOME/powerview stop
   echo "OK"
;;

reload|restart)
   $0 stop
   $0 start
;;

*)
   echo "Uso: smspv start|stop|restart|reload"
   exit 1
esac

exit 0

Nota: de maneira geral, os sistemas GNU/Linux inicializam no runlevel (http://pt.wikipedia.org/wiki/Runlevel) 2, que é um nível de execução multiusuário. Algumas distribuições podem executar o sistema em um runlevel maior (3, 4 ou 5, que são todos modos multiusuário, ou seja, que permitem que vários usuários se conectem / efetuem login ao mesmo tempo). Se quiser saber em qual nível de execução você (sua conta) atualmente se encontra dentro do seu sistema GNU/Linux, execute este comando:
Código: [Selecionar]
who -r
No caso, o código do script acima faz várias coisas, mas a mais importante delas é esta: sempre que seu sistema estiver no runlevel 2, 3, 4 ou 5 (ou seja: em modo multiusuário), o script executará um comando que inicializará o SPV. Além disso, essa inicialização será executada com a opção --no-gui, que faz com que o SPV seja executado como um serviço (ele "roda" no plano de fundo, sem interface gráfica). Ainda, o script faz com que um log das inicializações do SPV seja registrado em /opt/sms/logs/sistema/inicializacoes.log, portanto você poderá a qualquer tempo abrir ou visualizar o conteúdo daquele arquivo inicializacoes.log, para saber quais foram as mensagens que o SPV gerou em cada uma das vezes em que o script inicializou o SPV. ;)

4.3. Salve o script e torne-o executável

Ainda na janela do Mousepad, vá em Arquivo e clique sobre a opção Salvar para salvar esse arquivo em /etc/init.d/smspv

Salvou o arquivo? Ok, então agora feche o (saia do) Mousepad.

De volta ao terminal do shell bash, execute este comando para tornar o arquivo legível e executável:
Código: [Selecionar]
sudo chmod 755 /etc/init.d/smspv
4.4. Informe ao seu sistema operacional que o script smspv existe

Execute este comando no terminal do shell bash, para que seu sistema passe a executar o script smspv durante toda inicialização (boot):
Código: [Selecionar]
sudo update-rc.d smspv defaults
4.5. Inicialize o serviço

Execute este comando para já inicializar manualmente o smspv:
Código: [Selecionar]
sudo service smspv start
4.6. Reinicialize o sistema e teste o funcionamento do script

Reinicie o sistema, efetue login novamente, abra seu navegador web preferido e clique aqui (http://localhost:8080/sms/). Se a página do SPV for carregada, o script de inicialização está funcionando (de maneira automatizada). ;)
Título: Re: [Tutorial] Instalação do SMS Power View
Enviado por: jkmsjq em 03 de Setembro de 2014, 13:58
Não se pode usar o Gedit no Ubuntu no lugar do mousepad, afinal, aquele é o padrão do Ubuntu?
Título: Re: [Tutorial] Instalação do SMS Power View
Enviado por: Sampayu em 03 de Setembro de 2014, 16:26
Não se pode usar o Gedit no Ubuntu no lugar do mousepad, afinal, aquele é o padrão do Ubuntu?

Você pode usar o gedit no lugar do mousepad, sim. Sem problema. :)

No tutorial eu indico a instalação do mousepad porque estou no XUbuntu, que não vem com o gedit instalado, e particularmente eu gosto mais do mousepad. Também porque (pelo que eu saiba) o gedit só vem pré-instalado no Ubuntu: no KUbuntu, no XUbuntu etc. ele não é pré-instalado.

Mas na prática tanto faz o editor de textos que você utiliza: contanto que na linha de comandos você coloque o nome do executável de um editor de textos e salve os resultados em modo de "texto puro", não fará diferença usar o gedit, mousepad, leafpad ou qualquer outro. ;)
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: andreofgyn em 05 de Setembro de 2014, 17:53
Opa, Sampayu, tudo bom!?

Cara, seguinte, tô tentando instalar o powerview no meu NAS (Readynas Ultra x86), ele roda uma versão capada do Debian etch.

Então, consegui instalar, acessar a interface web e tudo mais, porém, não tô conseguindo com que ele leia as informações da porta usb, então as informações ficam zeradas na interface web, e não é o componente do java, pois esse eu instalei e ta tudo ok, é o ttyS0 que só ta retornando nulo (vejo isso rodando o powerview no modo debug).

Creio que o que esteja faltando é um módulo do Debian (como ele é capado, não vem com todos padrões instalados), deve ser o que converte serial para usb, tentei instalar o módulo usbserial, consegui, mas não adiantou, creio que ainda esteja faltando algum módulo.

Quando rodo o dmesg, o ups é detectado como: "usb 3-1: new low speed USB device using uhci_hcd and address 4". Creio que seja esse o problema, pois acho que deveria detectar como um adaptador serial para usb e mostrar os detalhes.

Assim, será que você poderia rodar o dmesg e verificar se da para conferir que módulo/driver ele está usando no seu?

Grato.
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 06 de Setembro de 2014, 01:39
Opa, Sampayu, tudo bom!?

Cara, seguinte, tô tentando instalar o powerview no meu NAS (Readynas Ultra x86), ele roda uma versão capada do Debian etch.

Então, consegui instalar, acessar a interface web e tudo mais, porém, não tô conseguindo com que ele leia as informações da porta usb, então as informações ficam zeradas na interface web, e não é o componente do java, pois esse eu instalei e ta tudo ok, é o ttyS0 que só ta retornando nulo (vejo isso rodando o powerview no modo debug).

Creio que o que esteja faltando é um módulo do Debian (como ele é capado, não vem com todos padrões instalados), deve ser o que converte serial para usb, tentei instalar o módulo usbserial, consegui, mas não adiantou, creio que ainda esteja faltando algum módulo.

Quando rodo o dmesg, o ups é detectado como: "usb 3-1: new low speed USB device using uhci_hcd and address 4". Creio que seja esse o problema, pois acho que deveria detectar como um adaptador serial para usb e mostrar os detalhes.

Assim, será que você poderia rodar o dmesg e verificar se da para conferir que módulo/driver ele está usando no seu?

Grato.


Oi André (imagino que esse seja o seu nome). Puxei algumas informações do meu sistema e vou transcrevê-las aqui. Dá uma olhada e vê se algo lhe ajuda (eu rodei uns comandos e excluí tudo o que acredito que não terá utilidade para você, na expectativa de que com isso fique mais fácil rastrear o problema):

1) Resultado do comando dmesg:

usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
(...)
usb 3-2: New USB device found, idVendor=04b4, idProduct=5500
usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 3-2: Product: USB to Serial
usb 3-2: Manufacturer: Cypress Semiconductor
(...)
usbcore: registered new interface driver usblp
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial support registered for generic
usbcore: registered new interface driver cypress_m8
usbserial: USB Serial support registered for DeLorme Earthmate USB
usbserial: USB Serial support registered for HID->COM RS232 Adapter
usbserial: USB Serial support registered for Nokia CA-42 V2 Adapter
cypress_m8 3-2:1.0: HID->COM RS232 Adapter converter detected
(...)
usb 3-2: HID->COM RS232 Adapter converter now attached to ttyUSB0


2) Resultado do comando usb-devices:

T:  Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=1.5 MxCh= 0
D:  Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=04b4 ProdID=5500 Rev=00.00
S:  Manufacturer=Cypress Semiconductor
S:  Product=USB to Serial
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=03(HID  ) Sub=00 Prot=00 Driver=cypress_m8


A string ttyUSB0 me chamou a atenção, por isto rodei um grep ttyUSB /opt/sms/powerview (já que o arquivo powerview não é um binário executável mas sim um shell script) e daí acabei encontrando a string ttyUSB dentro do script. Olha que interessante este trecho do código-fonte dele:

i=0;
j=8;
while [ $i != "3" ]
do

if [ -e /dev/ttyUSB$i ]; then
       echo Criando link simbolico para USB-Serial.
       ln -sf /dev/ttyUSB$i /dev/ttyS$j
      stty -F /dev/ttyUSB$i -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl;max=0;min=0;time=0;line=0
       j=$[j+1];
fi

    i=$[i+1];

done


O comando acima configura o terminal ttyUSB0. Ou seja: além de ter instalados no seu sistema os drivers de interface necessários para fazer o "USB to Serial" funcionar, você também precisa ter no mínimo um arquivo de link simbólico: o /dev/ttyS8 apontando para /dev/ttyUSB0. Eu acredito que esse link tenha sido criado direitinho, mas por via das dúvidas dá uma verificada nisso, porque talvez o arquivo /dev/ttyUSB0 não exista.

Caso o arquivo de dispositivo USB dialout "ttyUSB0" não exista, esse pode ser o problema. Você pode manualmente criar esse arquivo por intermédio do script MAKEDEV:

Código: [Selecionar]
cd /dev && sudo MAKEDEV ttyUSB0
...e, se o comando acima não criar o arquivo, você pode tentar este comando:

Código: [Selecionar]
sudo mknod -m 660 /dev/ttyUSB0 c 188 0
Os números 188 e 0 (major e minor, respectivamente) são os que meu sistema está de fato utilizando para o arquivo /dev/ttyUSB0. Esses números podem mudar de acordo com a tabela de device drivers do kernel. Porém, como você está usando um Debian e o Ubuntu é baseado no Debian, é possível (embora não seja certeza...) que ambos os kernels possuam tabelas iguais. Se eles possuírem (e o device driver correto estiver carregado no kernel), esses números 188 e 0 vão fazer o /dev/ttyUSB0 funcionar direitinho com o kernel do seu sistema.

Se após isso o SPV continuar não funcionando, muito provavelmente o problema será a falta do device driver de interface USB para Serial mesmo.

Espero que estas informações ajudem. :)
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: andreofgyn em 06 de Setembro de 2014, 13:42
Valeu, Sampayu, muito obrigado pela disposição em ajudar.

Pois é, valeu pelas dicas, tô tentando de tudo aqui, o maior avanço que consegui foi resetar o NAS e após ele reiniciar executei o modprobe utilizando o vendor/product, como:

modprobe usbserial vendor=0x04b4 product=0x5500

Daí quando conecto o usb aparece a seguinte mensagem:

usb 3-1: new low speed USB device using uhci_hcd and address 3
usbserial_generic 3-1:1.0: Generic device with no bulk out, not allowed.
usbserial_generic: probe of 3-1:1.0 failed with error -5

Quer dizer, entendo que ele não ta detectando o ups como um usb<>serial válido, mas creio que não seja defeito, pois no Windows está funcionando sem problemas, vá entender, é continuar na luta.

Abraço.
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: andreofgyn em 06 de Setembro de 2014, 14:13
Opa, deu certo!

Olhei direitinho o seu dmesg, Sampayu, e vi que o ups usa o driver da Cypress.

Então cacei um driver usb desse fabricante no menuconfig e achei o cypress_m8, daí dei um simples modprobe no mesmo e passou a funcionar, criou automaticamente o ttyUSB0 e tudo mais, precisei nem reconectar o usb.

Então, se acontecer de alguém ter um NAS na mesma situação, não é nem necessário instalar o módulo usbserial para que o ups se comunique, apenas instale o cypress_m8.

Obrigado, abraço.
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 06 de Setembro de 2014, 15:24
Opa, deu certo!

Olhei direitinho o seu dmesg, Sampayu, e vi que o ups usa o driver da Cypress.

Então cacei um driver usb desse fabricante no menuconfig e achei o cypress_m8, daí dei um simples modprobe no mesmo e passou a funcionar, criou automaticamente o ttyUSB0 e tudo mais, precisei nem reconectar o usb.

Então, se acontecer de alguém ter um NAS na mesma situação, não é nem necessário instalar o módulo usbserial para que o ups se comunique, apenas instale o cypress_m8.

Obrigado, abraço.

Oi andreofgyn, é isso mesmo, eu destaquei o cypress_m8 em negrito junto com o usbserial já pra chamar a atenção mesmo. Que bom que funcionou aí. :)

Um detalhe importante é que é necessário ter os dois drivers instalados: tanto o usbserial quanto o cypress_m8. Isso porque o cypress_m8 usa o usbserial (ele depende do usbserial). Essa informação pode ser obtida com o comando modinfo cypress_m8:

filename:       /lib/modules/3.13.0-35-generic/kernel/drivers/usb/serial/cypress_m8.ko
license:        GPL
description:    Cypress USB to Serial Driver
author:         Lonnie Mendez <dignome@gmail.com>, Neil Whelchel <koyama@firstlight.net>
srcversion:     4B75EFC70038DDF9233DC24
alias:          usb:v07D0p4101d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v6737p0001d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0D9Fp0002d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v04B4p5500d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v1163p0200d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v1163p0100d*dc*dsc*dp*ic*isc*ip*in*
depends:        usbserial
intree:         Y
vermagic:       3.13.0-35-generic SMP mod_unload modversions 686
signer:         Magrathea: Glacier signing key
sig_key:        A2:8D:B5:FD:6E:29:9C:CE:49:47:DA:CA:A6:6F:45:9D:B4:AC:CE:24
sig_hashalgo:   sha512
parm:           stats:Enable statistics or not (bool)
parm:           interval:Overrides interrupt interval (int)
parm:           unstable_bauds:Allow unstable baud rates (bool)
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 20 de Outubro de 2014, 16:49
Olá pessoal,

   Tentei no Ubuntu 14.04 e no Debian 7.6 (ambos 64bits), e nos 2 está como o mesmo comportamento. Tenho ligado ao servidor um Nobreak SMS Power Sinus II (RS232) por meio de um conversos USB/SERIAL Prolific que está funcionando 100% (testei em outra aplicação nesse servidor e está recebendo e enviando sem problema).

   Instalei o Java por este link (http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html) depois procedi como o amigo Yuri disse.

   Me ocorrem duas situações diferentes ao executar o ./powerview start.

1ª Situação
Caso tenha reiniciado o servidor e executo o ./powerview start , e posteriormente entro no console (./powerview -c) não há nada a ser informado e a situação do nobreak está como DESCONECTADO. Idem no webserver na porta 8080.

2ª Situação
Por não ter funcionado antes, então eu dou um ./powerview stop e me certifico q não há nada rodando nos processos. Quando reinicio ./powerview start aparecem vários erros de lock na biblioteca RXTX
Código: [Selecionar]
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyUSB0: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS1: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS0: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS8: File exists

Caso eu fique monitorando o diretório com ls -lah /var/lock/ fica mudando o conteúdo LCK..ttyS1 -> LCK..ttyS7 ->LCK..ttyS8 -> LCK..ttyUSB0 -> ...

Tentei instalar a RXTX diretamente pelo repositório do Debian/Ubuntu e copiar para o caminho do 64bits como nosso colega mencionou no post porém o problema permanece.

Alguma idéia do que pode ser?

Atenciosamente,
Toni
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 20 de Outubro de 2014, 18:38
Olá pessoal,

   Tentei no Ubuntu 14.04 e no Debian 7.6 (ambos 64bits), e nos 2 está como o mesmo comportamento. Tenho ligado ao servidor um Nobreak SMS Power Sinus II (RS232) por meio de um conversos USB/SERIAL Prolific que está funcionando 100% (testei em outra aplicação nesse servidor e está recebendo e enviando sem problema).

   Instalei o Java por este link (http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html) depois procedi como o amigo Yuri disse.

   Me ocorrem duas situações diferentes ao executar o ./powerview start.

1ª Situação
Caso tenha reiniciado o servidor e executo o ./powerview start , e posteriormente entro no console (./powerview -c) não há nada a ser informado e a situação do nobreak está como DESCONECTADO. Idem no webserver na porta 8080.

2ª Situação
Por não ter funcionado antes, então eu dou um ./powerview stop e me certifico q não há nada rodando nos processos. Quando reinicio ./powerview start aparecem vários erros de lock na biblioteca RXTX
Código: [Selecionar]
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyUSB0: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS1: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS0: File exists
RXTX fhs_lock() Error: creating lock file: /var/lock/LCK..ttyS8: File exists

Caso eu fique monitorando o diretório com ls -lah /var/lock/ fica mudando o conteúdo LCK..ttyS1 -> LCK..ttyS7 ->LCK..ttyS8 -> LCK..ttyUSB0 -> ...

Tentei instalar a RXTX diretamente pelo repositório do Debian/Ubuntu e copiar para o caminho do 64bits como nosso colega mencionou no post porém o problema permanece.

Alguma idéia do que pode ser?

Atenciosamente,
Toni

Isso está me cheirando a erro de permissão. Experimenta executar o comando sudo su e somente depois disso executar o comando ./powerview start
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 20 de Outubro de 2014, 19:41
Olá yuri, valeu por responder!

   Estou executando como root, de modo que não seria problema de permissão, correto?
   Para tirar teima executei os comandos abaixo:
Código: [Selecionar]
root@avsrv1:~# chmod -R 777 /opt/sms/
root@avsrv1:~# cd /opt/sms/app
root@avsrv1:/opt/sms/app# ls
banco  images  info  libs  logs  powerview  resource  webserver  xml
root@avsrv1:/opt/sms/app# ./powerview start
Iniciando como Serviço...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.
root@avsrv1:/opt/sms/app# ./powerview -c
Erro: É necessário inicializar o sistema antes de utilizá-lo no modo console.

e o mesmo lance qndo dou o ls e fico apertando TAB para ver o que há no /var/lock
Código: [Selecionar]
root@avsrv1:/opt/sms/app# ls -lah /var/lo
local/ lock/  log/   
root@avsrv1:/opt/sms/app# ls -lah /var/lock/
LCK..ttyS8
root@avsrv1:/opt/sms/app# ls -lah /var/lock/
LCK..ttyUSB0
root@avsrv1:/opt/sms/app# ls -lah /var/lock/
LCK..ttyS1
root@avsrv1:/opt/sms/app# ls -lah /var/lock/
LCK..ttyS0

Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 20 de Outubro de 2014, 19:50
Agora matei todos processos rodando java (inclusive do powerview) e rodei em modo debug. A mensagem de erro que está dnado é como se tivesse abrindo a porta, acho que não consegue comunicar ou usar a bib rxtx, e fecha, ai parte para a próxima...etc...:
Código: [Selecionar]
root@avsrv1:/opt/sms/app# ps aux | grep java
root      3189  0.0  0.0   8076   888 pts/1    S+   19:46   0:00 grep java                                                                                              
root@avsrv1:/opt/sms/app# ./powerview start --debug                                                                                                                    
Iniciando como Serviço...                                                                                                                                              
Criando link simbolico para USB-Serial.                                                                                                                                
SMS Power View iniciado com sucesso.                                                                                                                                    
root@avsrv1:/opt/sms/app# Oct  20 19:46:46 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - INICIO                      
Oct  20 19:46:46 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.copyRequiredFiles();                            
Oct  20 19:46:46 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.checkDebug(args); 1                              
Oct  20 19:46:46 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] instanciando                                                                
Oct  20 19:46:46 [                          xml.BuilderComandoSerial]: [      main - DEBUG] BuilderComandoSerial() Arquivo: /opt/sms/app/resource/protocolos/verificaProtocolo.xml                                                                                                                                                              
Oct  20 19:46:46 [                          xml.BuilderComandoSerial]: [      main - DEBUG] Parsing XML file... /opt/sms/app/resource/protocolos/verificaProtocolo.xml  
Oct  20 19:46:46 [                          xml.BuilderComandoSerial]: [      main - DEBUG] XML file parsed                                                            
Oct  20 19:46:46 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] instanciando                                                                
Oct  20 19:46:46 [                          xml.BuilderProtocoloBase]: [      main - DEBUG] USANDO O SEGUINTE ARQUIVO XML: /opt/sms/app/resource/protocolos/sqp-1.xml  
Oct  20 19:46:46 [                          log.RedirectOutputStream]: [      main - DEBUG] Parsing XML file... /opt/sms/app/resource/protocolos/sqp-1.xml              
Oct  20 19:46:46 [                          log.RedirectOutputStream]: [      main - DEBUG] XML file parsed                                                            
Oct  20 19:46:46 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak TRIFASICO                                            
Oct  20 19:46:46 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio                                                                      
Oct  20 19:46:46 [                          log.RedirectOutputStream]: [      main - DEBUG] WARNING:  RXTX Version mismatch                                            
        Jar version = RXTX-2.2pre1                                                                                                                                      
        native lib Version = RXTX-2.2pre2                                                                                                                              
RXTX Warning:  Removing stale lock file. /var/lock/LCK..ttyS1                                                                                                          
Oct  20 19:46:50 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: /dev/ttyS8                                                
Oct  20 19:46:50 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar poss�veis erros Porta: /dev/ttyS8                                                                                                                                                                      
Oct  20 19:46:50 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] Erro ao fechar porta antes de abrir: null                                  
java.lang.NullPointerException
        at br.com.alerta24h.comunicacao.linux.PortaSerial.close(PortaSerial.java:34)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:71)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:50 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] getResposta()
)ct  20 19:46:50 [                                        lang.Class]: [  Thread-1 - DEBUG] UtilSerial.envia() char: (G,,�,�,�,ᄏ,
Oct  20 19:46:50 [                                        lang.Class]: [  Thread-1 - DEBUG] UtilSerial.envia() bytes: (71,1,-1,-1,-1,-69,13)
Oct  20 19:46:50 [                               util.EscritaNobreak]: [  Thread-1 - DEBUG] >[71, 1, -1, -1, -1, -69, 13]
// G���ᄏ
// 471ffffffffffffffffffffffffffffffbbd

Oct  20 19:46:50 [                                 linux.PortaSerial]: [      main - DEBUG] Fim
Oct  20 19:46:51 [                               util.EscritaNobreak]: [      main - DEBUG] <[0, 0]
//
// 00

Oct  20 19:46:51 [                                        lang.Class]: [      main - DEBUG] UtilSerial.recebe() dados inválidos: tamanho da resposta fora da faixa - 2
Oct  20 19:46:51 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] resposta = null
Oct  20 19:46:51 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] erro: null
java.lang.NullPointerException
        at java.util.StringTokenizer.<init>(StringTokenizer.java:199)
        at java.util.StringTokenizer.<init>(StringTokenizer.java:221)
        at br.com.alerta24h.comunicacao.util.UtilSerial.formataLeituraSerial(UtilSerial.java:363)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.getResposta(GerenteComunicacao.java:52)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:78)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:51 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta de comunicacao: /dev/ttyS8
Oct  20 19:46:52 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: /dev/ttyUSB0
Oct  20 19:46:52 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar poss�veis erros Porta: /dev/ttyUSB0
Oct  20 19:46:52 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] Erro ao fechar porta antes de abrir: null
java.lang.NullPointerException
        at br.com.alerta24h.comunicacao.linux.PortaSerial.close(PortaSerial.java:34)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:71)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:52 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] getResposta()
)ct  20 19:46:52 [                                        lang.Class]: [  Thread-3 - DEBUG] UtilSerial.envia() char: (G,,�,�,�,ᄏ,
Oct  20 19:46:52 [                                        lang.Class]: [  Thread-3 - DEBUG] UtilSerial.envia() bytes: (71,1,-1,-1,-1,-69,13)
Oct  20 19:46:52 [                               util.EscritaNobreak]: [  Thread-3 - DEBUG] >[71, 1, -1, -1, -1, -69, 13]
// G���ᄏ
// 471ffffffffffffffffffffffffffffffbbd

Oct  20 19:46:52 [                                 linux.PortaSerial]: [      main - DEBUG] Fim
Oct  20 19:46:53 [                               util.EscritaNobreak]: [      main - DEBUG] <[0, 0]
//
// 00

Oct  20 19:46:53 [                                        lang.Class]: [      main - DEBUG] UtilSerial.recebe() dados inválidos: tamanho da resposta fora da faixa - 2
Oct  20 19:46:53 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] resposta = null
Oct  20 19:46:53 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] erro: null
java.lang.NullPointerException
        at java.util.StringTokenizer.<init>(StringTokenizer.java:199)
        at java.util.StringTokenizer.<init>(StringTokenizer.java:221)
        at br.com.alerta24h.comunicacao.util.UtilSerial.formataLeituraSerial(UtilSerial.java:363)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.getResposta(GerenteComunicacao.java:52)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:78)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:53 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta de comunicacao: /dev/ttyUSB0
Oct  20 19:46:54 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: /dev/ttyS1
Oct  20 19:46:54 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar poss�veis erros Porta: /dev/ttyS1
Oct  20 19:46:54 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] Erro ao fechar porta antes de abrir: null
java.lang.NullPointerException
        at br.com.alerta24h.comunicacao.linux.PortaSerial.close(PortaSerial.java:34)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:71)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:54 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] getResposta()
)ct  20 19:46:54 [                                        lang.Class]: [  Thread-5 - DEBUG] UtilSerial.envia() char: (G,,�,�,�,ᄏ,
Oct  20 19:46:54 [                                        lang.Class]: [  Thread-5 - DEBUG] UtilSerial.envia() bytes: (71,1,-1,-1,-1,-69,13)
Oct  20 19:46:54 [                               util.EscritaNobreak]: [  Thread-5 - DEBUG] >[71, 1, -1, -1, -1, -69, 13]
// G���ᄏ
// 471ffffffffffffffffffffffffffffffbbd

Oct  20 19:46:54 [                                 linux.PortaSerial]: [      main - DEBUG] Fim
Oct  20 19:46:55 [                               util.EscritaNobreak]: [      main - DEBUG] <[]
//
//

Oct  20 19:46:55 [                                        lang.Class]: [      main - DEBUG] UtilSerial.recebe() dados inválidos: tamanho da resposta fora da faixa - 0
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] resposta = null
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] erro: null
java.lang.NullPointerException
        at java.util.StringTokenizer.<init>(StringTokenizer.java:199)
        at java.util.StringTokenizer.<init>(StringTokenizer.java:221)
        at br.com.alerta24h.comunicacao.util.UtilSerial.formataLeituraSerial(UtilSerial.java:363)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.getResposta(GerenteComunicacao.java:52)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:78)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta de comunicacao: /dev/ttyS1
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: /dev/ttyS0
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar poss�veis erros Porta: /dev/ttyS0
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] Erro ao fechar porta antes de abrir: null
java.lang.NullPointerException
        at br.com.alerta24h.comunicacao.linux.PortaSerial.close(PortaSerial.java:34)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:71)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] getResposta()
)ct  20 19:46:55 [                                        lang.Class]: [  Thread-7 - DEBUG] UtilSerial.envia() char: (G,,�,�,�,ᄏ,
Oct  20 19:46:55 [                                        lang.Class]: [  Thread-7 - DEBUG] UtilSerial.envia() bytes: (71,1,-1,-1,-1,-69,13)
Oct  20 19:46:55 [                               util.EscritaNobreak]: [  Thread-7 - DEBUG] >[71, 1, -1, -1, -1, -69, 13]
// G���ᄏ
// 471ffffffffffffffffffffffffffffffbbd

Oct  20 19:46:55 [                                 linux.PortaSerial]: [      main - DEBUG] Fim
Oct  20 19:46:55 [                               util.EscritaNobreak]: [      main - DEBUG] <[]
//
//

Oct  20 19:46:55 [                                        lang.Class]: [      main - DEBUG] UtilSerial.recebe() dados inválidos: tamanho da resposta fora da faixa - 0
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] resposta = null
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - ERROR] erro: null
java.lang.NullPointerException
        at java.util.StringTokenizer.<init>(StringTokenizer.java:199)
        at java.util.StringTokenizer.<init>(StringTokenizer.java:221)
        at br.com.alerta24h.comunicacao.util.UtilSerial.formataLeituraSerial(UtilSerial.java:363)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.getResposta(GerenteComunicacao.java:52)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.configuraPorta(GerenteComunicacao.java:78)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaCmd(GerenteComunicacao.java:222)
        at br.com.alerta24h.comunicacao.GerenteComunicacao.executaComando(GerenteComunicacao.java:196)
        at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:76)
        at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:81)
        at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:87)
        at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta de comunicacao: /dev/ttyS0
Oct  20 19:46:55 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Nobreak TRIFASICO nao identificado
Oct  20 19:46:55 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak MONOFASICO
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: /dev/ttyS8
Oct  20 19:46:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar poss�veis erros Porta: /dev/ttyS8
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 21 de Outubro de 2014, 02:51
Agora matei todos processos rodando java (inclusive do powerview) e rodei em modo debug. A mensagem de erro que está dnado é como se tivesse abrindo a porta, acho que não consegue comunicar ou usar a bib rxtx, e fecha, ai parte para a próxima...etc...:

Percebi que você fez algumas coisas diferentes do tutorial, como por exemplo instalar o Oracle JRE do WebUpd8team e instalar o SMS Power View em /opt/sms/app (ao invés de em /opt/sms), por isto acho que a melhor coisa a fazer é verificar se você realmente fez todas as adaptações necessárias:

1) Como o JRE do WebUpd8team não é instalado em /opt/java/jre, no item 1.4 do tutorial a linha JAVA_HOME=/opt/java/jre precisa ser modificada de modo que no lugar do path /opt/java/jre conste o path de onde o JRE do WebUpd8team foi instalado. O script powerview depende do path correto para carregar diversas classes.

2) O mesmo aplica-se ao item 1.6 do tutorial: durante a instalação do SMS Power View é necessário informar ao instalador o path correto do JRE, já que esse JRE não estará em /opt/java/jre

3) Como meu sistema é de 32 bits, alguma particularidade do sistema de 64 bits pode ter passado desapercebida, como por exemplo esta: abra (em modo root) o script do powerview para edição com o mousepad, gedit ou outro editor simples:
Código: [Selecionar]
sudo mousepad /opt/sms/app/powerview
...daí vá até a linha export PW_DLL=.:libs/32/ e substitua por export PW_DLL=.:libs/64/ (caso seu sistema seja de 64 bits mas naquela linha esteja de fato registrado 32, ao invés de 64).

PS: estou assumindo que você instalou o pacote da biblioteca RXTX com o comando
Código: [Selecionar]
sudo apt-get install librxtx-javae que depois criou o link simbólico com o comando
Código: [Selecionar]
sudo ln -sf /usr/lib/jni/librxtxSerial.so /opt/sms/app/libs/64/librxtxSerial.so
(repare que, diferentemente do que está no meu tutorial, o segundo path teve que ser modificado para /opt/sms/app/libs/64/librxtxSerial.so)

4) Verifique se o arquivo de dispositivo /dev/ttyS8 está realmente apontando para /dev/USB0. O comando:
Código: [Selecionar]
ls -laskXF --color /dev/ttyS8
...deverá retornar algo assim (só que colorido):

/dev/ttyS8 -> /dev/ttyUSB0

Eu acho que o problema está relacionado a essas diferenças de configuração do Java (WepUpd8team) e do path do SMS Power View (/opt/sms/app). Se for isso mesmo, é possível que as mudanças acima resolvam o problema.

Se nada do que pus aí em cima resolver, talvez o problema seja algo mais complicado e/ou obscuro. Aguardo seu retorno informando se algum dos procedimentos acima resolveu o problema.
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 21 de Outubro de 2014, 09:14
Olá e muito obrigado novamente Yuri pelo Help!!!
Eu fiz o checklist de acordo com o que você foi listando:
1) Há o caminho correto para o JRE, veja:
Código: [Selecionar]
root@avsrv1:~# export
declare -x DERBY_HOME="/usr/lib/jvm/java-8-oracle/db"
declare -x HOME="/root"
declare -x J2REDIR="/usr/lib/jvm/java-8-oracle/jre"
declare -x J2SDKDIR="/usr/lib/jvm/java-8-oracle"
declare -x JAVA_HOME="/usr/lib/jvm/java-8-oracle"
declare -x LANG="en_US.UTF-8"
declare -x LANGUAGE="en_US:en"
declare -x LC_ADDRESS="pt_BR.UTF-8"
declare -x LC_IDENTIFICATION="pt_BR.UTF-8"
declare -x LC_MEASUREMENT="pt_BR.UTF-8"
declare -x LC_MONETARY="pt_BR.UTF-8"
declare -x LC_NAME="pt_BR.UTF-8"
declare -x LC_NUMERIC="pt_BR.UTF-8"
declare -x LC_PAPER="pt_BR.UTF-8"
declare -x LC_TELEPHONE="pt_BR.UTF-8"
declare -x LC_TIME="pt_BR.UTF-8"
declare -x LOGNAME="root"
declare -x MAIL="/var/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin"
declare -x PWD="/root"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_CLIENT=""
declare -x SSH_CONNECTION=""
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"

2) Durante a instalação ele configurou com o path correto, apontando para o $JAVA_HOME

3) Verifiquei também no arquivo do script (https://drive.google.com/file/d/0B-aIdlw414j3akx1UTdpUm03Y2s/view?usp=sharing) e há o caminho correto para o JRE assim como a utilização das bibliotecas 64bits como você informou:   export PW_DLL=.:libs/64/ . Sim eu instlaei o librxtx-java pelo apt-get e depois fiz o link simbólico da biblioteca para dentro do /libs do powerview como é possível ver abaixo:
Código: [Selecionar]
root@avsrv1:/opt/sms/app# ls -laskXF --color /opt/sms/app/libs/64/
total 64
 4 drwxrwxrwx 2 root root  4 Out 21 09:02 ./
 4 drwxrwxrwx 4 root root  4 Out 20 15:26 ../
56 -rw-r--r-- 1 root root 56 Out 20 21:54 librxtxSerial.org
 0 lrwxrwxrwx 1 root root  1 Out 21 08:59 librxtxSerial.so -> /usr/lib/jni/librxtxSerial.so

4) Também há sim definido o link simbólico do ttyUSB0 para o ttyS8:
Código: [Selecionar]
root@avsrv1:/opt/sms/app# ls -laskXF --color /dev/ttyS8
0 lrwxrwxrwx 1 root root 1 Out 21 08:59 /dev/ttyS8 -> /dev/ttyUSB0

Ainda assim o problema permanece e com você disse, parece ser mais obscuro. Andei dando uma lida na saída do debug que postei, e também nas dependências de algumas bibliotecas e parece que fizeram caca ao compilar o powerview para usar com a librxtxSerial.so em 64 bits.

Vou tentar, como você solicitou, instalar no braço do jre para não ter dúvidas que é o processo da Webupd8.

Achei o seguinte blog (http://esijmjg.blogspot.com.br/2014/04/sms-power-view-universal-para-linux.html) que também informou que há problema, porém não especificou. Vou hoje montar um vm com versões anteriores de jre e SO com 32 e 64 bits para entender o que está rolando como mencionaram no blog, e testar a solução alternativa que deram lá.

Em paralelo, vou tentar contato com a SMS porém acho difícil (mesmo tendo contato de revenda) eles resolverem esse problema de bate-pronto sem uma burocracia.

Meu último passo, será escrever um programa que faça o interfaceamento com os nobreaks, gere snmp (caso queira usar com um nagios da vida), log direto no banco ou arquivo de texto, e tenha uma interface em PHP ao invés de java em função de todos problemas que você está vendo aqui. Enfim, uma aplicação decente para servidor. Mas isso é o último plano, que se for executado, entrego aqui os resultados porém em mais longo prazo (pois levará um tempo para escrever o programa, testar, etc...) e principalment encaixar isso na agenda.

No mais, qualquer sugestão é muito bem-vinda e desde já agradeço todo empenho em ajudar a resolver o problema. Espero que ajude outros também com a mesma situação.

Abraços
Toni
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 21 de Outubro de 2014, 19:38
Yuri,
   Funcionou!  ;D
   Apaguei e desintalei tudo que dizia respeito ao java (arquivos, pastas, links simbólicos, exports, etc..) e também apaguei tudo do PowerView. Procedi então o seu roteiro passo-a-passo desde a instalação do Java no braço, do powerview, baixei o rxtx pelo repositório do debian, fiz os simbólicos novamente, e funcionou. =]
   Uma coisa que notei ser diferente do 32bits (ou é viagem minha) essa última versão do PV ele demora uns 15s até abrir a porta e o webservice estar disponível para ser acessado. Não é pá e bola. Acho que escrever o programinha vai ficar pra próxima rs
   Valeu pela mão e espero que ajude outros com o mesmo problema.
Abraços,
Toni
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: antonio.spadim em 21 de Outubro de 2014, 21:28
Corrigindo, funcionou com o cabo ligado direto na serial do servidor, com a usb/serial não rs  Mas funcionou de um jeito pelo menos hehehe
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 22 de Outubro de 2014, 01:16
Yuri,
   Funcionou!  ;D
   Apaguei e desintalei tudo que dizia respeito ao java (arquivos, pastas, links simbólicos, exports, etc..) e também apaguei tudo do PowerView. Procedi então o seu roteiro passo-a-passo desde a instalação do Java no braço, do powerview, baixei o rxtx pelo repositório do debian, fiz os simbólicos novamente, e funcionou. =]
   Uma coisa que notei ser diferente do 32bits (ou é viagem minha) essa última versão do PV ele demora uns 15s até abrir a porta e o webservice estar disponível para ser acessado. Não é pá e bola. Acho que escrever o programinha vai ficar pra próxima rs
   Valeu pela mão e espero que ajude outros com o mesmo problema.
Abraços,
Toni

Show de bola! Fico feliz por saber. Eu estava bem intrigado com essa pane aí. ;D

Eu estava prestes a sugerir a você "detonar" o JRE do Webupd8team mesmo e fazer a instalação manual que sugeri, mas como eu estava (ainda estou um pouco...) intrigado com aqueles erros de criação de arquivos lock, eu estava meio que custando a acreditar na minha própria suspeita (de que o Java sozinho pudesse ser o responsável). Acho que em parte o JRE tem alguma culpa na história (eu custo a acreditar que o JRE distribuído via repositório do Webupd8team seja idêntico ao originalmente disponibilizado pela Oracle), mas algo me diz que há também algum problema relacionado a dois ou mais device drivers estarem simultaneamente tentando usar o mesmo arquivo de dispositivo.

Mas enfim: que bom que aí funcionou. :)

Em relação à demora de 15s: o script powerview verifica uma série de coisas e carrega "trocentas" bibliotecas, então talvez seja por isso que fica meio lento para inicializar. No meu Xubuntu 14.04 de 32 bits também demora um tempinho para conectar à porta e carregar a interface do webserver. Tudo bem que meu computador é pré-histórico (motherboard Asus P5WD2 Premium - que usa barramento de 800MHz, processador Intel Pentium D de 3.4 GHz, 2 GB de RAM DDR 2 677MHz, e tudo isso tendo que gerenciar 4 HD SATA II de 500GB cada + 1 HD SATA II externo e-SATA de 1 Tera), então já viu...

Inclusive, essa demora na inicialização foi um dos meus motivadores para eu haver decidido criar um init script e com isso deixar o SMS Power View inicializando automaticamente como serviço, a cada boot: assim, quando faço login na GUI o serviço já está rodando há tempos. Foi a solução que encontrei.

No servidor que você está rodando aí eu não sei se é interessante fazer isso, mas se for, dá uma olhadinha lá na seção 4 (http://ubuntuforum-br.org/index.php/topic,114513.msg632372.html#msg632372). :)
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 22 de Outubro de 2014, 04:27
Corrigindo, funcionou com o cabo ligado direto na serial do servidor, com a usb/serial não rs  Mas funcionou de um jeito pelo menos hehehe

Antes mais nada, onde grafei cypress_m8 e usbserial eu estou me referindo aos drivers mencionados neste (http://ubuntuforum-br.org/index.php/topic,114513.msg632518.html#msg632518) e neste (http://ubuntuforum-br.org/index.php/topic,114513.msg632537.html#msg632537) post. O cypress_m8 utiliza o (depende do) usbserial.

O que eu acho que entendi do funcionamento geral do SMS Power View em cada um dos 3 contextos:

Contexto 1 - conectando a saída USB do nobreak diretamente à entrada USB do computador (meu caso):

[NOBREAK](USB)------(USB)[PC] => driver low-level USB -> ttyUSB0 -> driver high-level (interface) cyperss_m8 (usando as instruções básicas do driver usbserial) -> API Java (usando a / por intermédio da biblioteca RXTX) -> webserver -> website do SMS Power View

Contexto 2 - conectando a saída serial (RS232) do nobreak diretamente à entrada serial do computador (seu caso):

[NOBREAK](SERIAL)------(SERIAL)[PC] => driver low-level serial -> ttyS8 -> driver high-level (interface) cyperss_m8 (reconhece que o sinal é serial e simplesmente o repassa adiante) -> API Java (usando a / por intermédio da biblioteca RXTX) -> webserver -> website do SMS Power View

Contexto 3 - conectando a saída serial (RS232) do nobreak ao conversor Prolific, e o conversor à entrada USB do computador (seu caso que não dá certo):

HIPÓTESE 1 - dirty signal (conversão defeituosa/parcial do sinal RS232 para USB, pelo emulador do microprocessador interno do seu conversor Prolific, gerando um sinal que acaba por "acionar" tanto o driver low-level serial quanto o low-level USB):
[NOBREAK](SERIAL)------(SERIAL)[CONVERSOR](USB)--sinal--"sujo"--(USB)[PC] => driver low-level serial  e driver low-level USB -> ttyS1 e ttyUSB0 ocupados pelo mesmo dispositivo -> driver high-level (interface) cyperss_m8 (reconhece que o sinal de ttyUSB0 é USB [embora "sujo"] e, usando as instruções básicas de usbserial, repassa o sinal adiante) -> API Java (usando a / por intermédio da biblioteca RXTX): não reconhece o sinal USB oriundo de ttyUSB0 e não encontra dispositivo serial em ttyS8 (porque ele está em ttyS1) -> falha

HIPÓTESE 2 - pane de implementação da RXTX:
[NOBREAK](SERIAL)------(SERIAL)[CONVERSOR](USB)--sinal--"sujo"--(USB)[PC] => driver low-level USB -> ttyUSB0 -> driver high-level (interface) cyperss_m8 (usando as instruções básicas do driver usbserial) -> API Java (usando a / por intermédio da biblioteca RXTX): não reconhece o sinal USB oriundo de ttyUSB0 e não encontra dispositivo serial em ttyS8 -> falha

Isso tudo aí em cima é uma completa viagem, claro. Mas, tentando levar essa viagem a sério, eu tentaria o seguinte:

1) Conecte o nobreak ao conversor mas desconecte o conversor do servidor.

2) Só para desencargo de consciência, adicione sua conta (que eu chamei de username) aos grupos dialout, modem, serial e uucp (exclua aqueles que não existirem no seu sistema, e substitua username por root caso esteja conectado como root):
Código: [Selecionar]
sudo usermod -a -G dialout,modem,serial,uucp username
3) Reinicie o sistema para poder efetivar sua inclusão nesses grupos (é necessário sair do runlevel atual e retornar a ele. Você pode fazer isso executando o comando sudo telinit 6).

4) Limpe os arquivos de trava:
Código: [Selecionar]
rm -f /var/lock/LCK*
5) Conecte o nobreak ao conversor e o conversor à USB do computador (contexto 3).

6) Execute novamente o powerview start --debug e veja o que acontece.

Se funcionar, maravilha. Se não funcionar, experimente isto:

7) Interrompa o powerview com powerview stop

8) Execute os itens 1 e 4.

9) Edite o script powerview para que ele ligue o ttyS1 ao ttyUSB0 (ao invés de apontar ttyS8 para ttyUSB0):

 Onde o código-fonte estiver assim:

i=0;
j=8;


 Mude-o para isto:

i=0;
j=1;


10) Execute novamente os itens 5 e 6.

Se nada disso funcionar, eu desisto. :P
(mas fico feliz que pelo menos no contexto 2 esteja funcionando :))
Título: Re: [Tutorial] Instalação do SMS Power View no Linux
Enviado por: edsanmi em 12 de Dezembro de 2014, 14:51
Olá,

Alguém sabe como implementar no FeeBSD/PFSense?
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: allmac em 16 de Setembro de 2015, 22:23
Olá! Desculpem por reviver o tópico. O SMS PowerView sofreu algumas alterações desde as últimas notícias aqui.
Eu não segui o manual aqui, mas usei como revisão. Só não reinstalei o JAVA, mas tenho o JDK 1.8 Oracle.

Os problemas indicados parece que resolvi, mas o continuo sem conseguir usar o programa.
Será que surge alguma dica que possa me ajudar?

Eu consigo acessar a interface web local, configurar e conectar no Alerta24horas.com.br.
Mas nenhuma informação do nobreak é mostrada, apesar de achar pelos LOGs que está recebendo.

Detalhe que ao me conectar com o Alerta24horas.com.br a interface identificou o número de série do meu no-break, então parece que de algum modo conseguiu ler algo pela USB.

Abaixo os erros que tenho:

Sep  17 10:18:34 [lang.Class]: [Thread-17 - DEBUG] Procurando pelo comando: InformacoesDefault
Sep  17 10:18:34 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: modelo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: modelo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: modelo
   java.lang.Exception: Tipo nao encontrado: modelo
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:204)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: versao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: versao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: versao
   java.lang.Exception: Tipo nao encontrado: versao
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:204)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Procurando pelo comando: CaracteristicasDefault
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: faixaTensao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: faixaTensao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: faixaTensao
   java.lang.Exception: Tipo nao encontrado: faixaTensao
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:207)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: faixaCorrente
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: faixaCorrente
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: faixaCorrente
   java.lang.Exception: Tipo nao encontrado: faixaCorrente
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:207)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoBateria
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoBateria
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: tensaoBateria
   java.lang.Exception: Tipo nao encontrado: tensaoBateria
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:207)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: frequencia
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: frequencia
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: frequencia
   java.lang.Exception: Tipo nao encontrado: frequencia
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:207)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Procurando pelo comando: MedidoresEstadoDefault
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: serialVersionUID
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: serialVersionUID
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: serialVersionUID
   java.lang.Exception: Tipo nao encontrado: serialVersionUID
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:223)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: data
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: data
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: data
   java.lang.Exception: Tipo nao encontrado: data
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:223)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: modoOnline
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: modoOnline
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: modoOnline
   java.lang.Exception: Tipo nao encontrado: modoOnline
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:223)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoEntrada
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoEntrada
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoEntrada já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoEntradaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoEntradaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoEntradaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoEntradaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoEntradaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoEntradaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoSaida já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoSaidaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tensaoSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tensaoSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor tensaoSaidaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: potenciaSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: potenciaSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor potenciaSaida já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: frequenciaSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: frequenciaSaida
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor frequenciaSaida já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: frequenciaSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: frequenciaSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor frequenciaSaidaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: frequenciaSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: frequenciaSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor frequenciaSaidaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: potenciaSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: potenciaSaidaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor potenciaSaidaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: potenciaSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: potenciaSaidaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor potenciaSaidaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: tipo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: tipo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: tipo
   java.lang.Exception: Tipo nao encontrado: tipo
   at br.com.sms.powerview.alerta24h.beans.Medidor$Tipo.getTipoByAttribute(Medidor.java:133)
   at br.com.sms.powerview.alerta24h.AlertaUtil.getNewMedidores(AlertaUtil.java:319)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.enviaMedidores(ThreadComunicacao.java:223)
   at br.com.sms.powerview.alerta24h.ThreadComunicacao.run(ThreadComunicacao.java:265)
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: porcentagemTensaoBateria
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: porcentagemTensaoBateria
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor porcentagemTensaoBateria já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: porcentagemTensaoBateriaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: porcentagemTensaoBateriaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor porcentagemTensaoBateriaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: porcentagemTensaoBateriaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: porcentagemTensaoBateriaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor porcentagemTensaoBateriaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: temperatura
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: temperatura
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor temperatura já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: temperaturaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: temperaturaMaxima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor temperaturaMaxima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: temperaturaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: temperaturaMinima
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor temperaturaMinima já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: ultimaTensao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: ultimaTensao
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor ultimaTensao já existente na lista com o valor 0
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: beepLigado
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: beepLigado
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor beepLigado já existente na lista com o valor 1
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: shutdownAtivo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: shutdownAtivo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor shutdownAtivo já existente na lista com o valor 1
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: testeAtivo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: testeAtivo
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: upsOk
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: upsOk
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: boost
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: boost
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor boost já existente na lista com o valor 1
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: byPass
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: byPass
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor byPass já existente na lista com o valor 1
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: bateriaBaixa
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: bateriaBaixa
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Medidor bateriaBaixa já existente na lista com o valor 1
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): OBTENDO MEDIDOR PARA O ATRIBUTO: bateriaLigada
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] Tipo.getTipoByAttribute(): PROCURANDO O TIPO PARA O ATRIBUTO: bateriaLigada
Sep  17 10:18:35 [alerta24h.ThreadComunicacao]: [Thread-17 - DEBUG] enviaMedidores(): Enviando medidores novos para o alerta... Qtd: 3
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 17 de Setembro de 2015, 20:55
Olá! Desculpem por reviver o tópico. O SMS PowerView sofreu algumas alterações desde as últimas notícias aqui.

Olá. Primeiramente, obrigado: graças ao seu post eu me dei conta de que o SPV (SMS Power View) em execução no meu sistema ainda era o versão V2.16.00.11, embora o mais recente SPV disponível para download no website Alerta 24h (https://www.alerta24h.com.br/) seja o versão V2.16.00.13.

Isto posto, informo que acabei de usar meu próprio tutorial para desinstalar o SPV 11 e instalar o SPV 13, e está tudo funcionando perfeitamente. :)

Uma dúvida: você já leu o conteúdo da seção Troubleshooting (http://ubuntuforum-br.org/index.php/topic,114513.msg632365.html#msg632365)? Os problemas lá mencionados são bastante comuns e frequentes. O erro de stack guard pode ser a causa de fundo para o problema relatado por você.

Caso você já tenha seguido as dicas da seção Troubleshooting e ainda assim o problema esteja persistindo: de acordo com o debug que você postou, fiquei com a forte impressão de que o problema pode ser uma incompatibilidade das classes proprietárias do programa SPV com o JRE do seu JDK (caso não saiba a diferença entre JDK e JRE, leia este post (http://ubuntuforum-br.org/index.php/topic,110854.msg624467.html#msg624467)).

Exemplo retirado do seu debug:
Citar
Sep  17 10:18:35 [lang.Class]: [Thread-17 - DEBUG] getNewMedidores(): não tem método para o atributo: serialVersionUID
   java.lang.Exception: Tipo nao encontrado: serialVersionUID

Basicamente, o que esse texto está informando é que uma classe Java (lang.Class) do programa SPV possui uma função denominada getNewMedidores(), porém o JRE do seu JDK não está conseguindo usar a função getNewMedidores() com o atributo serialVersionUID para identificar o número de série do seu nobreak, porque o tipo do atributo serialVersionUID não foi definido dentro da classe, e pelo visto o JRE do seu JDK requer que o tipo seja especificado. Como no meu sistema todos os módulos do SPV estão funcionando normal e corretamente, só posso concluir que o meu JRE consegue ler a classe que tem a função getNewMedidores() e executar essa função com o atributo serialVersionUID, mesmo sem o tipo de serialVersionUID ter sido definido.

JDK é Kit de Desenvolvimento Java, ou seja, só é útil para quem desenvolve (programa) em Java. Se você não é desenvolvedor, a minha forte sugestão é que você desinstale completamente o JDK 1.8 que está em seu sistema e que em seguida instale o Sun JRE tal qual eu explico no tutorial (http://ubuntuforum-br.org/index.php/topic,110854.0.html). Isso vai aumentar bastante a possibilidade de o seu JRE conseguir executar as classes Java do SPV, e deste modo você deixará de ter dor de cabeça com isso.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: allmac em 18 de Setembro de 2015, 11:09
Fiz uns testes aqui. Me parece alguma falha da SMS mesmo!

No início do ano fiz uma reclamação com eles de que a versão de Mac não lia os dados do no-brake.
Testei novamente e fui olhar o LOG e percebi que aparecem os mesmos erros.
Então peguei a versão Mac e rodei tbm no Linux e apareceu novamente os mesmos erros!

Como estou testando agora no Ubuntu para Raspberry (Arm), deve ser alguma biblioteca C que utilizaram e só roda em Linux x86.
Ele vai servir como "Servidor UPS" para os demais equipamentos ligados no no-break.

Vou fazer contato com eles novamente e dou um retorno aqui só para dar um feedback e a solução.
Obrigado!

OBS: Não existe mais JRE para Arm, eles mandam instalar o Java SE (eJDK).
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 18 de Setembro de 2015, 16:57
Fiz uns testes aqui. Me parece alguma falha da SMS mesmo!

No início do ano fiz uma reclamação com eles de que a versão de Mac não lia os dados do no-brake.
Testei novamente e fui olhar o LOG e percebi que aparecem os mesmos erros.
Então peguei a versão Mac e rodei tbm no Linux e apareceu novamente os mesmos erros!

Como estou testando agora no Ubuntu para Raspberry (Arm), deve ser alguma biblioteca C que utilizaram e só roda em Linux x86.
Ele vai servir como "Servidor UPS" para os demais equipamentos ligados no no-break.

Vou fazer contato com eles novamente e dou um retorno aqui só para dar um feedback e a solução.
Obrigado!

OBS: Não existe mais JRE para Arm, eles mandam instalar o Java SE (eJDK).
Mmmm, entendi: processador ARM... Ah, então deve ser mesmo problema causado por isso que você mencionou. Deve haver alguma diferença entre as bibliotecas do JRE "avulso" e as bibliotecas do JRE que vem dentro do JDK.

Num caso desses, o jeito é realmente solicitar ao desenvolvedor do SPV para portar uma versão para ARM.

Estranho que, embora o próprio manual de instalação do SPV diga para instalar o JDK, você não é a primeira pessoa a informar que o SPV não está funcionando direito com o JDK.

Sent from my RAZR HD using Tapatalk

Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 18 de Setembro de 2015, 18:45
OBS: Não existe mais JRE para Arm, eles mandam instalar o Java SE (eJDK).

Acabei de fazer download do JRE para Linux x86 (32 bits) e do JDK 8 para arquitetura ARM de 32 bits. Daí descompactei o tarball do JRE numa pasta "jre" e o tarball do JDK numa pasta "jdk". Após isso, entrei (via terminal do shell) no diretório raiz deles e rodei este comando:

Código: [Selecionar]
diff ./jre/lib/ ./jdk/lib/ |grep "Somente em ./jre/lib" |more > ~/Área\ de\ Trabalho/faltando.txt
...e assim obtive a seguinte lista (conteúdo do arquivo faltando.txt, armazenado em minha Área de Trabalho):

Somente em ./jre/lib/: applet
Somente em ./jre/lib/: calendars.properties
Somente em ./jre/lib/: charsets.jar
Somente em ./jre/lib/: classlist
Somente em ./jre/lib/: cmm
Somente em ./jre/lib/: content-types.properties
Somente em ./jre/lib/: currency.data
Somente em ./jre/lib/: deploy
Somente em ./jre/lib/: deploy.jar
Somente em ./jre/lib/: desktop
Somente em ./jre/lib/: ext
Somente em ./jre/lib/: flavormap.properties
Somente em ./jre/lib/: fontconfig.bfc
Somente em ./jre/lib/: fontconfig.properties.src
Somente em ./jre/lib/: fontconfig.RedHat.5.bfc
Somente em ./jre/lib/: fontconfig.RedHat.5.properties.src
Somente em ./jre/lib/: fontconfig.RedHat.6.bfc
Somente em ./jre/lib/: fontconfig.RedHat.6.properties.src
Somente em ./jre/lib/: fontconfig.SuSE.10.bfc
Somente em ./jre/lib/: fontconfig.SuSE.10.properties.src
Somente em ./jre/lib/: fontconfig.SuSE.11.bfc
Somente em ./jre/lib/: fontconfig.SuSE.11.properties.src
Somente em ./jre/lib/: fontconfig.Turbo.bfc
Somente em ./jre/lib/: fontconfig.Turbo.properties.src
Somente em ./jre/lib/: fonts
Somente em ./jre/lib/: hijrah-config-umalqura.properties
Somente em ./jre/lib/: i386
Somente em ./jre/lib/: images
Somente em ./jre/lib/: javafx.properties
Somente em ./jre/lib/: javaws.jar
Somente em ./jre/lib/: jce.jar
Somente em ./jre/lib/: jfr
Somente em ./jre/lib/: jfr.jar
Somente em ./jre/lib/: jfxswt.jar
Somente em ./jre/lib/: jsse.jar
Somente em ./jre/lib/: jvm.hprof.txt
Somente em ./jre/lib/: locale
Somente em ./jre/lib/: logging.properties
Somente em ./jre/lib/: management
Somente em ./jre/lib/: management-agent.jar
Somente em ./jre/lib/: meta-index
Somente em ./jre/lib/: net.properties
Somente em ./jre/lib/: oblique-fonts
Somente em ./jre/lib/: plugin.jar
Somente em ./jre/lib/: psfontj2d.properties
Somente em ./jre/lib/: psfont.properties.ja
Somente em ./jre/lib/: resources.jar
Somente em ./jre/lib/: rt.jar
Somente em ./jre/lib/: security
Somente em ./jre/lib/: sound.properties
Somente em ./jre/lib/: tzdb.dat

Essa aí é a lista dos arquivos que o JRE possui em sua pasta lib mas o JDK não possui.

TENTATIVA 1

Um teste (muito rudimentar e amador :o) que eu faria: fazer download do tarball do JRE, descompactá-lo para dentro de alguma pasta, daí acessar a subpasta lib do JRE, copiar todos os arquivos da lista acima e colá-los dentro da subpasta lib do seu JDK. Em seguida, reinicie o computador. A ideia é ver se de repente esses arquivos resolvem o problema...

Arquivos com extensão JAR são verdadeiras bibliotecas de objetos diversos (contêm inclusive classes Java). E classes Java via de regra são independentes de plataforma (só costumam dar problema se elas forem escritas para sistema de 64 bits e o seu for de 32 bits). Consequentemente, se o problema for mesmo ausência de alguma biblioteca, é possível que ela esteja dentro de um desses arquivos e que, ao copiá-los para dentro da subpasta lib do seu JDK, esse JDK passe a funcionar com o SPV.

Enfim: não custa nada tentar... E, se não der certo, basta excluir os arquivos: você já tem a lista de quais arquivos copiou, portanto desfazer o procedimento será simples. ;)

TENTATIVA 2

Caso a tentativa 1 não tenha dado certo, é provável que o problema não seja uma classe faltando no seu JDK, mas sim uma classe presente no SPV que o JRE do seu JDK não consegue reconhecer ou executar. Em tal caso, um segundo teste que você pode fazer é o seguinte: dentro da pasta do seu JDK, renomeie a subpasta jre para algo como p.ex. jre-jdk. Em seguida, copie a pasta jre do JRE e cole-a dentro da pasta do jdk.

Após isso, será necessário entrar na nova subpasta jre do seu JDK, excluir a pasta bin (porque os binários executáveis dela são para arquitetura Intel), em seguida acessar a subpasta jre-jdk, copiar a subpasta bin e então colá-la lá dentro da subpasta jre (para que o JRE do seu JDK volte a ter os binários executáveis específicos para arquitetura ARM).

A ideia neste caso é tentar fazer o JRE que veio no tarball para x86 funcionar com o JDK para ARM.

Reinicie novamente o PC e veja se funcionou. Se não funcionou, aí é só deletar a subpasta jre do seu JDK e em seguida renomear a jre-jdk para jre.

São dois testes simples (embora um pouco trabalhosos) que você pode fazer e que têm alguma chance de dar certo.

Boa sorte...
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: allmac em 22 de Outubro de 2015, 15:10
Novos testes!! A SMS liberou uma atualização: V2.16.00.14

Até agora verifiquei que no Linux o script info.sh não funciona porque no lugar de () usaram [] na soma da variável. Como não consegue fazer a soma, entra em loop e não finaliza.

Já copiei para as pastas libs 32 e 64 do programa os arquivos que estavam na versão anterior que ao menos inicia sem erro, mas não consigo sequer iniciar agora!!

Código: [Selecionar]
Java HotSpot(TM) Client VM warning: You have loaded library /tmp/libhidapi-jni-646104470687661266264.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.

Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 22 de Outubro de 2015, 15:27
Novos testes!! A SMS liberou uma atualização: V2.16.00.14

Até agora verifiquei que no Linux o script info.sh não funciona porque no lugar de () usaram [] na soma da variável. Como não consegue fazer a soma, entra em loop e não finaliza.

Já copiei para as pastas libs 32 e 64 do programa os arquivos que estavam na versão anterior que ao menos inicia sem erro, mas não consigo sequer iniciar agora!!

Código: [Selecionar]
Java HotSpot(TM) Client VM warning: You have loaded library /tmp/libhidapi-jni-646104470687661266264.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.

Hoje de manhã a fonte do meu PC queimou, e ao mesmo tempo o meu Macbook parou de inicializar (após eu haver tentado aplicar uma atualização de sistema que migraria meu OS X da versão "Yosemite" para a versão "El Capitan"). Que zica! :o

Vai demorar uns dias até minha fonte retornar do conserto e com isto eu poder religar meu PC e testar essa nova versão. Mas, como você já detectou esses problemas na versão nova, minha sugestão é que desinstale tudo e volte a usar a última versão do programa que estava funcionando no seu computador (se nenhuma estava, por causa da arquitetura do hardware, aí o negócio é entrar em contato diretamente com a SMS, relatar o seu caso e solicitar suporte ao seu equipamento).

Desculpe não poder auxiliar mais no momento. Fui pego de surpresa pela "pane simultânea" nos meus dois computadores. :( Quando estiver em condições de testar a nova versão, faço a atualização do programa e reporto aqui se deu tudo certo ou se ocorreu algum problema, e, caso algum problema ocorra e eu consiga resolver, atualizarei o tutorial e reportarei aqui. :)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: allmac em 22 de Outubro de 2015, 15:38
Essa atualização saiu exatamente pelo meu contato direto com a SMS. Nem a versão de Mac, nem a de Linux no Raspberry funcionam. Na prática o maior problema é que a de Linux segundo eles deveria funcionar apenas instalando, mas não funciona. Me parece que esse erro ocorre especialmente no Debian "e variações".
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 24 de Novembro de 2015, 12:25
Essa atualização saiu exatamente pelo meu contato direto com a SMS. Nem a versão de Mac, nem a de Linux no Raspberry funcionam. Na prática o maior problema é que a de Linux segundo eles deveria funcionar apenas instalando, mas não funciona. Me parece que esse erro ocorre especialmente no Debian "e variações".

Depois de um mês, finalmente meu problema está resolvido: acabei comprando um notebook novo (Dell Inspiron 5548, que usa processador Intel i7 5500U), pois meu PC já era. :P

Enfim: meu notebook usa processador Intel e está com o XUbuntu 14.04 de 64 bits (e portanto com o JRE de 64 bits) instalado. Acabei de acessar o Download Center do website Alerta 24h e a última versão disponível do SMS Power View é a versão V2.16.00.13. Pelo visto, a versão V2.16.00.14 foi disponibilizada exclusivamente para você.

No meu sistema, o SMS Power View inicializou normalmente. Mas detectei um probleminha: quando fui configurar o acesso ao "Alerta 24h", surgiu a seguinte mensagem de erro:

sun.security.validator.ValidatorException: PKIX path validation failed:
java.security.cert.CertPathValidatorException: timestamp check failed

No momento, estou aqui batendo cabeça para tentar consertar mais essa "pisada" da turma da SMS... ::)

...e acho que não vou conseguir sozinho, pois ao que tudo indica isso está ocorrendo porque a validade do certificado do website Alerta 24h expirou. Numa situação dessas, a SMS precisa substituir o certificado por um que não esteja expirado. Já enviei mensagem para eles informando o problema. Agora é aguardar.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: allmac em 07 de Janeiro de 2016, 22:45
Opa!! Update..

Tenho feito bastente contato constante com o povo da SMS.
Lançaram 2 updates, e apenas nesse último a coisa QUASE funcionou 100%.

No Mac OS X ainda dá bastante problema!! Em especial para conectar no Alerta24h.com.
Mas no Raspberry Pi (B+) com Raspbian rodou, apensar de uns erros do Java ainda (espero que eles continuem com boa vontade pra me indicar onde pode ser isso).

Além das instruções que já foram dadas, precisei copiar desse site os arquivos hidapi-1.1.jar (direto na pasta libs com nome hidapi.jar) e libhidapi-jni.so (nas pastas libs/32 e libs/62 com o mesmo nome).

http://www.finchrobot.com/compiling-javahidapi-raspberry-pi?page=9

Espero que ajude alguém e que fique mais estável em alguma atualização. Vou continuar os testes.
Abraço!!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 08 de Janeiro de 2016, 20:30
Opa!! Update..

Tenho feito bastente contato constante com o povo da SMS.
Lançaram 2 updates, e apenas nesse último a coisa QUASE funcionou 100%.

No Mac OS X ainda dá bastante problema!! Em especial para conectar no Alerta24h.com.
Mas no Raspberry Pi (B+) com Raspbian rodou, apensar de uns erros do Java ainda (espero que eles continuem com boa vontade pra me indicar onde pode ser isso).

Além das instruções que já foram dadas, precisei copiar desse site os arquivos hidapi-1.1.jar (direto na pasta libs com nome hidapi.jar) e libhidapi-jni.so (nas pastas libs/32 e libs/62 com o mesmo nome).

http://www.finchrobot.com/compiling-javahidapi-raspberry-pi?page=9

Espero que ajude alguém e que fique mais estável em alguma atualização. Vou continuar os testes.
Abraço!!

Obrigado por avisar. :D Acabei de instalar a última versão do SMS Power View, que atualmente (08/01/2016) é a versão V2.17.00.00, e após isso voltei a conseguir conectar ao Alerta 24h, além de estar tudo funcionando (monitor, interface web etc.). :)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: arturlinuxcorreia em 23 de Junho de 2016, 10:36
Cara tópico 100%, sanou todas as minhas dúvidas.
Obrigado pela ajuda.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 23 de Junho de 2016, 12:12
Cara tópico 100%, sanou todas as minhas dúvidas.
Obrigado pela ajuda.

De nada, Artur.  :)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: giovanecoca em 10 de Novembro de 2016, 11:18
Olá,

A instalação funciona em Ubuntu Server?

Abs!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 10 de Novembro de 2016, 11:48
Olá,

A instalação funciona em Ubuntu Server?

Abs!

Nunca executei essa instalação no Ubuntu Server, mas não vejo por que a instalação haveria de ser diferente. O Ubuntu Server não deixa de vir com a estrutura de pastas padrão do Linux (pastas tais como /etc, /home, /tmp, /usr, /opt...). Que eu saiba, a diferença básica é que o Ubuntu Server já tem pré-instalados o Apache, CUPS, SSH, telnet, finger e outros softwares que permitem a execução de clientes e serviços de rede. Enfim: embora eu nunca tenha instalado o SMS Power View em um servidor Linux, não vejo por que a instalação ensinada no tutorial deste tópico não funcionaria. E esse mesmo raciocínio também se aplica à instalação do JRE no Ubuntu Server, que eu explico lá no meu outro tutorial e que é necessária para o funcionamento do SMS Power View: não há por que a instalação do JRE não funcionar, no Ubuntu Server.

Experimente instalar. Mal não vai fazer. Se não funcionar (o que eu acho bem difícil de ocorrer), você pode desinstalar conforme explicado na seção desinstalação (http://ubuntuforum-br.org/index.php/topic,114513.msg632364.html#msg632364). A desinstalação é fácil. Mas creio que funcionará, sim. Não vejo motivo para não funcionar.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: dolizney em 14 de Dezembro de 2016, 20:30
Bom tutorial cara
ajudou muito!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 15 de Dezembro de 2016, 00:37
Bom tutorial cara
ajudou muito!

Bacana, que bom que meu tutorial lhe foi útil! :) Eu mesmo de vez em quando volto aqui e uso meu próprio tutorial para atualizar o SPV do meu XUbuntu Linux, haha. É sempre bom registrar o que se sabe: ajuda aos outros e às vezes até a nós mesmos.  ;D
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 07 de Fevereiro de 2017, 23:22
Pessoal, tentei tudo que vocês tentaram e instalei o power view no Raspbian com Raspberry pi 3, mas realmente ele não consegue ler o nobreak via USB, mas alguma novidade quanto a isso?? Obrigado estou tentando instalarno Ubuntu Mate, posto aqui se conseguir fazer funcionar.

Obrigado a todos do tópico que realmente foi bem detalhado e resolveu o caso do allmac.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 09 de Fevereiro de 2017, 01:26
Pessoal, tentei tudo que vocês tentaram e instalei o power view no Raspbian com Raspberry pi 3, mas realmente ele não consegue ler o nobreak via USB, mas alguma novidade quanto a isso?? Obrigado estou tentando instalarno Ubuntu Mate, posto aqui se conseguir fazer funcionar.

Obrigado a todos do tópico que realmente foi bem detalhado e resolveu o caso do allmac.

No Ubuntu MATE vai funcionar. No Raspbian eu não faço ideia, mas no seu lugar o Java que eu instalaria não seria o JRE mas sim o JDK versão 8, atualização 121, para sistemas Linux com CPU ARM64 (http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-arm64-vfp-hflt.tar.gz), disponível nesta página (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html). O normal é instalar somente o JRE (já que o JDK só é necessário para quem vai desenvolver conteúdo em Java). Mas considerando que pelo visto não há JRE para ARM, o jeito é instalar o Oracle JDK proprietário (que vem com JRE dentro).
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 13 de Fevereiro de 2017, 17:17
Cara, já sofri tentando fazer isso funcionar, mas não foi.

Olha a saída do -d (DEBUG)

demetrio@demetrio-desktop:/opt/sms$ sudo ./powerview start -d
Iniciando como Serviço...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.
demetrio@demetrio-desktop:/opt/sms$ fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - INICIO
fev  13 16:15:59 [                              common.SistemaNativo]: [      main - DEBUG] utilizando Linux
fev  13 16:15:59 [                              common.SistemaNativo]: [      main - DEBUG] Versão do java: 1.8
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.copyRequiredFiles();
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.checkDebug(args); 1
fev  13 16:15:59 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] instanciando
fev  13 16:15:59 [                          xml.BuilderComandoSerial]: [      main - DEBUG] BuilderComandoSerial() Arquivo: /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  13 16:15:59 [                          xml.BuilderComandoSerial]: [      main - DEBUG] Parsing XML file... /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  13 16:15:59 [                          xml.BuilderComandoSerial]: [      main - DEBUG] XML file parsed
fev  13 16:15:59 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak TRIFASICO
fev  13 16:15:59 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] executaCmd()
fev  13 16:15:59 [                          log.RedirectOutputStream]: [      main - DEBUG] GerenteComunicacao.executaCmd(): Porta era nula!
fev  13 16:15:59 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] -->
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Criou Lista!
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] PortaUSBHID lib carregada: /opt/sms/libs/64/libhidapi-jni.so
fev  13 16:15:59 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Adicionou PortaUSBHID!
fev  13 16:15:59 [                          log.RedirectOutputStream]: [      main - DEBUG] WARNING:  RXTX Version mismatch
        Jar version = RXTX-2.2pre1
        native lib Version = RXTX-2.2pre2
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: Porta USB HID
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar possíveis erros Porta: Porta USB HID
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] PortaUSBHID.close()!
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] open()!!!
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] Procura por nobreak SMS:
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] PortaUSBHID.open(int vendor 1204, int productId 21760)!
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] PortaUSBHID.close()!
fev  13 16:16:08 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Nobreak TRIFASICO nao identificado
fev  13 16:16:08 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak MONOFASICO
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] executaCmd()
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] GerenteComunicacao.executaCmd(): Porta era nula!
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: Porta USB HID
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar possíveis erros Porta: Porta USB HID
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 13 de Fevereiro de 2017, 21:00
fev  13 16:15:59 [                          log.RedirectOutputStream]: [      main - DEBUG] WARNING:  RXTX Version mismatch
        Jar version = RXTX-2.2pre1
        native lib Version = RXTX-2.2pre2
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: Porta USB HID
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar possíveis erros Porta: Porta USB HID
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] PortaUSBHID.close()!
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] open()!!!
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] Procura por nobreak SMS:
fev  13 16:16:08 [                           comunicacao.PortaUSBHID]: [      main - DEBUG] PortaUSBHID.open(int vendor 1204, int productId 21760)!
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] PortaUSBHID.close()!
fev  13 16:16:08 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Nobreak TRIFASICO nao identificado
fev  13 16:16:08 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak MONOFASICO
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] executaCmd()
fev  13 16:16:08 [                          log.RedirectOutputStream]: [      main - DEBUG] GerenteComunicacao.executaCmd(): Porta era nula!
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: Porta USB HID
fev  13 16:16:08 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar possíveis erros Porta: Porta USB HID

Pane provavelmente relacionada à versão da biblioteca de transmissão (tx) e recepção (rx) em modo serial. Você chegou a testar a solução mencionada no subitem 3.1 (http://ubuntuforum-br.org/index.php/topic,114513.msg632365.html#msg632365) do tutorial? Se não chegou a testar, instale a biblioteca conforme eu explico lá. Talvez isso resolva.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 13 de Fevereiro de 2017, 22:02
Infelizmente não deu certo, fiz o procedimento e reiniciei mas continua no debug o mesmo erro.
Obrigado a atenção amigo, mas vou tentar instalar o windows 10 nesse raspberry pi 3 e tentar rodar o SMS Powerview.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 19 de Fevereiro de 2017, 13:29
Infelizmente não deu certo, fiz o procedimento e reiniciei mas continua no debug o mesmo erro.
Obrigado a atenção amigo, mas vou tentar instalar o windows 10 nesse raspberry pi 3 e tentar rodar o SMS Powerview.

É, talvez funcione. Espero que sim! :) Que pena que as informações aqui publicadas não foram suficientes para ajudar com o seu caso, mas espero que com o Windows você consiga. Se também não der certo, experimente isto, no Linux:

1) Acesse http://rxtx.qbang.org/wiki/index.php/Download e pegue o arquivo rxtx-2.1-7-bins-r2.zip (http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip) da coluna Binary.
2) Descompacte o arquivo ZIP, acesse a pasta descompactada e copie o arquivo RXTXcomm.jar para dentro de /opt/java/jre/lib/ext/
3) Acesse a subpasta ../Linux/i686-unknown-linux-gnu/ e copie os arquivos librxtxParallel.so e librxtxSerial.so para dentro de /opt/java/jre/bin/
4) Crie estes links simbólicos (estou presumindo que seu JRE está instalado em /opt/java/jre e que seu SMS Power View está instalado em /opt/sms):
Código: [Selecionar]
sudo ln -sf /opt/java/jre/bin/librxtxParallel.so /opt/sms/libs/32/librxtxParallel.so
Código: [Selecionar]
sudo ln -sf /opt/java/jre/bin/librxtxParallel.so /opt/sms/libs/64/librxtxParallel.so
Código: [Selecionar]
sudo ln -s /opt/java/jre/bin/librxtxSerial.so /opt/sms/libs/32/librxtxSerial.so
Código: [Selecionar]
sudo ln -s /opt/java/jre/bin/librxtxSerial.so /opt/sms/libs/64/librxtxSerial.so
Reinicie o sistema e veja se resolve.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: vitormilagres em 23 de Fevereiro de 2017, 20:49
Fala Sampayu, tudo bem??

Cara, tutorial show! Bem explicativo!

Só estou tendo um problema até agora. Estou instalando esse SMS em um servidor remoto meu, e estou fazendo isso via ssh.
Aí eu segui todos os passos corretamente. Mas quando vou entrar no ip do meu computador:
192.168.1.110:8080/sms/

aparece:
This site can’t be reached
192.168.1.110 refused to connect.

Já desabilitei o meu Firewall, então não sei o que isso pode ser. Quando eu rodo:
sudo /opt/sms/powerview start -g

aparece:
Iniciando como TrayIcon...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.

Então eu acredito que esteja tudo bem durante a instalacão, mas não sei porque não funciona

Obrigado
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 23 de Fevereiro de 2017, 21:10
Fala Sampayu, tudo bem??

Cara, tutorial show! Bem explicativo!

Só estou tendo um problema até agora. Estou instalando esse SMS em um servidor remoto meu, e estou fazendo isso via ssh.
Aí eu segui todos os passos corretamente. Mas quando vou entrar no ip do meu computador:
192.168.1.110:8080/sms/

aparece:
This site can’t be reached
192.168.1.110 refused to connect.

Já desabilitei o meu Firewall, então não sei o que isso pode ser. Quando eu rodo:
sudo /opt/sms/powerview start -g

aparece:
Iniciando como TrayIcon...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.

Então eu acredito que esteja tudo bem durante a instalacão, mas não sei porque não funciona

Obrigado

Esse problema está ocorrendo no navegador Google Chrome? Se for, tente com outro navegador e veja se o mesmo problema ocorre, pois o Chrome é conhecido por "encrencar" com alguns endereços, principalmente quando o DHCP não está ativado.

Se com outro navegador der o mesmo problema (ou você já estiver usando outro navegador que não o Chrome), o endereço IP 192.168.1.110 é fixo (estático) ou é automaticamente atribuído por DHCP? Se for estático, obtenha o MAC Address do dispositivo de rede do computador que está com esse IP e daí configure o roteador para usar DHCP mas reservar o IP 192.168.1.110 para o MAC Address do dispositivo de rede do computador em que você instalou o SMS Power View.

Se o problema persistir, verifique se as configurações de máscara de rede, DNS automático etc. estão corretas.

Você informou que já desabilitou o firewall, mas qual firewall? Se foi o firewall do roteador (hardware), habilite-o novamente, não é necessário desligá-lo. O que você precisa verificar é se no computador que está rodando o SMS Power View (no caso, o computador de IP local 192.168.1.110) o firewall do Linux (software) está permitindo conexões bidirecionais no protocolo TCP (v4 e v6) para a porta 8080. Uma forma de fazer isso é executar este comando, no terminal do shell:

Código: [Selecionar]
sudo /usr/sbin/ufw allow in proto tcp from any to any port 8080
...e daí tentar novamente acessar remotamente o SMS Power View. Se der certo, o problema era o firewall por software, do Linux.

Se quiser manipular as regras do firewall do Linux, instale o GUFW (interface gráfica para o firewall UFW):

Código: [Selecionar]
sudo apt-get install gufw -y...e daí execute o GUFW:
Código: [Selecionar]
sudo gufw...e daí verifique, na aba Relatório, se aparece um relatório do tipo:

Citar
TCP6     8080     *     java

Se estiver constando a mensagem acima, com a fonte na cor vermelha, é porque a regra que você adicionou está fazendo o firewall por software (UFW) permitir acessos remotos a essa máquina 192.168.1.110, via porta TCP 8080. Quando aquela mensagem aparece na cor preta significa que o firewall por padrão está bloqueando as conexões de entrada.

Você pode usar a interface gráfica do GUFW para adicionar, excluir ou modificar regras no firewall.

Também é bom dar uma olhada no arquivo hosts desse computador que está com o SMS Power View. O comando:

Código: [Selecionar]
cat /etc/hosts...deverá retornar algo assim:
Citar
127.0.0.1   localhost
127.0.1.1   hostname

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

...em que hostname é o nome desse computador 192.168.1.110, no Linux.

Em síntese: o SMS Power View está funcionando, portanto o problema é a configuração de rede, que está com alguma coisa errada. Pode ser a configuração do servidor DHCP, pode ser a configuração do firewall por software etc. Você usa proxy?

Se nada do acima descrito funcionar, experimente trocar o IP do computador para um número mais baixo, como p.ex. 192.168.1.100 ou 192.168.1.2. Talvez haja errado com o range (faixa) IP e o uso de um IP mais baixo resolva o problema.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 24 de Fevereiro de 2017, 10:46
vitormilagres, não estais colocando o endereço errado no navegador? O endereço correto seria apenas http://192.168.1.110:8080.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 24 de Fevereiro de 2017, 15:52
 Sampayu, resolvi fazer tudo do zero de novo, seguindo a risca seu tutorial, instalei o ubuntu Mate novamente no Raspberry pi3 e o Java em /opt/java/ e acabei de instalar o PowerView, agora eu noto pelo debug que ele não inicializa normalmente por dois erros, vê só:

Código: [Selecionar]
pi@pi-desktop:/opt/sms$ sudo ./powerview start -d
Iniciando como Serviço...
Criando link simbolico para USB-Serial.
stty: /dev/ttyUSB0: Input/output error
SMS Power View iniciado com sucesso.
pi@pi-desktop:/opt/sms$ fev  24 15:45:27 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - INICIO
fev  24 15:45:27 [                              common.SistemaNativo]: [      main - DEBUG] utilizando Linux
fev  24 15:45:27 [                              common.SistemaNativo]: [      main - DEBUG] Versão do java: 1.8
fev  24 15:45:27 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.copyRequiredFiles();
fev  24 15:45:27 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.checkDebug(args); 1
fev  24 15:45:27 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] instanciando
fev  24 15:45:27 [                          xml.BuilderComandoSerial]: [      main - DEBUG] BuilderComandoSerial() Arquivo: /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  24 15:45:27 [                          xml.BuilderComandoSerial]: [      main - DEBUG] Parsing XML file... /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  24 15:45:28 [                          xml.BuilderComandoSerial]: [      main - DEBUG] XML file parsed
fev  24 15:45:28 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak TRIFASICO
fev  24 15:45:28 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] executaCmd()
fev  24 15:45:28 [                          log.RedirectOutputStream]: [      main - DEBUG] GerenteComunicacao.executaCmd(): Porta era nula!
fev  24 15:45:28 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
fev  24 15:45:28 [                                        lang.Class]: [      main - DEBUG] -->
fev  24 15:45:28 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Criou Lista!
Java HotSpot(TM) Client VM warning: You have loaded library /opt/sms/libs/64/libhidapi-jni.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
fev  24 15:45:28 [                                        lang.Class]: [      main - ERROR] PortaUSBHID loadLibrary UnsatisfiedLinkError: /opt/sms/libs/64/libhidapi-jni.so: /opt/sms/libs/64/libhidapi-jni.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)
fev  24 15:45:28 [                                        lang.Class]: [      main - ERROR] PortaUSBHID loadLibrary UnsatisfiedLinkError: /opt/sms/libs/32/libhidapi-jni.so: /opt/sms/libs/32/libhidapi-jni.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)
fev  24 15:45:28 [                                        lang.Class]: [      main - ERROR] PortaUSBHID loadLibrary UnsatisfiedLinkError: Can't load library: /opt/sms/libs/64/libhidapi-jni.jnilib
fev  24 15:45:28 [                                        lang.Class]: [      main - ERROR] PortaUSBHID loadLibrary UnsatisfiedLinkError: Can't load library: /opt/sms/libs/32/libhidapi-jni.jnilib
fev  24 15:45:28 [                                        lang.Class]: [      main - ERROR] PortaUSBHID loadLibrary UnsatisfiedLinkError: Can't load library: /opt/sms/libs\hidapi-jni.dll
fev  24 15:45:28 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Adicionou PortaUSBHID!
fev  24 15:45:28 [                          log.RedirectOutputStream]: [      main - ERROR] java.lang.UnsatisfiedLinkError: /opt/sms/libs/32/librxtxSerial.so: /opt/sms/libs/32/librxtxSerial.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform) thrown while loading gnu.io.RXTXCommDriver


Há o conhecido erro da libhidapi como também da librxtx, seguindo um outro tutorial do tópico do amigo allmac, como fiz da outra vez, o erro da libhidapi deixa de existir, agora vou tentar fazer como tu me passou acima e vê no que dá. Muito obrigado pela força.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 24 de Fevereiro de 2017, 15:57
Opa!! Update..

Tenho feito bastente contato constante com o povo da SMS.
Lançaram 2 updates, e apenas nesse último a coisa QUASE funcionou 100%.

No Mac OS X ainda dá bastante problema!! Em especial para conectar no Alerta24h.com.
Mas no Raspberry Pi (B+) com Raspbian rodou, apensar de uns erros do Java ainda (espero que eles continuem com boa vontade pra me indicar onde pode ser isso).

Além das instruções que já foram dadas, precisei copiar desse site os arquivos hidapi-1.1.jar (direto na pasta libs com nome hidapi.jar) e libhidapi-jni.so (nas pastas libs/32 e libs/62 com o mesmo nome).

http://www.finchrobot.com/compiling-javahidapi-raspberry-pi?page=9

Espero que ajude alguém e que fique mais estável em alguma atualização. Vou continuar os testes.
Abraço!!

Allmac tu conseguiu rodar no raspberry pi usando a porta USB ou direto na Serial?? Infelizmente meus nobreaks são todos o Net4+ Expert só possuem porta USB. Obrigado.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 24 de Fevereiro de 2017, 16:45
Infelizmente não deu certo, fiz o procedimento e reiniciei mas continua no debug o mesmo erro.
Obrigado a atenção amigo, mas vou tentar instalar o windows 10 nesse raspberry pi 3 e tentar rodar o SMS Powerview.

É, talvez funcione. Espero que sim! :) Que pena que as informações aqui publicadas não foram suficientes para ajudar com o seu caso, mas espero que com o Windows você consiga. Se também não der certo, experimente isto, no Linux:

1) Acesse http://rxtx.qbang.org/wiki/index.php/Download e pegue o arquivo rxtx-2.1-7-bins-r2.zip (http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip) da coluna Binary.


Fiz conforme tu me explicou, mas ainda retornou assim o debug:



Código: [Selecionar]
pi@pi-desktop:/opt/sms$ sudo ./powerview start -d
[sudo] password for pi:
Iniciando como Serviço...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.
pi@pi-desktop:/opt/sms$ fev  24 16:42:52 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - INICIO
fev  24 16:42:52 [                              common.SistemaNativo]: [      main - DEBUG] utilizando Linux
fev  24 16:42:52 [                              common.SistemaNativo]: [      main - DEBUG] Versão do java: 1.8
fev  24 16:42:52 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.copyRequiredFiles();
fev  24 16:42:52 [                                        lang.Class]: [      main - DEBUG] SMSysServico.main() - Util.checkDebug(args); 1
fev  24 16:42:52 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] instanciando
fev  24 16:42:52 [                          xml.BuilderComandoSerial]: [      main - DEBUG] BuilderComandoSerial() Arquivo: /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  24 16:42:52 [                          xml.BuilderComandoSerial]: [      main - DEBUG] Parsing XML file... /opt/sms/resource/protocolos/verificaProtocolo.xml
fev  24 16:42:52 [                          xml.BuilderComandoSerial]: [      main - DEBUG] XML file parsed
fev  24 16:42:53 [                       factory.VerificaTipoNobreak]: [      main - DEBUG] Identificando Nobreak TRIFASICO
fev  24 16:42:53 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] executaCmd()
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] GerenteComunicacao.executaCmd(): Porta era nula!
fev  24 16:42:53 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] inicio
fev  24 16:42:53 [                                        lang.Class]: [      main - DEBUG] -->
fev  24 16:42:53 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Criou Lista!
fev  24 16:42:53 [                                        lang.Class]: [      main - DEBUG] PortaUSBHID lib carregada: /opt/sms/libs/64/libhidapi-jni.so
fev  24 16:42:53 [                                        lang.Class]: [      main - DEBUG] FactoryPortas.getListaPortaLinux(): Adicionou PortaUSBHID!
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] Stable Library
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] =========================================
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] Native lib Version = RXTX-2.2pre2
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] Java lib Version   = RXTX-2.1-7
fev  24 16:42:53 [                          log.RedirectOutputStream]: [      main - DEBUG] WARNING:  RXTX Version mismatch
        Jar version = RXTX-2.1-7
        native lib Version = RXTX-2.2pre2
fev  24 16:42:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Configurar porta: Porta USB HID
fev  24 16:42:55 [                    comunicacao.GerenteComunicacao]: [      main - DEBUG] Fechando porta antes de abrir para evitar possíveis erros Porta: Porta USB HID
2) Descompacte o arquivo ZIP, acesse a pasta descompactada e copie o arquivo RXTXcomm.jar para dentro de /opt/java/jre/lib/ext/
3) Acesse a subpasta ../Linux/i686-unknown-linux-gnu/ e copie os arquivos librxtxParallel.so e librxtxSerial.so para dentro de /opt/java/jre/bin/
4) Crie estes links simbólicos (estou presumindo que seu JRE está instalado em /opt/java/jre e que seu SMS Power View está instalado em /opt/sms):
Código: [Selecionar]
sudo ln -sf /opt/java/jre/bin/librxtxParallel.so /opt/sms/libs/32/librxtxParallel.so
Código: [Selecionar]
sudo ln -sf /opt/java/jre/bin/librxtxParallel.so /opt/sms/libs/64/librxtxParallel.so
Código: [Selecionar]
sudo ln -s /opt/java/jre/bin/librxtxSerial.so /opt/sms/libs/32/librxtxSerial.so
Código: [Selecionar]
sudo ln -s /opt/java/jre/bin/librxtxSerial.so /opt/sms/libs/64/librxtxSerial.so
Reinicie o sistema e veja se resolve.
[/code]
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 02 de MAR?O de 2017, 10:57
Sampayu acabei de conseguir fazer funcionar mas com a versão desse cara aqui.

http://esijmjg.blogspot.com.br/2014/04/sms-power-view-universal-para-linux.html

Só segui o leia-me dele e tive que copiar o librxtxSerial.so que você me disse para fazer o link simbólico para o diretório desse PowerView Universal, disponível no link acima.
Show de bola.
Muitíssimo obrigado pela contribuição.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 25 de MAR?O de 2017, 23:57
Sampayu acabei de conseguir fazer funcionar mas com a versão desse cara aqui.

http://esijmjg.blogspot.com.br/2014/04/sms-power-view-universal-para-linux.html

Só segui o leia-me dele e tive que copiar o librxtxSerial.so que você me disse para fazer o link simbólico para o diretório desse PowerView Universal, disponível no link acima.
Show de bola.
Muitíssimo obrigado pela contribuição.

O problema é que o tutorial dele usa o JRE versão 6. Você depois disso experimentou atualizar o JRE? A versão 6 tem bugs e é obsoleta.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 26 de MAR?O de 2017, 00:05
Fala Sampayu, tudo bem??

Cara, tutorial show! Bem explicativo!

Só estou tendo um problema até agora. Estou instalando esse SMS em um servidor remoto meu, e estou fazendo isso via ssh.
Aí eu segui todos os passos corretamente. Mas quando vou entrar no ip do meu computador:
192.168.1.110:8080/sms/

aparece:
This site can’t be reached
192.168.1.110 refused to connect.

Já desabilitei o meu Firewall, então não sei o que isso pode ser. Quando eu rodo:
sudo /opt/sms/powerview start -g

aparece:
Iniciando como TrayIcon...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.

Então eu acredito que esteja tudo bem durante a instalacão, mas não sei porque não funciona

Obrigado

Caso seu servidor esteja executando uma DE (interface gráfica), instale o TeamViewer (https://www.teamviewer.com/pt/download/linux/) no seu computador cliente e no computador servidor, daí no servidor execute o TeamViewer, vá em Conexão, depois clique em Configurar acesso não supervisionado e configure um acesso remoto.

Caso seu servidor não esteja executando interface gráfica e você ainda esteja vivenciando esse problema, você terá de reconfigurar o firewall (que muito provavelmente é o responsável pelo problema). O fato de você desabilitar um firewall como p.ex. UFW não desabilita o netfilter, que é o firewall interno do kernel Linux. Você pode usar o iptables para manipular as regras do netfilter. Por exemplo: se você quiser limpar todas as regras de proteção do netfilter em execução no servidor, execute este comando, no servidor:

Código: [Selecionar]
sudo iptables -F ; sudo iptables -X ; sudo iptables -P INPUT ACCEPT ; sudo iptables -P FORWARD ACCEPT
Após isso, reinicie o servidor e veja se o acesso remoto via SSH funciona.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: slackz em 22 de Maio de 2017, 19:16
Pessoal, sou mais um proprietário deste nobreak, infelizmente. Estou tentando rodar em um Raspberry Pi 3, fiz todos os procedimentos do tópico, ao executar ele mostra o seguinte erro:

Procura por nobreak: [DAKER]

E não inicia, alguém já passou por isso?

Vlw!

EDIT: Atualizando !

Consegui funcionar utilizando a libhidapi do seguinte site:

https://blogs.oracle.com/jtc/usb-device-access-for-java-se-and-osgi

Baixei o correspondente a armv6, tudo ok agora!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: demetriocgois em 04 de Julho de 2017, 13:35
Consegui fazer funcionar no Raspberry Pi3 perfeitamente seguindo as dicas do amigo slackz.
Obrigado a todos.

Pessoal, sou mais um proprietário deste nobreak, infelizmente. Estou tentando rodar em um Raspberry Pi 3, fiz todos os procedimentos do tópico, ao executar ele mostra o seguinte erro:

Procura por nobreak: [DAKER]

E não inicia, alguém já passou por isso?

Vlw!

EDIT: Atualizando !

Consegui funcionar utilizando a libhidapi do seguinte site:

https://blogs.oracle.com/jtc/usb-device-access-for-java-se-and-osgi

Baixei o correspondente a armv6, tudo ok agora!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: howlerbr em 13 de Setembro de 2017, 10:09
Excelente tutorial, estou pesquisando um nobreak para usar em casa e que tenha uma interface inteligente compativel com o Linux.

Só fiquei com algumas dúvidas:

1) Eu consigo programar o meu linux para se desligar (fazer o shutdown) no momento em que faltar luz e o nobreak for acionado?

2) É necessário o cadastro no site alerta24h? É esse site que ele fica monitorando para verificar se a Internet está disponível e se não estiver dispara o shutdown?

obrigado!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 14 de Setembro de 2017, 23:15
1) Eu consigo programar o meu linux para se desligar (fazer o shutdown) no momento em que faltar luz e o nobreak for acionado?

Sim. Na interface web para visualização do status do nobreak e configuração do serviço, há uma aba "configurações" dentro da qual há um menu "shutdown" em que você configura opções de shutdown (desligamento do sistema) em caso de falta de energia elétrica.

2) É necessário o cadastro no site alerta24h? É esse site que ele fica monitorando para verificar se a Internet está disponível e se não estiver dispara o shutdown?

Sim, para poder usar os recursos do serviço Alerta 24h você tem de se cadastrar no website www.alerta24h.com.br (criar um usuário e senha pra você) e também registrar o seu nobreak (informar o número de série dele). Desse modo, a empresa SMS fica sabendo que você é um cliente que adquiriu o nobreak modelo tal, número de série tal.

A finalidade do serviço Alerta 24h é você poder consultar seu nobreak quando não estiver em casa. Exemplo: você deixa o nobreak ligado e o seu computador com Linux ligado. O Linux estará executando o serviço SMS Power View, que estará coletando dados do seu nobreak e enviando (via Internet) para o website Alerta 24h. Aí você deixa tudo ligado (nobreak, computador e acesso à Internet) e sai de casa, vai pra faculdade ou pro trabalho, por exemplo. Mas você quer saber como está o seu nobreak (se ele está ligado, se ele está desligado, se ele está ligado usando a rede elétrica ou se está ligado usando bateria - nesse segundo caso, isso significaria que está faltando luz no local em que o nobreak se encontra, e por aí vai). O que você faz? Acessa o website www.alerta24h.com.br, efetua login e então consulta o status do seu nobreak. Também dá pra saber se o nobreak está se conectado com o website ou se a conexão de Internet foi perdida (não é que sua Internet tenha caído, mas pode ser que o serviço SMS Power View em execução no Linux pode ter se desconectado do servidor "Alerta 24h", ou o servidor "Alerta 24h" pode ter parado de funcionar etc.), dá pra remotamente mandar o nobreak desligar o computador e depois se desligar etc.

No website também dá para cadastrar tarefas. Por exemplo: você queria que seu nobreak desligasse o computador e depois se desligasse, duas horas após você sair de casa. Mas você se esqueceu de fazer isso no seu computador (na interface web do serviço SMS Power View) antes de sair de casa. O que fazer? Você acessa o website www.alerta24h.com.br, efetua login e cadastra uma tarefa de shutdown do sistema operacional e autodesligamento do nobreak, programando essa tarefa para ser executada no horário X, em que X é aquele horário que ocorrerá duas horas após você ter saído de casa.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: vini_ubuntu2018 em 19 de Dezembro de 2018, 17:19
Olá!

Instalei o Power View no Ubuntu conforme o manual encontrado em http://www.eth1.com.br/software/nobreaks/sms/manual.pdf
O serviço foi iniciado com sucesso.
Porém quando abro o navegador e digito http://ip_servidor:8080 aparece uma tela de LOGIN pedindo password.
Que senha é essa?
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 19 de Dezembro de 2018, 18:10
Olá!

Instalei o Power View no Ubuntu conforme o manual encontrado em http://www.eth1.com.br/software/nobreaks/sms/manual.pdf
O serviço foi iniciado com sucesso.
Porém quando abro o navegador e digito http://ip_servidor:8080 aparece uma tela de LOGIN pedindo password.
Que senha é essa?

Não faço a menor ideia. Bom, na realidade até faço, mas isso está relacionado a configurações do banco de dados do SMS Power View e do servidor RMI do SMS Power View. No entanto, essas configurações são desconhecidas por nós que não desenvolvemos o SMS Power View, justamente porque não desenvolvemos o SMS Power View e a documentação dele é omissa a respeito disso.

Uma das razões por que eu fiz um tutorial de instalação personalizada do SMS Power View foi porque seguindo o manual eu encontrei dificuldades, inclusive essa senha que o sistema ficava me pedindo. No meu caso, após desinstalar o SMS Power View e instalar tudo de novo, deu certo. Se você desinstalar o programa e instalar novamente - exatamente como explicado no tutorial - e mesmo assim o SMS Power View continuar pedindo uma senha, experimente informar usuário admin com estas senhas: admin, sms e nenhuma senha (deixar o campo senha em branco). Se essas tentativas com o usuário admin não resolverem, teste as mesmas senhas com o usuário sms e, se também não funcionar, experimente testar também usando o usuário e a senha que você utiliza para efetuar login no seu Linux.

Você também pode ver se tentando acessar a interface por intermédio do endereço seu-ip:8080/sms a tela de login some (em que seu-ip é o endereço IP do seu computador na sua rede local. Exemplo fictício: 192.168.1.11).

Se nada disso resolver, você pode tentar obter e instalar uma versão mais recente do SMS Power View. E, na falta de uma versão mais recente, ver se consegue uma versão anterior para instalar e testar.

É comum que a instalação conforme o manual venha com uma "surpresinha" e que seja difícil descobrir a origem do problema. A documentação do SMS Power View deixa MUITO a desejar. Se nada do que escrevi aqui resolver o problema, o jeito vai ser telefonar para a Legrand e solicitar suporte, porque só eles (os funcionários deles que desenvolveram esse programa) conhecem essas particularidades que não constam na documentação do programa.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: GabRF em 15 de Junho de 2019, 12:07
Olá! Estou tendo bastante dificuldade em fazer o Powerview funcionar em um Raspberry Pi 3.
Já baixei o arquivo libhidapi-jni.so para ARM e parou de dar erro neste ponto.
A saída de
Código: [Selecionar]
./powerview start --debug é https://pastebin.com/JP72YGQf

Raspbian GNU/Linux 8 (jessie)
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) Client VM (build 25.65-b01, mixed mode)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Bagual em 03 de Dezembro de 2019, 10:41
Olá! Estou tendo bastante dificuldade em fazer o Powerview funcionar em um Raspberry Pi 3.
Já baixei o arquivo libhidapi-jni.so para ARM e parou de dar erro neste ponto.
A saída de
Código: [Selecionar]
./powerview start --debug é https://pastebin.com/JP72YGQf

Raspbian GNU/Linux 8 (jessie)
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) Client VM (build 25.65-b01, mixed mode)

Olá meu caro.
Também estou nessa parada que mencionou na mensagem.
Raspberry PI 4 com raspbian e estou tentando fazer rodar o powerview nele.
Instalar é fácil, o problema é fazer funcionar.

Já instalei powerviem em Windows e Linux sem problemas, mas no Raspberry estou apanhando feio.
Conseguiu resolver seu caso?
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: GabRF em 03 de Dezembro de 2019, 14:24
Já instalei powerviem em Windows e Linux sem problemas, mas no Raspberry estou apanhando feio.
Conseguiu resolver seu caso?

Infelizmente não..
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Bagual em 03 de Dezembro de 2019, 16:37
Infelizmente não..

Bah... Lamentável.
Então, vou a luta no fim de semana e se conseguir irei postar aqui.
Valeu pelo retorno.

Meus testes serão com o Bundle 5 deste link.
https://pt.aliexpress.com/item/4000066043319.html?spm=a2g0s.9042311.0.0.6efbb90aSlvmOs
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Grehs em 08 de Junho de 2020, 18:09
Boa tarde pessoal,

Passando só pra registrar que tive sucesso utilizando o SMS PowerView V4.07.00.01 para Linux no Raspberry Pi 3.

O sistema operacional é o Raspberry Pi OS (https://www.raspberrypi.org/, antigo Raspbian) na sua versão atual para 32 bits, com OpenJDK 11.

No entanto, tive que compilar a biblioteca javahidapi dentro do próprio Raspberry e trocar o .so na pasta do PowerView.

Se alguém ainda tiver dificuldades ou dúvidas posso tentar ajudar com mais detalhes.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: kegham em 09 de Junho de 2020, 10:14
Bom dia, alguém mais está com o problema de senha de autenticação do WEbui?

Efetuei a instalação conforme o tutorial, tudo certo. Porém quando tento acessar a interface, me é solicitado uma senha que não faço a menor idéia de qual seja, e não existe nada relacionado nos manuais.

Já enviei e-mails tanto para SMS como Legrand, e nenhum retorno até agora.

Alguém tendo o mesmo problema?
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: anciaes em 16 de Julho de 2021, 21:51
Bom dia, alguém mais está com o problema de senha de autenticação do WEbui?

Efetuei a instalação conforme o tutorial, tudo certo. Porém quando tento acessar a interface, me é solicitado uma senha que não faço a menor idéia de qual seja, e não existe nada relacionado nos manuais.

Já enviei e-mails tanto para SMS como Legrand, e nenhum retorno até agora.

Alguém tendo o mesmo problema?

Eu! Passei dias brigando com esse troço (é impressionante como estamos mal servidos de fabricantes de no-break para consumidor aqui no Brasil, a SMS é uma das melhores e mesmo assim tem um software velhíssimo e que já era ruim quando foi feito...). Tenho micros com Windows e com Linux Mint em casa, mas quando vi que eles exigem a instalação de um JRE 32 bits e que possivelmente, com atualizações futuras, o programa iria parar de funcionar, decidi usar uma máquina virtual no VirtualBox. Primeiro tentei com uma Linux Mint, mas não funcionava de jeito nenhum... Daí, peguei meu velho Windows 7 (original mas sem uso desde que migrei pro 10) e instalei em outra VM de 32 bits. Atualizei ele todo, instalei a versão caquética de Java que eles recomendam, briguei um pouco com o software e finalmente consegui fazer funcionar, ou pelo menos aparecer, ao acessar "localhost:8080/sms", a tela do servidor HTTP do no-break...

Mas aí ele me pede esta senha maluca... Numa sexta-feira... De noite... :-)

Tentei, como sugerido aqui, desinstalar e reinstalar, mas não funcionou. Continua me pedindo a senha. O que percebi é que ela tem um limite de seis caracteres, mas força bruta pra isso vai levar umas décadas. :-)

Se alguem chegar a uma conclusão, por favor avise. Senão, na segunda ligo pra SMS de novo e vejo se tenho sorte (mas, a julgar pela minha ligação anterior, a pessoa vai se resumir a repetir o que está no manual, infelizmente).

Abraços!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: lmp em 18 de Agosto de 2021, 18:21
Boa tarde, estou com certa dificuldade também:

Código: [Selecionar]
Aug  18 18:18:16 [                              common.SistemaNativo]: [      main - DEBUG] utilizando: [Linux]                                                                                                   
Aug  18 18:18:16 [                              common.SistemaNativo]: [      main - DEBUG] Versão do java: [1.8]                                                                                                 
Aug  18 18:18:45 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:45 PM com.sun.jersey.api.core.PackagesResourceConfig init                                           
INFO: Scanning for root resource and provider classes in the packages:                                                                                                                                             
  web.rest                                                                                                                                                                                                         
                                                                                                                                                                                                                   
Aug  18 18:18:45 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:45 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses                                     
INFO: Root resource classes found:                                                                                                                                                                                 
  class web.rest.MedidoresMobileResource                                                                                                                                                                           
  class web.rest.DisparoAcaoMobileResource                                                                                                                                                                         
  class web.rest.NotificacaoPushResource                                                                                                                                                                           
  class web.rest.ConfirmarNotificacaoResource                                                                                                                                                                     
  class web.rest.LoginMobileResource                                                                                                                                                                               
  class web.rest.TarefasMobileResource                                                                                                                                                                             
                                                                                                                                                                                                                   
Aug  18 18:18:45 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:45 PM com.sun.jersey.api.core.ScanningResourceConfig init                                           
INFO: No provider classes found.                                                                                                                                                                                   
                                                                                                                                                                                                                   
Aug  18 18:18:45 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:45 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate                           
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'                                                                                                                                   
                                                                                                                                                                                                                   
Aug  18 18:18:55 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:55 PM com.sun.jersey.api.core.PackagesResourceConfig init                                           
INFO: Scanning for root resource and provider classes in the packages:                                                                                                                                             
  web.rest                                                                                                                                                                                                         
                                                                                                                                                                                                                   
Aug  18 18:18:55 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:55 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses                                     
INFO: Root resource classes found:                                                                                                                                                                                 
  class web.rest.ConfirmarNotificacaoResource                                                                                                                                                                     
  class web.rest.TarefasMobileResource                                                                                                                                                                             
  class web.rest.DisparoAcaoMobileResource                                                                                                                                                                         
  class web.rest.MedidoresMobileResource                                                                                                                                                                           
  class web.rest.NotificacaoPushResource                                                                                                                                                                           
  class web.rest.LoginMobileResource                                                                                                                                                                               
                                                                                                                                                                                                                   
Aug  18 18:18:55 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:55 PM com.sun.jersey.api.core.ScanningResourceConfig init                                           
INFO: No provider classes found.                                                                                                                                                                                   
                                                                                                                                                                                                                   
Aug  18 18:18:56 [                                              root]: [      main - ERROR] Aug 18, 2021 6:18:56 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate                           
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'                                                                                                                                   
                                                                                                                                                                                                                   
Aug  18 18:18:56 [                                    init.SMSysInit]: [      main - DEBUG] Policy: [file:////opt/sms/java.policy]                                                                                 
Aug  18 18:18:56 [                                    init.SMSysInit]: [      main - INFO ] Registrado!!! [Porta: 10250                                                                                           
Endereços:                                                                                                                                                                                                         
localhost       192.168.1.138   8080                                                                                                                                                                               
]                                                                                                                                                                                                                 
Aug  18 18:18:56 [                             servidor.ServidorImpl]: [      main - DEBUG] obteve o nobreak: [true]                                                                                               
Aug  18 18:18:56 [                        persistencia.SPersistencia]: [      main - DEBUG] INSERINDO CONFIGURAÇÕES...     

Para nesse inserindo configurações

java version "1.8.0_301"                                                                                                                                                                                           
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)                                                                                                                                                             
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode) 

Description:    Ubuntu 18.04.5 LTS                                                                                                                                                                                 
Release:        18.04                                                                                                                                                                                             
Codename:       bionic
Título: Disponibilizei o SMS Power View 3.00.01.00 no meu OneDrive.
Enviado por: Sampayu em 09 de Setembro de 2021, 17:14
A todos os que porventura estejam monitorando/acompanhando este tópico: caso alguém esteja tendo dificuldades para fazer o SMS Power View mais recente funcionar em seu sistema Linux e a empresa SMS não esteja lhe ajudando a resolver esse problema, sugiro que faça como eu: instale uma versão mais antiga do SMS Power View que funcione no seu Linux.

Infelizmente, embora os nobreaks da SMS sejam bons, o pós-venda que a SMS presta aos clientes que usam Linux não é bom.

Acabei de disponibilizar publicamente, no meu OneDrive, o pacote tarball do SMS Power View versão 3.00.01.00 (lançado em junho de 2016), que eu estou usando e que está funcionando normalmente no meu XUbuntu 20.04 (lançado em abril de 2020) com Java 8u301 (lançado em julho de 2021). Desse modo, os clientes da SMS que tiverem sido deixados "na mão" pela empresa SMS pelo menos terão uma chance de conseguir usar o software de monitoramento dos seus nobreaks, no Linux.

Eu também tenho em arquivo as versões 2.17.00.00 (lançada em janeiro de 2016), 2.16.00.13 (lançada em setembro de 2015) e 2.16.00.11 (lançada que setembro de 2014). Caso a versão 3.00.01.00 (lançada em junho de 2016) não funcione no Linux de alguém aí e haja interesse em testar essas outras versões que possuo, avisem-me por aqui que eu disponibilizo no meu OneDrive e forneço o link publicamente, também.

Para baixar a versão 3.00.01.00 que disponibilizei no momento, consulte a subseção 1.2 lá na seção 1 do tutorial (https://ubuntuforum-br.org/index.php?topic=114513.msg632363#msg632363).
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: eduardoanjos em 12 de Novembro de 2021, 18:31
Alguém conseguiu descobrir a tal senha que pede nessa tela?

(https://i.imgur.com/F32r5tU.png)

===Edit===
Acho que meu ubuntu não está reconhecendo o usb do nobreak.

Olha a saída do lsusb

Código: [Selecionar]
eduardo@eduardocasalinux:~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 062a:4101 MosArt Semiconductor Corp. Wireless Keyboard/Mouse
Bus 001 Device 002: ID 1871:0101 Aveo Technology Corp. UVC camera (Bresser microscope)
Bus 001 Device 004: ID 067b:23d3 Prolific Technology, Inc. USB-Serial Controller
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
eduardo@eduardocasalinux:~$
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 13 de Novembro de 2021, 17:17
Alguém conseguiu descobrir a tal senha que pede nessa tela?
(...)
Acho que meu ubuntu não está reconhecendo o usb do nobreak.

Recentemente substituí meu XUbuntu 16.04 pelo 20.04 e daí tive de reinstalar o SMS Power View, mas passei pelo problema da senha e não consegui nem descobrir a senha nem obtive resposta do suporte da SMS, por isto instalei o  SMS Power View versão 3.00.01.00 que eu já tinha em backup no meu laptop e, para quem quiser fazer o mesmo, disponibilizei-o no meu One Drive, conforme comentei aqui (https://ubuntuforum-br.org/index.php?topic=114513.msg682371#msg682371).

Quanto ao reconhecimento do dispositivo na porta USB, como o nobreak em si envia e recebe sinal via porta RS232 (que é uma porta serial) mas esse sinal é enviado via USB, é necessário instalar o driver USB cypress_m8, que é capaz de dar suporte a esse tipo de dispositivo num trabalho conjunto com o driver usbserial (o driver usbserial reconhece sinais seriais RS232 que chegam pela porta USB, e o driver cypress_m8 reconhece sinais RS232 vindos da porta USB que foram gerados por dispositivos que usam chip da fabricante Cypress Semiconductor, como é o caso dos nobreaks da SMS). Isso é comentado aqui (https://ubuntuforum-br.org/index.php?topic=114513.msg632518#msg632518) e nos 3 comentários seguintes. Mas experimente primeiro desinstalar o SMS PV atual e instalar a versão que disponibilzei no meu One Drive.

Após o SMS PV estar instalado, você pode rodar um:

Código: [Selecionar]
lsmod |grep -i cypress
Se no resultado não aparecer algo assim:

Citar
cypress_m8         32768  0
usbserial              53248  1 cypress_m8

...então rode o modprobe:

Código: [Selecionar]
modprobe cypress_m8 usbserial
Após isso, os dois drivers hão de ser linkados ao sistema e daí o comando lsusb deverá retornar algo do tipo:

Citar
Bus 002 Device 007: ID 04b4:5500 Cypress Semiconductor Corp. HID->COM RS232 Adapter

...indicando que o sistema operacional está corretamente usando os drivers usbserial e cypress_m8 para reconhecer sinais RS232 recebidos do seu nobreak via porta USB do seu computador.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: eduardoanjos em 14 de Novembro de 2021, 10:57
É, vou ver se deleto essa versão e instalo que você orientou.

Realmente precisava instalar o driver, agora parece que reconheceu, porque quando eu estartei o power view, aparentemente ele conseguiu localizar o nobreak, como mostra o print abaixo:

(https://i.imgur.com/oOKtEFv.png)

Mais continua pedindo a tal senha quando eu acesso tento acessar a url: http://192.168.0.133:8080/sms/

Acho que antes de testar essa versão vou entrar em contato com eles, no famoso "vai que" né...caso eles não me ajudem, eu vou tentar essa sua versão aí, e volto aqui com o resultado.


Detalhe que eu não consegui botar para funcionar nem no windows.....ele reconheceu tudo certinho mais não consegui fazer a comunicação para ver a energia e tal...rsrs
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 16 de Novembro de 2021, 18:40
Detalhe que eu não consegui botar para funcionar nem no windows.....ele reconheceu tudo certinho mais não consegui fazer a comunicação para ver a energia e tal...rsrs

Como o SMS Power View é uma aplicação compilada em bytecode Java, e como o JRE (Ambiente de Execução Java) que executa esse bytecode Java é um ambiente multiplataforma (i.e. funciona em Linux, Windows e macOS), o sistema operacional em uso é indiferente para a aplicação SMS Power View: contanto que você tenha instalada a mais recente versão do JRE, a aplicação funcionará.

O que muda mesmo são os drivers de dispositivo que cada sistema operacional utilizará para reconhecer seu nobreak na interface USB e interpretar os sinais RS232 que vêm por essa interface. Daí a importância, no caso do Linux, de habilitar os drivers usbserial e cypress_m8. Mas a senha misteriosa solicitada ao usuário é algum erro de programação/configuração e documentação da aplicação SMS Power View, i.e. ou essa senha não deveria ser solicitada, ou seria solicitada mas essa senha teria de ser informada na documentação (manual) do SMS Power View.

Caso consiga a façanha de obter essa senha com alguém da SMS, poste aqui para testarmos. Caso não consiga, penso que o melhor caminho seja proceder como fiz: desinstalar o SMS Power View atual e instalar o antigo que instalei. É um workaround bem funcional para o usuário doméstico (para um usuário corporativo já acho problemático, por questões de segurança envolvidas na utilização de uma aplicação antiga, que usa bibliotecas antigas etc.).
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: eduardoanjos em 23 de Novembro de 2021, 20:47
Detalhe que eu não consegui botar para funcionar nem no windows.....ele reconheceu tudo certinho mais não consegui fazer a comunicação para ver a energia e tal...rsrs

Como o SMS Power View é uma aplicação escrita em bytecode Java, e como o JRE (Ambiente de Execução Java) que executa esse bytecode Java é um ambiente multiplataforma (i.e. funciona em Linux, Windows e macOS), o sistema operacional em uso é indiferente para a aplicação SMS Power View: contanto que você tenha instalada a mais recente versão do JRE, a aplicação funcionará.

O que muda mesmo são os drivers de dispositivo que cada sistema operacional utilizará para reconhecer seu nobreak na interface USB e interpretar os sinais RS232 que vêm por essa interface. Daí a importância, no caso do Linux, de habilitar os drivers usbserial e cypress_m8. Mas a senha misteriosa solicitada ao usuário é algum erro de programação/configuração e documentação da aplicação SMS Power View, i.e. ou essa senha não deveria ser solicitada, ou seria solicitada mas essa senha teria de ser informada na documentação (manual) do SMS Power View.

Caso consiga a façanha de obter essa senha com alguém da SMS, poste aqui para testarmos. Caso não consiga, penso que o melhor caminho seja proceder como fiz: desinstalar o SMS Power View atual e instalar o antigo que instalei. É um workaround bem funcional para o usuário doméstico (para um usuário corporativo já acho problemático, por questões de segurança envolvidas na utilização de uma aplicação antiga, que usa bibliotecas antigas etc.).

(https://i.imgur.com/pTHEWxz.png)

Segundo a resposta por e-mail, é um erro quando utiliza java 64bits.

Eu ainda não tive tempo de instalar um 32bits para testar.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 25 de Novembro de 2021, 02:10
Segundo a resposta por e-mail, é um erro quando utiliza java 64bits.

Eu ainda não tive tempo de instalar um 32bits para testar.

Que absurda, a resposta desse funcionário da empresa. :o "Nada a ver" essa história de que a arquitetura do JRE teria de ser de 32 bits. Isso não é verdade. Em sistemas de 64 bits, o ideal é instalar o JRE de 64 bits mesmo. Não desinstale o seu Java de 64 bits!

Atualmente (25/11/2021), a última versão do SMS Power View é a V4.07.00.05. Se você se logar lá em https://www.alerta24h.com.br e acessar a seção Download Center (https://www.alerta24h.com.br/alerta-download-center), o link é este (https://www.alerta24h.com.br/download/SMS_Power_View/install_SMS.tar.gz).

Apesar de estar no momento com o JRE 8u311 de 64 bits, acabei de desinstalar meu SMS Power View antigo (versão 3.00.01.00, de 2016), baixar essa última versão (4.07.00.05, que não é tão nova assim, foi lançada em 2018) e instalá-la usando os mesmos passos lá da seção INSTALAÇÃO (http://ubuntuforum-br.org/index.php/topic,114513.msg632363.html#msg632363).

IMPORTANTE: eu executei TODOS os passos da seção INSTALAÇÃO, inclusive o passo 1.7, que consiste em executar este comando:

Código: [Selecionar]
sudo /opt/sms/powerview start -g
Ao executar o comando acima, o SMS Power View foi executado em modo gráfico (janela) e, após alguns segundos, uma janela surgiu e me solicitou para digitar um nome para essa minha instalação do programa. Eu digitei um nome e confirmei clicando no botão de "ok". Após isso, o SMS Power View entrou normalmente em funcionamento e não me pediu senha quando eu acessei a página http://localhost:8080/sms/ (nessa página, clique sobre o link "SOBRE" que aparecerá a versão do programa).

Após isso, eu finalizei o programa com o comando:

Código: [Selecionar]
sudo /opt/sms/powerview stop
...que está lá no item 4.1 da seção AUTOMATICAÇÃO (https://ubuntuforum-br.org/index.php/topic,114513.msg632372.html#msg632372).

Após executar os demais passos da seção AUTOMATIZAÇÃO, fechei e abri novamente a página http://localhost:8080/sms/ e funcionou normalmente.

Enfim: funcionou normalmente com o Java de 64 bits. Acredito que o problema da senha ocorre porque faltou executar o SMS Power View manualmente em modo gráfico (sudo /opt/sms/powerview start -g), na primeira vez (i.e. logo após instalar o programa), para ele no modo gráfico poder gerar a janela em que você dá um nome para a sua instalação e confirma. Talvez a (mas somente a) instalação sem nome requeira autenticação. Enfim: a pane parece ter sido isso. Claramente não foi porque o Java é de 64 bits, caso contrário meu SMS Power View "atualizado" (em 2018...  ::) ) não estaria funcionando com meu Java / JRE de 64 bits.  :P
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: eduardoanjos em 10 de Janeiro de 2022, 21:11
(https://i.imgur.com/1eaflnp.png)

Então eu reinstalei aqui, e quando instalei ele detectou que o display é :1 aqui em casa...só que na hora da execução parece que está pegando o display :0.0
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 11 de Janeiro de 2022, 00:20
Então eu reinstalei aqui, e quando instalei ele detectou que o display é :1 aqui em casa...só que na hora da execução parece que está pegando o display :0.0

Qual o resultado do comando abaixo?

Código: [Selecionar]
grep DISPLAY /opt/sms/powerview
Se o resultado do comando acima não for export DISPLAY=:0.0, edite o arquivo com um comando tal como:

Código: [Selecionar]
sudo gedit /opt/sms/powerview
ou

Código: [Selecionar]
sudo mousepad /opt/sms/powerview
ou ainda

Código: [Selecionar]
sudo nano /opt/sms/powerview
...e então troque aquele :0.0 por :1, em seguida salve o arquivo e então saia do editor.

Após isso, reinicie o SMS Power View com o comando:

Código: [Selecionar]
sudo systemctl restart smspv.service
ou então

Código: [Selecionar]
sudo service smspv restart
...e então tente novamente executar o comando:

Código: [Selecionar]
sudo /opt/sms/powerview start -g -d
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: eduardoanjos em 11 de Janeiro de 2022, 10:05
Funcionou.....

Eu fiz o comando:
Código: [Selecionar]
grep DISPLAY /opt/sms/powerview
O resultado:
Código: [Selecionar]
export DISPLAY=:0.0
Usei o comando:
Código: [Selecionar]
sudo nano /opt/sms/powerview
Troquei o display de :0.0 para :1

Depois executei o comando para reiniciar o serviço e funcionou, realmente apareceu a logo do alerta24h, pediu para escrever um nome, e depois abriu certinho..

(https://i.imgur.com/fpZpnQt.png)


Perfeito man, muito obrigado por todo suporte.



======== EDIT =========
Consegui vincular ao site, só não consegui vincular com o mobile....

Sendo que, perde monitoramento toda hora, é um monitoramento bem ruim para falar a verdade, se for isso mesmo...

Eu não sei se é problema da porta usb, não sei se é problema do nobreak, sei lá, se for assim mesmo estou achando bem ruim, toda hora eu tenho que parar o serviço e iniciar novamente.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 11 de Janeiro de 2022, 19:47
Perfeito man, muito obrigado por todo suporte.
De nada.

Consegui vincular ao site, só não consegui vincular com o mobile....

Sendo que, perde monitoramento toda hora, é um monitoramento bem ruim para falar a verdade, se for isso mesmo...

Eu não sei se é problema da porta usb, não sei se é problema do nobreak, sei lá, se for assim mesmo estou achando bem ruim, toda hora eu tenho que parar o serviço e iniciar novamente.

O mobile eu nunca testei.

No meu web server local aparece "Tempo para desligar 00:00:00" mas no seu está aparecendo "Tempo para desligar 00:00:00 Bateria com problemas". Assim como smartphone fica travando, desligando e reiniciando quando está com pane na bateria, o seu nobreak pelo visto está fazendo o mesmo por estar com pane na bateria. Os nobreaks da SMS possuem processador e o processador geralmente reinicia o circuito quando a bateria dá alguma pane, o que acaba interrompendo a conexão do hardware com o web server.

Enfim: eu levaria o nobreak para a assistência técnica trocar a bateria.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: mikeroger129 em 24 de Fevereiro de 2022, 16:00

Nice post. I was checking continuously this blog and I am impressed! Very useful information particularly the last part ??
I care for such info much. I was seeking this particular info for a very long time. Thank you and best of luck.
Your style is unique in comparison to other people I have read stuff from.
english stories (https://play.google.com/store/apps/details?id=com.stories.bedtimeshort) what is factorial of 100 hundred (https://rajsinha898.blogspot.com/2022/02/what-is-factorial-of-100-hundred.html)english short stories with moral values (https://rajbiswas146.blogspot.com/2021/02/short-moral-stories.html)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: sysmatck em 30 de Abril de 2022, 08:28
Boa tarde pessoal,

Passando só pra registrar que tive sucesso utilizando o SMS PowerView V4.07.00.01 para Linux no Raspberry Pi 3.

O sistema operacional é o Raspberry Pi OS (https://www.raspberrypi.org/, antigo Raspbian) na sua versão atual para 32 bits, com OpenJDK 11.

No entanto, tive que compilar a biblioteca javahidapi dentro do próprio Raspberry e trocar o .so na pasta do PowerView.

Se alguém ainda tiver dificuldades ou dúvidas posso tentar ajudar com mais detalhes.

Seu comentario me ajudou bastante! Obrigado.

Quando eu rodava `./powerview start --debug` aparecia a seguinte mensagem:


May  01 12:36:07 [                              servico.SMSysServico]: [      main - DEBUG] Inicializando o Powerview: [V4.07.00.01]
May  01 12:36:08 [                   comunicacao.FactoryPortaSerials]: [      main - DEBUG] Criou Lista!
OpenJDK Server VM warning: You have loaded library /opt/powerview/libs/64/libhidapi-jni.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
May  01 12:36:08 [                           comunicacao.PortaUSBHID]: [      main - ERROR] LoadLibrary unsatisfiedLinkError: [/opt/powerview/libs/64/libhidapi-jni.so: /opt/powerview/libs/64/libhidapi-jni.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)]
May  01 12:36:08 [                           comunicacao.PortaUSBHID]: [      main - ERROR] LoadLibrary unsatisfiedLinkError: [/opt/powerview/libs/32/libhidapi-jni.so: /opt/powerview/libs/32/libhidapi-jni.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)]


Tambem fiz o mesmo procedimento e funcionou pra mim. Rodando aqui a V4.07.00.01 no Raspberry Pi 4 com Ubuntu Server 22.04 e "default-java" (openjdk-11) instalado.

Gastei um tempão aprendendo como fazer isso, então vai aqui detalhes apra ajudar alguém (talvez eu mesmo no futuro).

Processo:
1. Baixar projeto do javahidapi (https://github.com/andre-rodovalho/)
Código: [Selecionar]
cd /home
git clone https://github.com/andre-rodovalho/javahidapi.git
cd javahidapi/linux/
git checkout Modernize
2. Instalar bibliotecas e ferramentas pra compilar
Código: [Selecionar]
apt install pkg-config  default-jdk libudev-dev libusb-1.0-0-dev pkg-config make g++
3. Compilar a biblioteca
Código: [Selecionar]
make
4. Copiar o libhidapi-jni.so arquivo para pasta correta de acordo com a arquitetura do sistema
Código: [Selecionar]
cp libhidapi-jni.so /opt/powerview/libs/32/

# e/ou

cp libhidapi-jni.so /opt/powerview/libs/64/

Alternativa:
Para facilitar nossa vida, subi as bibliotecas que compilei no Pi4, 32 e 64 bits. Se voce tiver rodando o mesmo hardware, vai funcionar para voce:

Código: [Selecionar]
wget https://github.com/andre-rodovalho/javahidapi/raw/ARM_armhf_native_linux_so/lib/native/linux/libhidapi-jni-aarch64.so
mv libhidapi-jni-aarch64.so /opt/powerview/libs/64/libhidapi-jni.so

# e/ou

wget https://github.com/andre-rodovalho/javahidapi/raw/ARM_armhf_native_linux_so/lib/native/linux/libhidapi-jni-eabi5.so
mv libhidapi-jni-eabi5.so /opt/powerview/libs/32/libhidapi-jni.so
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: gabrielflach em 19 de Junho de 2022, 09:51
Seu comentario me ajudou bastante! Obrigado.

Quando eu rodava `./powerview start --debug` aparecia a seguinte mensagem:


May  01 12:36:07 [                              servico.SMSysServico]: [      main - DEBUG] Inicializando o Powerview: [V4.07.00.01]
May  01 12:36:08 [                   comunicacao.FactoryPortaSerials]: [      main - DEBUG] Criou Lista!
OpenJDK Server VM warning: You have loaded library /opt/powerview/libs/64/libhidapi-jni.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
May  01 12:36:08 [                           comunicacao.PortaUSBHID]: [      main - ERROR] LoadLibrary unsatisfiedLinkError: [/opt/powerview/libs/64/libhidapi-jni.so: /opt/powerview/libs/64/libhidapi-jni.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)]
May  01 12:36:08 [                           comunicacao.PortaUSBHID]: [      main - ERROR] LoadLibrary unsatisfiedLinkError: [/opt/powerview/libs/32/libhidapi-jni.so: /opt/powerview/libs/32/libhidapi-jni.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)]


Tambem fiz o mesmo procedimento e funcionou pra mim. Rodando aqui a V4.07.00.01 no Raspberry Pi 4 com Ubuntu Server 22.04 e "default-java" (openjdk-11) instalado.

Gastei um tempão aprendendo como fazer isso, então vai aqui detalhes apra ajudar alguém (talvez eu mesmo no futuro).


Consegui instalar ele num Orange Pi 3 LTS usando a imagem oficial do Ubuntu 22.04 e num Banana Pi Zero M2 com o Armbian, mas esse eu tive que atualizar todos os pacotes do focal para o jammy.

Na instalação usei somente os pacotes default-jdk e libusb-1.0-0-dev de 32 bits, e o javahidapi disponível no link.
Para o problema de senha da interface web, basta substituir o arquivo banco_de_dados.yap por um de outra instalação que esteja funcionando. No meu caso, eu utilizei um que já tenho salvo da versão 2.16.00.13.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: carloslessa em 03 de Setembro de 2022, 10:09
Bom dia.

Estou tentando instalar o SMS PV em um raspberry pi 4b com ubuntu 22.04 arm64 e openjdk-8.

Com as dicas encontradas nesse tópico consegui resolver as questões relativas a jssc-2.8.0.jar e libhidapi-jni.so.

O sistema é iniciado, lê a porta serial, reconhece que o nobreak é monofásico:

Procura por nobreak: [SMS]
Testando TipoNobreak: [MONOFASICO]
Leitura do serial disponivel: [-1]
Leitura do serial disponivel:

Leitura do serial disponivel:

Nobreak [MONOFASICO] encontrado
Registrado!!! [Porta: 10250
Endereços:
new-raspserver   192.168.x.206   8080

new-raspserver   192.168.x.200   8080
]
testeChave() => Tenta ler dados do UPS!
Leitura do serial disponivel:

Leitura do serial disponivel: [-1]
Leitura do serial disponivel:

Leitura do serial disponivel:

RESPOSTA ORIGINAL: [3B4542695331313530303020323436306F0D]
RESPOSTA APÓS LIMPEZA: [3B4542695331313530303020323436306F0D]
RESPOSTA SEM INÍCIO: [4542695331313530303020323436306F0D]



Porém quando executo # /opt/powerview/powerview status:

Status do SMS Power View: Em execução.
Erro: [Connection refused to host: 127.0.0.1; nested exception is:
   java.net.ConnectException: Conexão recusada (Connection refused)]
   java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
   java.net.ConnectException: Conexão recusada (Connection refused)
   at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
   at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)
   at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
   at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
   at sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:116)
   at br.com.sms.powerview.servidor.ServidorCliente.getServerByRmi(ServidorCliente.java:71)
   at br.com.sms.powerview.servidor.ServidorCliente.getServidor(ServidorCliente.java:41)
   at br.com.sms.powerview.script.Script.main(Script.java:13)

No navegado consigo acessar a interface http://192.168.x.200:8080/s2/checaSenha.action

Mas não consigo fazer login. Nem com senha em branco nem com qualquer outra passada como dica neste tópico.

Algum dica?

Obrigado.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: carloslessa em 03 de Setembro de 2022, 10:42
Para o problema de senha da interface web, basta substituir o arquivo banco_de_dados.yap por um de outra instalação que esteja funcionando. No meu caso, eu utilizei um que já tenho salvo da versão 2.16.00.13.

Simplesmente copie o arquivo banco_de_dados.yap de outra instalação e funcionou!

Sem mensagens de erro java ao verificar o status:

# /opt/powerview/powerview status

Status do SMS Power View: Em execução.
Status com o Nobreak: Conectado


E consegui login na interface.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: oalemao em 03 de Outubro de 2022, 15:02
Alguém poderia disponibilizar a libhidapi para raspberry pi? os links indicados estão todos off



Pessoal, sou mais um proprietário deste nobreak, infelizmente. Estou tentando rodar em um Raspberry Pi 3, fiz todos os procedimentos do tópico, ao executar ele mostra o seguinte erro:

Procura por nobreak: [DAKER]

E não inicia, alguém já passou por isso?

Vlw!

EDIT: Atualizando !

Consegui funcionar utilizando a libhidapi do seguinte site:

https://blogs.oracle.com/jtc/usb-device-access-for-java-se-and-osgi

Baixei o correspondente a armv6, tudo ok agora!
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 08 de Outubro de 2022, 21:26
Alguém poderia disponibilizar a libhidapi para raspberry pi? os links indicados estão todos off

Como não tenho e nunca tive Raspberry Pi, não faço ideia de qual seja o arquivo mais adequado para seu dispositivo, mas dê uma olhada no projeto GIT intitulado HID4JAVA (https://github.com/gary-rowe/hid4java). Acredito que uma das bibliotecas disponíveis lá possa funcionar com seu Raspberry Pi. Eu começaria testando estes:

Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: oalemao em 13 de Outubro de 2022, 14:25
Muito obrigado pela resposta Sampayu!
Em todo caso, ainda não consegui ter sucesso na instalação.
Mesmo substituindo os libhidapi, quando inicializo o app com o modo gráfico, aparece a tela inicial e fica carregado infinitamente. No terminal, ele fica na "Procura por nobreak: [SMS]" e outros, e daí não passa.

Alguma idéia? Estou usando um raspberry pi4, com sistems Raspberry Pi OS padrão (32).
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 14 de Outubro de 2022, 00:09
Muito obrigado pela resposta Sampayu!
Em todo caso, ainda não consegui ter sucesso na instalação.
Mesmo substituindo os libhidapi, quando inicializo o app com o modo gráfico, aparece a tela inicial e fica carregado infinitamente. No terminal, ele fica na "Procura por nobreak: [SMS]" e outros, e daí não passa.

Alguma idéia? Estou usando um raspberry pi4, com sistems Raspberry Pi OS padrão (32).

Infelizmente, não. :( Há várias causas possíveis para esse problema e eu não tenho como investigar nenhuma delas, já que não possuo um dispositivo Raspberry Pi.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: zan2 em 07 de Novembro de 2022, 22:52
Boa noite, primeiro queria agradecer a dedicação e disponibilidade sua Sampayu, ter investigado, mantido e respondido esse Forum por tanto tempo é realmente um feito notavel.

Estou tentando configurar o Powerview no Ubuntu 22.04.1, tive alguns problemas mas que acompanhando as resposta consegui solucionar, o principal deles foi a questão da tela com a senha desconhecida, mas após alterar a varíavel DISPLAY para :1 esse problema deixou de acontecer e quando executei o Powerview apareceu a janela para colocar o nome como esperado.
Porem estou com um problema que não encontrei aqui ainda, após executar ele o ícone aparece com o S Azul (apesar de estar fora de posição, imagino que seja pela disposição da minha TrayBar) com foi indicado na instalação, porem ao tentar acessar o dashboard pelo link http://localhost:8080/sms/ ou pelo meu-ip:8080/sms/ ele fica carregando eternamente e nunca abre, alguem já passou por algo parecido?

-- Atualização

Investigando mais identifiquei a porta 8080 possui alguma aplicação rodando nela na minha maquina, alterei a env httoPort "webserver.properties" dentro "powerview/webserver/libs" para outra, 9090 e com isso consegui abri o dashboard. ;D

Algumas informações e prints:
Versão JAVA
Código: [Selecionar]
java -version
java version "1.8.0_351"

Terminal ao executar o Powerview e status após a execução
Código: [Selecionar]
sudo /opt/powerview/powerview start -g
Iniciando como TrayIcon...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.

-----

sudo /opt/powerview/powerview status
Status do SMS Power View: Em execução.
Status com o Nobreak: Conectado


Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 08 de Novembro de 2022, 11:09
Boa noite, primeiro queria agradecer a dedicação e disponibilidade sua Sampayu, ter investigado, mantido e respondido esse Forum por tanto tempo é realmente um feito notavel.

Obrigado.  :)

-- Atualização
Investigando mais identifiquei a porta 8080 possui alguma aplicação rodando nela na minha maquina, alterei a env httoPort "webserver.properties" dentro "powerview/webserver/libs" para outra, 9090 e com isso consegui abri o dashboard. ;D

Bacana que o tutorial + os comentários conseguiram juntos lhe ajudar a resolver esse problema.  :) Eu nunca passei por esse problema de o server não carregar o dashboard por conta da porta 8080 já estar ocupada por outra aplicação web, mas legal a "sacada" que você teve de tentar descobrir se essa configuração poderia ser modificada em algum arquivo do SMS Power View, e daí alterar o arquivo. Parabéns.  8)

Para quem esteja lendo este comentário, se o SMS Power View foi instalado em /opt/sms, então o caminho completo para o arquivo é /opt/sms/webserver/libs/webserver.properties e a linha modificada foi a httpPort=8080.  :)
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: carlosakibar em 16 de Janeiro de 2023, 19:55
Vi que é uma luta fazer funcionar esse software com raspberry 3/3B/4 seja 32 bits ou 64 bits.  Apesar de seguir todas as recomendações descritas neste tutorial ...só consigo fazer funcionar no Windows via cabo USB.

Acredito por envolver o driver do dispositivo ou algum erro no proprio software powerview no raspberry. 
Tentei tanto no raspberry OS 32, 64 bits  e com o ubuntu server 22.10 32/64

Por favor aqueles no qual o powerview ultimo funcionou postem o retorno do comando  ( lsusb) que mostra qual é o chip responsavel pela comunicacao serial
meu chip da comunicacao serial é o:
Bus 001 Device 009: ID 067b:23a3 Prolific Technology, Inc

o driver usbserial foi carregado  e atachado a /dev/ttyUSB0
o software funciona abrea porta mas nao le os dados ...
consigo ver a pagina no localhost:8080 mas nada dos dados
no modo debug fica tentando ler eternamente

seria interessante também algum lugar onde as bibliotecas estivessem disponiveis, pois os links estao na maioria quebrados.

fiz todo o processo porém nada de ler os dados no raspberry, somente funciona com o mesmo cabo no windows. Alguma dica??? Obrigado.


Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: carlosakibar em 23 de Janeiro de 2023, 19:02
Problema na porta USB do raspberry. Troquei o cabo para outra porta USB do raspberry e funcionou. 
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: gpompeo em 08 de Fevereiro de 2023, 20:06
Olá,

Eu já tentei seguir os tutoriais e todas as correções que encontrei mas não consigo iniciar de fato o SPV.

No momento este é o erro que estou encontrado o seguinte erro:

Código: [Selecionar]
pi@raspberrypi:/opt $ sudo /opt/powerview/powerview start --no-gui -d
Iniciando como Serviço...
Criando link simbolico para USB-Serial.
SMS Power View iniciado com sucesso.
pi@raspberrypi:/opt $ Java HotSpot(TM) 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.
Feb  08 19:55:25 [                                 common.Constantes]: [      main - INFO ] PATH SISTEMA.PROPERTIES: /sistema.properties
Feb  08 19:55:25 [                              servico.SMSysServico]: [      main - DEBUG] Inicializando o Powerview: [V4.07.00.07]
Feb  08 19:55:25 [                   comunicacao.FactoryPortaSerials]: [      main - DEBUG] Criou Lista!
Feb  08 19:55:26 [                                              root]: [      main - ERROR] Exception in thread "main"
Feb  08 19:55:26 [                                              root]: [      main - ERROR] java.lang.UnsatisfiedLinkError: 'long jssc.SerialNativeInterface.openPort(java.lang.String, boolean)'

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at jssc.SerialNativeInterface.openPort(Native Method)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at jssc.SerialPortList.getUnixBasedPortNames(SerialPortList.java:333)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at jssc.SerialPortList.getPortNames(SerialPortList.java:296)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at jssc.SerialPortList.getPortNames(SerialPortList.java:178)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.alerta24h.comunicacao.FactoryPortaSerials.getListaPortas(FactoryPortaSerials.java:21)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.alerta24h.comunicacao.GerenteComunicacao.getListaPortas(GerenteComunicacao.java:48)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.alerta24h.comunicacao.GerenteComunicacao.getChipset(GerenteComunicacao.java:54)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipoUsbByChipset(VerificaTipoNobreak.java:67)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.sms.powerview.factory.VerificaTipoNobreak.identificarTipo(VerificaTipoNobreak.java:51)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.sms.powerview.factory.SMSysFactory.verificaNobreak(SMSysFactory.java:75)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.sms.powerview.factory.SMSysFactory.createNobreak(SMSysFactory.java:88)

Feb  08 19:55:26 [                                              root]: [      main - ERROR]     at br.com.sms.powerview.servico.SMSysServico.main(SMSysServico.java:61)

Pelo que procurei, não vi este erro em nenhum outro post.

Alguma ideia de como posso corrigir?

Estou usando:
Raspberry Pi OS 64-bits
Raspberry Pi 4
jdk-19.0.2 (mas já tentei openJDK 11)
SMS PowerView 4 (mas entei o 3 também)

Grato!
G.
Título: Re:[Tutorial] Instalação do SMS Power View no Linux
Enviado por: Sampayu em 08 de Fevereiro de 2023, 21:27
Pessoal, só para esclarecer: eu sou notificado a respeito de todas as mensagens que são enviadas aqui para este tópico, por isto fico sabendo dessas panes que ocorrem com os Raspberry Pi. No entanto, como não possuo nenhum dispositivo Raspberry Pi, não tenho como fazer nenhum tipo de teste, investigação etc., e daí fico impossibilitado de tentar ajudar e (talvez, quem sabe) conseguir encontrar alguma solução ou paliativo.

O que posso comentar a respeito desse erro é que a palavra jssc ("biblioteca de comunicação serial via Java") refere-se a uma incompatibilidade entre muitas que existem entre o Raspberry Pi e o SPV. Essa especificamente envolve a arquitetura da JVM (Máquina VIrtual Java) usada pelo Raspberry Pi e a JVM requerida pelo SPV (utilitário SMS Power View). Isso porque o pessoal da Legrand, ao desenvolver o SPV, desenvolveu-o pensando apenas em computadores que usem processadores de arquitetura Intel X86 e X86_64, i.e. não levou em consideração que existem dispositivos que usam processadores de arquitetura ARM - como é o caso dos Raspberry Pi.

Uma das consequências disso é que algumas bibliotecas usadas pelo SPV são da JVM específica para processadores de arquitetura Intel X86 e X86_64: não funcionam quando o processador é ARM, e portanto não funcionam em Raspberry Pi.

Essa biblioteca jssc, por exemplo, é uma biblioteca Java de arquitetura x86 e o arquivo dela fica em /opt/sms/libs/jssc-2.8.0.jar (isso para quem instalou o SPV conforme o tutorial deste tópico e, por isto, colocou o SPV em /opt). Isso pode ser verificado por exemplo executando-se um comando como este:

Código: [Selecionar]
tail /opt/sms/libs/jssc*.jar |awk -F"/" '{print $3}'
...que mostra que a biblioteca jssc usada pelo SPV foi escrita para a arquitetura Intel X86 (de 32 bits e de 64 bits).

Um pacote com o libjssc-java (https://debian.pkgs.org/10/debian-main-arm64/libjssc-java_2.8.0-1_arm64.deb.html), por exemplo, talvez seja útil para instalar a versão ARM64 dessa biblioteca em um local como /usr/share/java/jssc-2.8.0.jar, de onde então pode-se criar um link simbólico após se fazer backup da biblioteca original do SPV. Exemplo:

Fazer backup da biblioteca original:
Código: [Selecionar]
sudo mv /opt/sms/libs/jssc-2.8.0.jar /opt/sms/libs/jssc-2.8.0.jar.bkpCriar um link simbólico com o mesmo nome e caminho da biblioteca original, porém apontando para a biblioteca que foi instalada:
Código: [Selecionar]
sudo ln -s /usr/share/java/jssc-2.8.0.jar /opt/sms/libs/jssc-2.8.0.jar
Isso fará /opt/sms/libs/jssc-2.8.0.jar apontar para /usr/share/java/jssc-2.8.0.jar (que será a biblioteca em versão para processador de arquitetura ARM64).

Se isso não funcionar, outra tentativa que pode ser feita (mas que dificilmente vai funcionar) é baixar a versão multiplataforma (https://fazecast.github.io/jSerialComm/binaries/jSerialComm-2.9.3.jar) da biblioteca jSerialComm, salvá-la numa pasta qualquer e então recriar aquele link simbólico, fazendo o link simbólico /opt/sms/libs/jssc-2.8.0.jar apontar para o /caminho/para/o/arquivo/de/biblioteca/jSerialComm-2.9.3.jar

Mas, se eu tivesse de apostar, eu apostaria que mesmo que esse problema de incompatibilidade da biblioteca jssc seja resolvido, logo após o solucionamento o SPV passará a mostrar alguma outra mensagem de erro, relacionada a alguma outra biblioteca Java que o SPV utiliza mas não é compatível com a arquitetura de hardware do processador do Raspberry Pi.  :P

Algo que observei ao longo dos anos é que a maioria das "panes" com Raspberry Pi está relacionada à comunicação serial. Como o nobreak fornece dados em formato serial do tipo RS-232 porém o SPV está configurado para ler dados em formato serial do tipo USB (a partir de alguma porta USB do computador ao qual o nobreak está conectado), o SPV utiliza um driver "serial RS-232 para serial USB" e um monte de bibliotecas Java que fazem essa "tradução simultânea" entre os dados seriais oriundos do nobreak e os dados USB oriundos do computador, ora convertendo os dados seriais RS-232 do nobreak para o formato serial USB (para o computador "entender o que o nobreak disse"), ora fazendo o caminho inverso, i.e. convertendo os dados seriais USB do computador para o formato serial RS-232 (para o nobreak "entender o que o computador disse").

Se algum dia eu comprar um Raspberry Pi, vou passar a "alimentar" este tópico com soluções que eu acaso descubra. Mas por ora infelizmente só consigo explicar por alto o que parece estar ocorrendo e lhes desejar boa sorte nessa árdua empreitada - principalmente porque a Legrand pelo visto não parece estar preocupada em modernizar o SPV - pelo menos não o suficiente para que ele possa funcionar "nativamente" com processadores de arquitetura ARM.