Imprimindo pelo Android via USB – Impressoras HP


Olá, nesse post vou ensinar de uma forma simples imprimir pelo smartphone via USB, e você apenas precisará de:

Um adaptador OTG (on the go). O cabo USB OTG inclui uma porta USB fêmea em uma extremidade e um conector micro USB ou USB C na outra;

Um dispositivo com sistema operacional Android OS 4.0 (KitKat) ou posterior que oferece suporte a USB OTG, você pode verificar baixando esse app;

Instalar o driver da HP, e conectar-los. Mas atenção: alguns modelos não são compatíveis, como:

  • Impressora HP Color LaserJet Pro MFP M176n
  • Impressora multifuncional HP Color LaserJet Pro MFP M177fw
  • Multifuncional HP HotSpot LaserJet Pro M1218nfs
  • Impressora HP LaserJet 1020
  • Impressora HP LaserJet 1020 Plus
  • Impressora HP LaserJet CP1025 Color
  • Impressora HP LaserJet CP1025nw Color
  • Multifuncional HP LaserJet M1005
  • Multifuncional HP LaserJet M1319f
  • Impressora HP LaserJet P2035
  • Impressora HP LaserJet Pro M12a
  • Impressora HP LaserJet Pro M12w
  • Multifuncional HP LaserJet Pro M1132
  • Multifuncional HP LaserJet Pro M1132s
  • Multifuncional HP LaserJet Pro M1136
  • Multifuncional HP LaserJet Pro M1139
  • Impressora HP LaserJet Pro M1213nf
  • Impressora HP LaserJet Pro M1216nfh
  • Impressora HP LaserJet Pro M1219nfh
  • Impressora HP LaserJet Pro MFP M25a
  • Impressora HP LaserJet Pro MFP M25nw
  • Impressora HP LaserJet Pro MFP M125a
  • Impressora HP LaserJet Pro MFP M125nw
  • Impressora HP LaserJet Pro MFP M125r
  • Impressora HP LaserJet Pro MFP M125ra
  • Impressora HP LaserJet Pro MFP M125rnw
  • Impressora HP LaserJet Pro MFP M126a
  • Impressora HP LaserJet Pro MFP M126nw
  • Impressora HP LaserJet Pro MFP M127fn
  • Impressora HP LaserJet Pro MFP M127fs
  • Impressora HP LaserJet Pro MFP M127fw
  • Impressora HP LaserJet Pro MFP M128fn
  • Impressora HP LaserJet Pro MFP M128fp
  • Impressora HP LaserJet Pro MFP M128fw
  • Impressora HP LaserJet Pro P1102
  • Impressora HP LaserJet Pro P1102s
  • Impressora HP LaserJet Pro P1102w
  • Impressora HP LaserJet Pro P1106
  • Impressora HP LaserJet Pro P1108
  • Impressora HP LaserJet Pro P1109
  • Impressora HP LaserJet Pro P1109w
  • Impressora HP LaserJet Pro P1566
  • Impressora HP LaserJet Pro P1606dn
  • Impressora portátil HP OfficeJet 100 – L411b
  • Impressora portátil HP OfficeJet 100 – L411a
  • Multifuncional portátil HP OfficeJet 150 – L511
  • Multifuncional HP OfficeJet Pro L7550
  • Multifuncional HP OfficeJet Pro L7555
  • Multifuncional HP OfficeJet Pro L7580
  • Multifuncional HP OfficeJet Pro L7590

Lembrando que você pode conectar outros periféricos via USB ao smartphone, como teclado e mouse, pen-drive e HD externo.

Espero ter ajudado e até mais!

Anunciado nova geração de placas de vídeo da Nvidia


Anunciado hoje, dia 09 de setembro, as novas placas de vídeo série 3000, da Nvidia, as RTX 3090, RTX 3080 e RTX 3070, em um evento online.

A nova RTX 3080 traz um grande salto de performance, tendo o dobro de desempenho pelo mesmo preço da topo de linha da geração anterior, a RTX 2080, sendo lançada no dia 17 de setembro por US$ 699. Já a RTX 3090 será lançada dia 24 de setembro por US$ 1499, e a 3070 somente em outubro, sem data exata, por US$ 499.

As memórias terão uma atualização,  tendo módulos de memória gddr6x, sendo a RTX 3090 tendo 24 GB, a 3080 10 GB e a 3070 8 GB de memória.

GeForce-RTX-30-Series_Crop_678x452

Netflix lança versão com filmes e séries grátis


Nessa segunda, dia 31/08, a Netflix lançou uma versão com filmes e séries que podem ser assistidas gratuitamente, sem nenhuma necessidade de cadastro. Os filmes serão mudados periodicamente. Somente o primeiro episódio da série é disponibilidade.

O site pode ser acessado pelo link: https://www.netflix.com/br/watch-free

Centos 7 PostgresSQL – Instale o banco de dados e use uma localização diferente da padrão


Este post descreve os passos de como instalar o postgresSQL 9.6 no Centos7 alterando o local padrão de armazenamento dos dados, que por padrão é no diretório /var/lib/pgsql/<versão>/data.

Entre as possíveis razões que podem requisitar a instalação em um local diferenciados envolvem:

  • Segurança
  • Gerenciamento centralizado
  • Performance

O processo basicamente consiste em alterar a variável PGDATA utilizada pelo gerenciador de banco de dados Postgres.

Passo 1) Instalação do repositório do Postgres 9.6

yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Passo 2) Instalação dos pacotes servidor e cliente

yum install postgresql96 postgresql96-server

Passo 3) Criação dos diretórios onde os dados do PostgreSQL serão armazenados, no meu caso será no diretório /data/postgresql

mkdir -p /data/postgresql

Passo 4) Conceder as permissões adequadas para o usuário postgres que é criado automaticamente durante o processo de instalação.

chown -R postgres:postgres /data/postgresql/

Passo 5) Inicialização da base de dados

su - postgres -c '/usr/pgsql-9.6/bin/initdb -D /data/postgresql'

Passo 6) Edite o arquivo /usr/lib/systemd/system/postgresql-9.6.service para alterar a variável PGDATA

vi /usr/lib/systemd/system/postgresql-9.6.service
# Location of database directory
# Environment=PGDATA=/var/lib/pgsql/9.6/data/
Environment=PGDATA=/data/postgresql/data/

Para salvar o arquivo pressione ESC + ZZ

Passo 7) Reconfigure as bases

/usr/pgsql-9.6/bin/postgresql96-setup initdb

Passo 8) Inicie o serviço

systemctl start postgresql-9.6

Opcionalmente adicione o serviço para iniciar após o boot do sistema

systemctl enable postgresql-9.6

Até a próxima

Solucionando o erro: undefined symbol – xcb_wait_for_reply64


Prezados, faz algum tempo que ao executar o Genymotion no openSUSE Leap 42.1 a seguinte mensagem de erro era exibida:

genymotion/genymotion: symbol lookup error: /usr/lib64/libX11.so.6: undefined symbol: xcb_wait_for_reply64

Depois de algumas horas de pesquisas concluí que para solucionar este problema é simplesmente apagar o arquivo: libxcb.so.1, pois o mesmo entra em conflito com a mesma biblioteca instalada pelo sistema operacional.

 

Thread no StackOverflow

Como desabilitar o automount no GNOME


Em algumas situações pode-se ter a necessidade de desabilitar a montagem automática de mídias removíveis, tais como pendrivers, HDs externos ou até mesmo unidades de CD/DVD-ROM no seu computador/servidor.

A principal motivação para desabilitar esta funcionalidade é a segurança da informação, ou para evitar que algum usuário abra esses dispositivos automaticamente alterando ou até mesmo sem o conhecimento instalar algum tipo de malware no computador que esteja utilizando.

Para desabilitar a montagem automática em máquinas Linux com o GNOME, podemos fazê-lo das seguintes formas:

Desabilitar por usuário

Desabilitar o automount graficamente

Caso possua o DConf-Editor instalado, você pode abrir a opção org > gnome > desktop > media-handling  e desmarcar as opções automount e automount-open no lado direito da janela.

Desabilitar o automount por linha de comando

Para desabilitar o automount por linha de comando, siga os seguintes passos:

  1. Abra um novo terminal
  2. Autentique com o usuário root utilizando o comando su –  e informando a senha (alternativamente o comando sudo su também funciona)
  3. Informe os seguintes comandos
  4. 
    # gsettings set org.gnome.desktop.media-handling automount false
    # gsettings set org.gnome.desktop.media-handling automount-open false
    

    Reinicie o serviço GDM, nota, antes de executar esse comando, salve todos seus arquivos, pois o mesmo efetuará o logout do seu usuário

    # systemctl restart gdm.service

Ao autenticar novamente, o automount estará desabilitado.

Desabilitar para todos os usuários

Para desabilitar para todos os usuários, os seguintes passos deverão ser seguidos:

  1. Abra um novo terminal
  2. Autentique com o usuário root utilizando o comando su –  e informando a senha (alternativamente o comando sudo su também funciona)
  3. Crie o arquivo /etc/dconf/db/local.d/00-media-automount com o seguinte conteúdo:
  4. [org/gnome/desktop/media-handling]
    automount=false
    automount-open=false
  5. Salve o mesmo e digite o comando como root
  6. dconf update

Feito isso, no próximo login de cada usuário o automount estará desabilitado.

Como instalar o CyanogenMod no Moto G


O artigo explica como instalar o CyanogenMod, uma versão não-oficial do Android (mais atualizada que a versão de fábrica) no aparelho Moto G. O procedimento descrito é compatível com os seguintes versões de aparelhos: XT1031, XT1032, XT1033 e XT1034 e também os de 2ª geração.

Perco a garantia do aparelho ao instalar o Cyanogenmod?

Sim, pois o processo exige o desbloqueio do aparelho.

Quais os riscos existentes ao instalar o Cyanogenmod?

Trata-se de um processo que pode danificar o aparelho e deixá-lo “bricado”, mas só se você fizer algo realmente estranho e diferente do procedimento. Além disso, você perderá todos os dados do aparelho, seus arquivos pessoais, músicas etc. O aparelho será zerado. Fazer backup é importante.

O processo é reversível?

Sim, mas não será abordado neste artigo.

Se algo der errado durante o procedimento, quem eu devo processar ou xingar?

Ninguém. O risco é todo seu. Não há garantias por parte da equipe do CyanogenMod e nem por parte do autor desse artigo.

Nota de esclarecimento do Cyanogenmod:

“Modifying or replacing your device’s software may void your device’s warranty, lead to data loss, hair loss, financial loss, privacy loss, security breaches, or other damage, and therefore must be done entirely at your own risk. No one affiliated with the CyanogenMod project is responsible for your actions. Good luck.”

Tradução livre:

“Modificar ou substituir o software do seu dispositivo pode anular a garantia do dispositivo, levar à perda de dados, perda de cabelo, perda financeira, perda de privacidade, violações de segurança ou outros danos e, portanto, deve ser feito inteiramente por sua conta e risco. Ninguém afiliado com o projeto CyanogenMod é responsável por suas ações. Boa sorte.”

Este artigo foi feito usando:

  • Moto G 2013 (1ª geração)
  • Ubuntu 15.04

E terminou com a instalação do Android 5.1.1 (CM 12.1).

Resumo do procedimento para instalar o CyanogenMod:

  1. Desbloquear o bootloader;
  2. Instalar programa de “recovery” usando o fastboot;
  3. Instalar do CyanogenMod a partir do “recovery”.

Continue lendo “Como instalar o CyanogenMod no Moto G”

Transformar imagens coloridas em P&B com Python


Olá,

Neste post será abordado como converter imagens PNG em JPEG, e também transformar as imagens coloridas em escala de cinza, ou seja, em preto-e-branco.

Com uma ou poucas imagens, abrir programas gráficos como o GIMP ou Adobe Photoshop, não seria tão trabalhoso abrir uma a uma, alterar o esquema de cores e alterar o formato dos arquivos conforme necessidade. Mas quando são centenas e até milhares de imagens, este processo manual, além de demorado, se torna cansativo.

Para contornar o problema acima descrito, desenvolvi um pequeno script em Python que converte as imagens PNG para JPEG, e também converte as imagens para P&B.

Sem mais delongas, segue o pequeno script:

Download

Código

__author__ = "elexsandro"
__date__ = "$31/12/2014 12:59:21$"

from PIL import Image
import glob, os

def convertToGrayScale(path, grayfilename):
    try:
        # abre a imagem na escala de cinza
        im = Image.open(path).convert("L")
        # salva a imagem
        print 'Salvando a imagem:', grayfilename
        im.save(grayfilename)
    except:
        print 'Erro ao converter a imagem'

# Modulo principal
if __name__ == "__main__":
    # Armazena o caminho informado na variavel d
    d = raw_input('Informe o diretorio de imagens:')
    
    if not os.path.exists(d):
        raise Exception('O diretorio informado nao existe')
        
    # 'Navega' ao diretorio informado
    os.chdir(d)
    # os.path.abspath(os.curdir) tambem retorna o diretorio corrente
    print 'Diretorio corrente:', os.getcwd()

    print 'Convertendo as imagens PNG para JPEG'
    for fn in glob.glob('*.png'):
            print 'Convertendo %s para PNG', fn
            # obtem o nome do arquivo sem a extensao
            f = glob.os.path.splittext(fn)[0]
            # Abre a imagem
            imagem = Image.open(fn)

            # obtem o nome do arquivo sem a extensao
            f = glob.os.path.splittext(fn)[0]
            imagem.save(f + '.png', 'PNG')
            print f +'.png salvo com sucesso.'

    # Cria o diretorio para armazenar as imagens P&B
    os.mkdir('GrayImages')
    
    # Convertendo todas as imagens JPEG para escalas de cinza
    for fn in glob.glob('*.jpg'):
            print 'Processando:', fn

            # obtem o nome do arquivo sem a extensao
            f = glob.os.path.splitext(fn)[0]

            # Converte a imagem escala de cinza e salva no diretorio GrayImages
            convertToGrayScale(fn, 'GrayImages/' + f + '_gray.jpg')

    print 'Concluido'

Até a próxima.