Arquivos de Categoria: informática

Gravando imagem ISO pela linha de comando com status de progresso e ETA

Como colocar status de progresso no comando DD if=X e of=Y

Nesse post rapidamente quero apresentar uma dica para gravar uma imagem ISO em uma partição de um HD, ou mesmo em um pendrive, utilizando o dd, pela linha de comando, e com barra de progresso. Basta ter instalado o pv, para calcular o progresso. Se não tiver instalado, abra o terminal e digite:

$ sudo apt-get install pv

Pronto. Instalado o pv, basta dispor o comando da seguinte forma:

$ sudo if=/home/usuario/arquivodeorigem.iso | pv /home/usuario/arquivodeorigem.iso | of=/dev/sdX

Substituindo, evidentemente, as origens e destinos conforme necessário. Nesse caso, /home/usuario/arquivodeorigem.iso é a origem, e /dev/sdX é o destino. Na prática, o destino deve ficar algo como /dev/sdb2 ou /dev/sdb4 ou /dev/sdc2 e assim por diante. Verifique exatamente qual a partição correspondente ao dispositivo de destino que você quer gravar a imagem.

Era isso!

Novo site

Este post pretende ser o último por aqui, todo o material daqui vai para o novo site no domínio http://jetersilveira.com.br. Saudações!

Install Microsoft Office 2010 inside Ubuntu 13.10 ou 14.04 with PlayOnLinux

Hello! Yeah, Ubuntu is awesome, but… many people still does not leave Windows by the apps that are very good. The Office package by Microsoft, let’s be honest, is one of the few good things that Microsoft has produced… hehe.  I do plenty of academic papers and other documents, so I’m conscious that Microsoft Office has much more (or “easier”) tools for edition than LibreOffice (OpenOffice). However, do I have to use Windows for it?… 😦 Thanks to PlayOnLinux and to Wine, I don’t!! 🙂 So, let’s go!

PlayOnLinux is an app that makes easier the installation and use of software that were made for Windows in Linux. Wine is a layer of compatibility that allows us to execute Windows apps on Linux: it’s not an emulator because it does not simulate the Windows internal logic, but translates API calls from Windows, what make it very efficient. PlayOnLinux uses Wine, of course, but POL simplifies the installation: for example, in order to install MS Office there are a couple Fonts needed and a dll file, which POL does automatically.

Let’s see. First, you ought to install wine and playonlinux, pretty easy, through command line:

$ sudo apt-get install wine playonlinux

If your machine and your system are both 64 bits, as my case, you’re gonna have to install wine 32 bits:

$ sudo apt-get install wine:i386

Be aware that you’ll need, obviously, have the installation files for MS Office (I used a torrent to download it) 32 bits, since the 64 bits will not run with wine. After that, you must execute playonlinux (it should be on the Games menu, or you can execute it from the terminal):

$ playonlinux

It will display PlayOnLinux window, see that I’ve already Office apps installed:

playonlinux

Then, you have to click over “+ Install a Program”, and the rest is intuitive: go to “Office” -> “Microsoft Office 2010”, e “Install” and it shall be all right!

playonlinux1

playonlinux2

Then you just follow the “Windows protocol” for installation: next, next, next... hehe. When you do start Office, it’s interesting to choose the option to Do not make changes (or something like it) (on the updates question). If it all follows through, you’ll have MS Office perfetcly running inside your Ubuntu Linux (in my case, even faster than original Windows installed on my laptop):

excel_start

excel_ubuntuPlayOnLinux will create shortcuts at your Desktop and at the Office menu, but that may fail (the menu creation, I have no idea why this happen). But just in case you wanna create them (the sortcuts) elsewhere, it’s good to knoe that que icons are at the “~/.PlayOnLinux/icones/fullsize/” directory – in order to use the icons, you have to add the PNG extension to the files – and the command lines to execute the apps will be like this (be careful with upper and lower case, like OneNote and Powerpoint):

$ /usr/share/playonlinux/playonlinux –run “Microsoft Excel 2010” %F

$ /usr/share/playonlinux/playonlinux –run “Microsoft OneNote 2010” %F

$ /usr/share/playonlinux/playonlinux –run “Microsoft Outlook 2010” %F

$ /usr/share/playonlinux/playonlinux –run “Microsoft Powerpoint 2010” %F

$ /usr/share/playonlinux/playonlinux –run “Microsoft Word 2010” %F

That’s it! I hope it’s inteligible, and the community don’t hate me too much.. haha. But there it is, hope it can be useful. Bye! 🙂

Installing Pronterface on Ubuntu and the error: Not a directory: ‘/usr/share/printrun/pronterface.py’

Hello, people! Installing PRONTERFACE on my machine, when I tried to run it, I got the error Not a directory: ‘/usr/share/printrun/pronterface.py’. So I’ve created my workaround 😀 I decided to write a small step-by-step to explain how to install this software through the available repository and also solve this error. Let’s go. Open a terminal, and get it done:

sudo apt-get install python python-serial python-wxgtk2.8 python-tk
sudo apt-add-repository ppa:richi-paraeasy/ppa
sudo apt-get update
sudo apt-get install pronterface skeinforge

After running these commands, you’re going to have Pronterface installed. Open the terminal again e try to execute the command “$ pronterface” (whithout the $). You’ll probably get the following error:

OSError: [Errno 20] Not a directory: ‘/usr/share/printrun/pronterface.py’

Ok. Once this happened, let’s go to the next steps. You will edit the files pronterface.py and pronsole.py. You’ll find them at the directory /usr/share/printrun/.

Open each file, as a superuser, with your favorite text editor (like Vim).

If you use gedit, as a text editor, you can execute:

sudo gedit /usr/share/printrun/pronterface.py

Inside the file, look for this line (it should be next to 24):

os.chdir(os.path.realpath(__file__))

And replace for this one:

os.chdir(os.path.realpath(‘./’))

Save and close the file. Next, open the second file:

sudo gedit /usr/share/printrun/pronsole.py

And make the same change in the same line (it should be next to 30, on this file). Then, save and close the file. You have to make this change in both pronterface.py e pronsole.py. Actually, all you are going to do is replace  __file__  for ‘./’  on these lines.

Once you’ve done that, you can run pronterface:

pronterface

If necessary, as superuser:

sudo pronterface

And happy printing!  😀

pronter

 

[RESOLVIDO] Instalando o Pronterface no Ubuntu para a RepRap e o erro Not a directory: ‘/usr/share/printrun/pronterface.py’

Salve, pessoal! Instalando o programa PRONTERFACE aqui na minha máquina, deparei com o erro Not a directory: ‘/usr/share/printrun/pronterface.py’. Criei o meu workaround 😀 Resolvi fazer um tutorialzinho para explicar como instalar esse programa através do repositório disponível e já resolver esse erro. Vamos lá. Abra um terminal e mande brasa:

sudo apt-get install python python-serial python-wxgtk2.8 python-tk
sudo apt-add-repository ppa:richi-paraeasy/ppa
sudo apt-get update
sudo apt-get install pronterface skeinforge

Depois de executar esses comandos, você vai ter o pronterface instalado. Abra um terminal e tente executar o comando “$ pronterface”. Você provavelmente vai receber o seguinte erro como resposta:

OSError: [Errno 20] Not a directory: ‘/usr/share/printrun/pronterface.py’

Certo. Verificado que está acontecendo este erro, faça o seguinte. Você vai precisar editar os arquivos pronterface.py e pronsole.py. Você irá encontrá-los no diretório /usr/share/printrun/

Abra um arquivo de cada vez, com permissões de superusuário, em seu editor de textos favorito (eu uso o Vim).

Se você usar gedit, como editor de texto, pode executar:

sudo gedit /usr/share/printrun/pronterface.py

Dentro do arquivo, procure a seguinte linha (deve estar próxima à linha 24):

os.chdir(os.path.realpath(__file__))

E substitua por essa outra:

os.chdir(os.path.realpath(‘./’))

Salve e feche o arquivo. Na sequência, abra o próximo:

sudo gedit /usr/share/printrun/pronsole.py

E faça a mesma modificação (deve estar próxima à linha 30). Depois, salve e feche o arquivo. Faça as mundanças na linha referida em cada um dos arquivos pronterface.py e pronsole.py. Na realidade você só vai precisar substituir  __file__  por ‘./’ nessas linhas.

Feito isto, execute o pronterface no terminal:

pronterface

Se for necessário, como superusuário:

sudo pronterface

E boas impressões! 😀

pronter

Montar um diretório remoto por FTP

Sabe aquela parada que você consegue montar um diretório remoto por SSH? O SFTP? Pois então… isso também é possível de fazer com FTP. E são inúmeras e variadíssimas as situações em que você pode precisar MONTAR o seu diretório do seu servidor em sua máquina local. Uma delas, que foi a que eu precisei, é para fazer backup dos seus arquivos de forma automatizada. Em linguagem mais simples: você vai poder acessar os arquivos do seu servidor através de um diretótio local, como se estivesse acessando arquivos dentro de sua própria máquina local. Na verdade, esse diretório local estará “apontando” para o diretório do servidor, isso é o que se chama de MONTAR um diretório.

Para quem não está familiarizado com os termos: quando você espeta um pendrive em sua USB, seu sistema provavelmente irá MONTAR automaticamente essa mídia (pendrive) em um diretório, que você poderá acessar para fazer o que bem entender. Ao término das operaçõs com o pendrive, você precisa remover com segurança ou desmontar a unidade de mídia removível (o pendrive) de seu computador, isso significa desatrelar o dispositivo USB da pasta onde foi montada a mídia. O que vamos fazer aqui agora é montar não uma mídia, um pendrive, mas um diretório que se encontra no seu servidor cujo acesso se dá única e exclusivamente por FTP (o que é bastante comum). Se você usa bastante FTP, você pode estar familiarizado com o aplicativo FileZilla, que facilita bastante esse processo. Mas montar o diretório remoto em sua máquina local é uma funcionalidade que pode ajudar (e muito) em inúmeras situações, e… não tem preço! 🙂

Vamos lá!

O grande mágico aqui é um aplicativo chamado CurlFtpFS, que vai mudar a sua vida (rs). A utilização é tão simples como o conhecidíssimo mount.

Instalação no Ubuntu

Execute para instalar:

$ sudo apt-get update && sudo apt-get install curlftpfs

Pronto! 🙂

Utilização

Primeiro você vai precisar criar um diretório local vazio onde você irá montar o diretório remoto (pode substituir ftp_remoto pelo nome que quiser:

$ sudo mkdir -p /mnt/ftp_remoto

Uma vez criado o diretório, basta montar o diretório do servidor com o seguinte comando:

$ curlftpfs IP_DO_SERVIDOR_FTP /mnt/ftp_remoto -o user=usuario:senha,allow_other

A opção allow_other, como o próprio nome diz, serve para permitir que outros usuários (além do root, que será o dono do diretório local montado) possam acessar os arquivos dentro do diretório. Caso você não tenha interesse nisso, apenas exclua essa opção:

$ curlftpfs IP_DO_SERVIDOR_FTP /mnt/ftp_remoto -o user=usuario:senha

E aproveite!! Execute um “$ ls -l /mnt/ftp_remoto” (sem as aspas e o cifrão) para ver os arquivos dentro do diretório. Para desmontar o diretório, execute o seguinte comando:

$ sudo fusermount -u /mnt/ftp_remoto

Execute um “$ls -l /mnt/ftp_remoto” (sem as aspas e o cifrão) para conferir se o diretório está novamente vazio. E feito! 🙂

 

FreeCAD – desenho técnico em 3D com LIBERDADE!!

freecad_banner

Olá, pessoal!! Quero apresentar pra vocês o FreeCAD, um software livre de modelagem 3D, desenho técnico (CAD) tridimesional! Pra você que é engenheiro, arquiteto, estudante… libertar-se de vez do SolidWorks!! 😀 O programa é novo, e tem algumas diferenças na utilização, se comparar com o SolidWorks (eu estou comparando com esse outro programa porque utilizo o desenho de peças – “part design”), até porque o FreeCAD também serve para inúmeras outras finalidades, como Arquitetura e até projeto e simulação de um NAVIO!! Isso mesmo!

Modelagem de um Jeep FreeCAD

Modelagem de um Jeep FreeCAD

Tem versões para Windows e Mac, que podem ser encontradas no site do projeto. Para instalação no Ubuntu 14.04, que já tem o FreeCAD nos repositórios oficiais, basta executar essa linha de comando:

$ sudo apt-get update && sudo apt-get install freecad freecad-doc

Se você não usa o Ubuntu ou não tem os repositórios instalados (se der erro encontrando os pacotes), você precisa adicioná-los. Faça-o com o seguinte comando:

$ sudo add-apt-repository ppa:freecad-maintainers/freecad-stable

E então instale:

$ sudo apt-get update && sudo apt-get install freecad freecad-doc

Veja abaixo em um vídeo minha peça de teste (uma extrusão simples, um fillet e o recurso “thinkness” – similar ao “Casca” do Solid):

 

Interface Web para Controle da Porta Paralela (LINUX)

Salve, pessoal! Nesse post de hoje quero compartilhar um projeto que fiz há uns oito anos atrás… rs um pouco “velho”, portanto, em termos de tecnologia. Além disso, claro, eu o estou compartilhando aqui na exata mesma versão de então (a última alteração consta de 18 de abril de 2007), existem alguns problemas nele de desempenho e certamente que hoje eu já não o faria da mesma forma, mas ele é ótimo para quem quiser se divertir um pouco com um PC e uma porta paralela. Até hoje esse sistema está disponível nos servidores do Robótica Livre, um projeto do professor Danilo César, que à época interessou-se em disponibilizar o sistema em seu site.

Importante! Leia o AVISO contido no final dessa postagem.

O sistema é web, isto é, o usuário acessa através de um navegador, uma página completamente simples, e controla o status dos bits do registrador de dados da porta paralela, onde os sinais variam de 0 a 5V (nivel lógico baixo – zero – e alto – um -, respectivamente). Seguem algumas screenshots (feio pra caramba.. haha):

lpt1

lpt2  lpt3

Mas é isso. Vamos lá!

 

Um pouco sobre porta paralela

A porta paralela possui três registradores: dados, controle e status. Desses, apenas o registrador de dados tem correspondência física nos pinos da porta paralela de todos os seus 8 bits, e pode funcionar como entrada e saída. Os outros (também são de 8 bits) têm apenas algumas correspondências, e o de controle funciona apenas como saída, e status apenas como entrada. Não vou me aprofundar nesses registradores, porque em nosso sisteminha apenas utilizamos o registrador de dados, na sua configuração padrão (como saída). Mais informações sobre a porta paralela e seus registradores você pode encontrar no site rogercom.com (esse artigo de lá foi uma base didática para mim à época, apenas fiz adaptações para usar no linux). Vou utilizar aqui algumas imagens do rogercom.com, e recomendo que você visite o site e aproveite o excelente conteúdo disponível por lá.

Esse é um esquema da pinagem do DB25:

Projeto3

Como dá pra perceber, os pinos de 2 a 9 são correspondentes aos 8 (oito) bits do registrador de dados da porta paralela. Os pinos de 18 a 25 são todos GND (isto é, ground, id est, terra, ou seja, NEGATIVO.. rs). É recomendável que, quando montar o circuito do nosso projeto, você utilize todos os pinos de GND do DB25, por uma questão de distribuição da corrente, para não sobrecarregar nenhum deles.

 

O que você vai precisar

– Um servidor Apache e o PHP rodando na sua máquina (veja sobre isso aqui)

– Uma máquina com porta paralela (por quê será?? rs)

– Uma implementação de hardware (veja abaixo)

 

Uma implementação de hardware

Quando montei esse projeto (na verdade ainda tenho guardado isso em algum lugar…) foi um pouco diferente do que será mostrado aqui. Vou aqui compartilhar os circuitos sugeridos pelo rogercom.com mesmo. Se você apenas quer montar um circuitinho para ver que a paradinha funciona, monte apenas um circuito com 8 leds para que você possa visualizar o byte do registrador de dados, como esse:

Projeto4

Caso você queira, por exemplo, controlar realmente lâmpadas, ventiladores, aparelhos de som, cafeteira, enfim, equipamentos elétricos de sua residência – ligar e desligar apenas, claro -, você pode montar um circuito com um buffer para proteger a porta paralela, e adaptação de potência com transistores e relés para controlar uma carga de, digamos, até 10 ou 20 ampères (depende da corrente suportada pelos contatos do relé que você utilizar). É possível (e no meu projeto eu fiz isso) usar o mesmo CI (circuito integrado) que é buffer, como adaptação de potência para acionar diretamente o(s) relé(s) em 12V, dispensando o uso dos transistores (o BD137, que é utlizado aí). No entanto, vou ficar devendo esse circuito no momento (prometo encontrar meu projeto velho e compartilhar aqui fotos dele e os esquemáticos), e vou usar nesse post o circuito sugerido pelo mestre Antônio Rogério Messias:

Projeto2

As instruções para instalação do “LTP Web Controller” (apelido que dei pro projeto.. rs) estão contidas no arquivo README, o qual transcrevo:

 

PARA FAZER FUNCIONAR O LPT Web controller # 29-Novembro-2006
============================================================

ultima alteracao: 18/04/2007

1. Extraia o pacote em seu diretório Web (“public_html”, por exemplo);
2. Mude o dono do arquivo fazer.txt para o usuario do servidor web (no meu caso, é “www-data”; para descobrir se o seu também é, digite “$ cat /etc/passwd | grep www”).
Para mudar o dono do arquivo, digite (no diretorio lpt/):

$ sudo chown nome_de_usuario_do_servidor_web fazer.txt

Se o usuario do servidor web for www-data, como o meu, fica:

$ sudo chown www-data fazer.txt

3. Inicie a execução do daemon com o comando (no diretório “lpt”):

$ sudo ./daemon

4. Se quiser deixar o daemon rodando em ‘background’, digite o comando e mais o
&, como abaixo:

$ sudo ./daemon &

5. E pronto! Acesse depois a página e boa sorte!

Qualquer problema entre em contato!!!

Jéter Vaz – jetervaz (a) gmail.com
https://jetervaz.wordpress.com

 

Baixe o LTP Web Controller aqui (clique com o botão direito e vá em “Salvar link como”): lpt.tar.gz

Duvídas? Fique à vontade para usar os comentários para questionamentos, tentarei responder assim que possível.

AVISO! Se você decidir montar esse projeto, FAÇA POR SUA PRÓPRIA CONTA E RISCO! Tenha responsabilidade de ter alguma noção do que está fazendo, e mentalize que esse sistema é completamente inseguro e apenas tem finalidade didática.