segunda-feira, 27 de fevereiro de 2017

Navegador Mozilla Firefox - postagem II

Problema ao executar a aplicação (instalação nova do Sistema Operacional Linux From Scratch 7.10 - systemd edition):


XPCOMGlueLoad error for file /usr/local/bin/firefox/libxul.so:
libasound.so.2: cannot open shared object file: No such file or directory
Couldn't load XPCOM.


Solução: instalar o pacote "ALSA Library" (alsa-lib-1.1.2). Esse pacote
instala a biblioteca [/usr/lib/libasound.so.2.0.0] exigida pelo Firefox.



====================
====================



Após a instalação do pacote "ALSA Library", o problema agora é este:


XPCOMGlueLoad error for file /usr/local/bin/firefox/libxul.so:
libdbus-glib-1.so.2: cannot open shared object file: No such file or directory
Couldn't load XPCOM.


Solução: instalar o pacote "D-Bus GLib" (dbus-glib-0.106). Esse pacote
instala a biblioteca [/usr/lib/libdbus-glib-1.so.2.3.3] exigida pelo
Firefox.



====================
====================


Após a instalação do pacote "D-Bus GLib", o problema agora é este:


XPCOMGlueLoad error for file /usr/local/bin/firefox/libxul.so:
libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
Couldn't load XPCOM.

Solução: instalar o pacote "GTK+-2.24.30". Esse pacote instala a
biblioteca [/usr/lib/libgtk-x11-2.0.so.0.2400.30] exigida pelo Firefox.

Após isso, o Firefox funcionou normalmente.



Jamenson Ferreira Espindula de Almeida Melo
Usuário GNU/Linux nº 166197
https://linuxcounter.net/cert/166197.png

Impressão digital da chave:
234D 1914 4224 7C53 BD13  6855 2AE0 25C0 08A8 6180

quarta-feira, 15 de fevereiro de 2017

RPCBind

Assunto: daemon RPCBind (pacote rpcbind-0.2.3)


= = = = = = = = = =
= = = = = = = = = =

Sistema Operacional: GNU + Linux From Scratch - versão 7.10 (systemd)


Saída do comando <systemctl status rpcbind.service>:


● rpcbind.service - RPC Bind Service
   Loaded: loaded (/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled)
   Active: failed (Result: start-limit-hit) since dom 2017-02-12 10:53:19 BRT; 9min ago
  Process: 2057 ExecStart=/sbin/rpcbind -w (code=exited, status=1/FAILURE)

fev 12 10:53:19 lfs-comp02 systemd[1]: Starting RPC Bind Service...
fev 12 10:53:19 lfs-comp02 rpcbind[2057]: usage: rpcbind [-adhilswf]
fev 12 10:53:19 lfs-comp02 systemd[1]: rpcbind.service: Control process exited, code=exited status=1

fev 12 10:53:19 lfs-comp02 systemd[1]: Failed to start RPC Bind Service.
fev 12 10:53:19 lfs-comp02 systemd[1]: rpcbind.service: Unit entered failed state.
fev 12 10:53:19 lfs-comp02 systemd[1]: rpcbind.service: Failed with result 'exit-code'.
fev 12 10:53:19 lfs-comp02 systemd[1]: rpcbind.service: Start request repeated too quickly.
fev 12 10:53:19 lfs-comp02 systemd[1]: Failed to start RPC Bind Service.
fev 12 10:53:19 lfs-comp02 systemd[1]: rpcbind.service: Failed with result 'start-limit-hit'.


= = = = = = = = = =
= = = = = = = = = =


Obs.: o daemon foi recompilado acrescentando a opção <--enable-warmstarts> nas opções de configuração. Eis todas as opções de  configuração aplicadas:

./configure --prefix=/usr  \
            --bindir=/sbin \
            --with-rpcuser=rpc \
   --enable-warmstarts


Obs.: o daemon foi executado manualmente com o comando <systemctl start rpcbind.service>.


Obs.: o daemon foi habilitado para execução automática; comando <systemctl enable rpcbind.service>.


= = = = = = = = = =
= = = = = = = = = =


Saída do comando <systemctl status rpcbind.service>:


● rpcbind.service - RPC Bind Service
   Loaded: loaded (/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled)
   Active: active (running) since seg 2017-02-13 05:16:24 BRT; 9min ago
 Main PID: 2136 (rpcbind)
   CGroup: /system.slice/rpcbind.service
           └─2136 /sbin/rpcbind -w

fev 13 05:16:23 lfs-comp02 systemd[1]: Starting RPC Bind Service...
fev 13 05:16:24 lfs-comp02 systemd[1]: Started RPC Bind Service.


Obs.: transcrito da página de manual "rpcbind(8)":

-w      Cause rpcbind to do a "warm start" by read a state file when rpcbind starts up. The state file is created when rpcbind terminates.

Tradução livre: -w: Faz com que rpcbind faça um "início quente" pela leitura de um arquivo de estado quando rpcbind inicializa. O arquivo de estado é criado quando rpcbind finaliza [sua execução].


Entretanto, o binário foi configurado inicialmente sem habilitar a opção "warm start" nas opções de configuração <--enable-warmstarts>. Conclui-se que o livro Beyond Linux From Scratch (BLFS) - versão 7.10 (systemd) contém um defeito de falta de informação.


= = = = = = = = = =
= = = = = = = = = =


Saída do comando <systemctl status rpcbind.socket>:


● rpcbind.socket - RPC Bind Server Activation Socket
   Loaded: loaded (/lib/systemd/system/rpcbind.socket; disabled; vendor preset: enabled)
   Active: inactive (dead)
   Listen: /var/run/rpcbind.sock (Stream)


Saída do comando <systemctl status rpcbind.service>:


● rpcbind.service - RPC Bind Service
   Loaded: loaded (/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled)
   Active: inactive (dead)


Obs.: as duas Unidades systemd acima referidas estão ligadas intimamente. Observou-se que, quando se solicita para habilitar e (ou) desabilitar o "rpcbind.service", é o rpcbind.socket" que é afetado, removendo ou criando a ligação simbólica. Talvez essa seja a explicação para que a palavra "indirect" sempre apareça na consulta à situação de "rpcbind.service". Por sua vez, na Unidade "rpcbind.socket" apareçe a palavra "disabled" ou "enabled", como é de se esperar.


Obs.: observou-se que, ao se iniciar a Unidade "rpcbind.service", a Unidade "rpcbind.socket" também é inicializada. Porém o contrário não ocorreu, ou seja, inicializar a Unidade "rpcbind.socket" não inicializa a Unidade "rpcbind.service". Isso demonstra claramente a íntima ligação entre as duas Unidades.


Obs.: observou-se que, ao se parar a Unidade "rpcbind.socket", a Unidade "rpcbind.service" também é parada. Porém, o contrário não ocorreu, ou seja, parar a Unidade "rpcbind.service" não para a Unidade "rpcbind.socket", e ainda é lançada uma mensagem de alerta:

Warning: Stopping rpcbind.service, but it can still be activated by:
  rpcbind.socket


= = = = = = = = = =
= = = = = = = = = =


Saída do comando </sbin/rpcinfo>:

rpcinfo: can't contact rpcbind: RPC: Remote system error - Connection refused

Obs.: isso ocorreu pois o Servidor RPC ("rpcbind.socket") estava fora de execução. Para que haja retorno de informação, é condição necessária que, pelo menos, o Servidor RPC ("rpcbind.socket") esteja em execução.

Jamenson Ferreira Espindula de Almeida Melo
Usuário GNU/Linux nº 166197
https://linuxcounter.net/cert/166197.png

Impressão digital da chave:
234D 1914 4224 7C53 BD13  6855 2AE0 25C0 08A8 6180

sábado, 4 de fevereiro de 2017

Sincronizador de arquivos rclone



Jaboatão dos Guararapes, PE, sábado, 04 de fevereiro de 2017.


= = = = = = = = = =
= = = = = = = = = =


Assunto: aplicativo rclone


= = = = = = = = = =
= = = = = = = = = =


O que é: programa em linha de comando para sincronização de arquivos e diretórios para (e de) os seguintes armazenamentos na nuvem:

Google Drive
Amazon S3
Openstack Swift / Rackspace cloud files / Memset Memstore
Dropbox
Google Cloud Storage
Amazon Drive
Microsoft One Drive
Hubic
Backblaze B2
Yandex Disk
The local filesystem

Alguns diferenciais (existem outros): promete sincronizar com o Microsoft OneDrive; promete preservar as marcas temporais dos arquivos sincronizados. Se o aplicativo cumpre a promessa, eu não sei informar, pois ainda não o testei. Eu fiquei sabendo do aplicativo rclone na data de ontem (03 de fevereiro de 2017) e estou no início dos estudos para tentar compreender como funciona.


Fonte: Rclone. Disponível em: <http://rclone.org/>. Acesso em: 04 fev. 2017. 14:17:50.


= = = = = = = = = =
= = = = = = = = = =


Existem dois modos de se instalar o rclone na máquina: o modo mais trabalhoso e o modo menos trabalhoso. O modo menos trabalhoso é baixando e instalando binários compilados previamente em <http://rclone.org/downloads/>. O modo mais trabalhoso é construindo o binário a partir do código fonte.

O aplicativo rclone foi desenvolvido utilizando uma linguagem de programação chamada "Go". Para se conseguir compilar o código fonte do aplicativo rclone, deve-se construir um "front end" do compilador Gnu C Compiler (GCC) chamado "gccgo". O gccgo é o compilador que conseguirá interpretar e compilar o código fonte do aplicativo rclone, código esse escrito na linguagem de programação "Go". No script de configuração para a instalação do do GCC, deve-se passar a seguinte opção:


--enable-languages=c,c++,go


Fonte: The Go Programming Language. Disponível em: <https://golang.org/doc/install/gccgo>. Acesso em: 04 fev. 2017. 14:25:36.


Jamenson Ferreira Espindula de Almeida Melo
Usuário GNU/Linux nº 166197
https://linuxcounter.net/cert/166197.png

Impressão digital da chave:
234D 1914 4224 7C53 BD13  6855 2AE0 25C0 08A8 6180