Mostrando postagens com marcador Redes de Computadores. Mostrar todas as postagens
Mostrando postagens com marcador Redes de Computadores. Mostrar todas as postagens

segunda-feira, 10 de agosto de 2020

Comandos úteis do Editor VI

 O editor VI é o editor básico do Unix/Linux.

Para invocar o editor digita-se: vi arquivo(s).

Ao invocar o VI, este entra direto para o modo 'visualização'. Para modificar o arquivo, usa-se os modos de inserção, deleção e de substituição. Para voltar ao modo de visualização, sempre se usa a tecla <ESC>.

Alguns dos comandos mais usados são:

    Inserção de caracteres:
  • i - insere texto antes do caractere atual.
  • I - insere texto no início da linha atual.
  • a - insere texto após o caractere atual.
  • A - insere texto no final da linha atual.
  • o - insere texto no início da próxima linha (inserindo uma nova linha).
  • O - insere texto no início da linha anterior (inserindo uma nova linha).

OBS: Para sair do modo de inserção de caracteres, digite <ESC>.

    Deleção de caracteres:
  • <DEL> - deleta a letra anterior ao cursor (depende da configuração).
  • x - deleta a letra do cursor (nx deleta as próximas n letras).
  • dw - deleta o restante da palavra atual (ndw deleta as n próximas palavras).
  • u - undelete (restaura o que foi apagado por último ou apaga o que foi inserido por último).
  • dd - deleta a linha atual (ndd deleta n linhas a partir da atual).
    Substituição de caracteres:
  • s - substitui a letra atual (e entra no modo de inserção).
  • S - substitui a linha atual (e entra no modo de inserção).
  • r - substitui a letra atual (não entra no modo de inserção).
  • R - entra no modo de substituição (sai com <ESC>).
  • ~ - substitui maiúsculo/minúsculo.
  • . - repete o último comando.
    Movimentação de cursor (em algumas situações as setas funcionam):
  • j - uma linha para baixo
  • k - uma linha para cima
  • h - um caractere para a esquerda
  • l - um caractere para a direita
  • b - volta para o início da palavra.
  • w - adianta para a próxima palavra.
  • e - vai para o fim da palavra.
  • 0 - início da linha
  • $ - fim da linha
  • nG - vai para a linha n (0G ou G vai para a ultima linha).
  • % - usado em parênteses para achar o par.
  • +n - vai + n linhas para baixo.
  • -n - vai n linhas para cima.
    Busca de palavras:
  • /palavra - procura palavra a partir da atual.
  • ?palavra - procura palavra a partir da atual (voltando para o início do arquivo).
  • n - procura próxima ocorrência (na mesma direção de busca).
    Operações com buffers:
  • nyy - coloca n linhas no buffer (copiar).
  • nY - coloca n linhas no buffer (copiar).
  • ndd - deleta as n linhas (a partir da atual) e coloca no buffer (copiar).
  • p - retira o conteúdo do buffer (colar) e coloca após a linha atual.
  • P - retira o conteúdo do buffer (colar) e coloca antes da linha atual.
    Operações de bloco:
  • ml - marca a linha l (mx marca a linha x, etc usando o alfabeto).
  • 'a - vai para a linha marcada a.
    Para ler ou escrever o arquivo (ou parte dele) usa-se os comandos:
  • :r arquivo - ler o arquivo para dentro do arquivo atual, a partir do local atual.
  • :w [arquivo] - escreve o arquivo
  • :q - sai sem modificar o arquivo (se foi alterado tem que usar :q!).
  • :wq - sai, salvando o arquivo editado.
  • ZZ - sai, salvando o arquivo editado.
  • :'a,'b[operação] - realiza a operação no bloco contido entre as marcas a e b.
  • :d - deleta a linha atual (útil como operação de blocos).
  • :s/string1/string2/ - substitui o string1 por string2

Comandos Úteis do Linux

 O Linux é uma versão freeware do Unix. Como tal, utiliza bastante os recursos de pipes e redirecionamento.

Pipes traduzindo "ao pé da letra" significa canos. Na realidade os pipes são um recurso onde a saída de um programa é a entrada de outro. Para usar pipes se usa o símbolo '|'.

Os recursos de redirecionamento permitem alterar a entrada/saída padrão do sistema. Redirecionamento da entrada se consegue com '<', e da saída com '>'.

Listamos abaixo alguns comandos úteis do Linux.

    Help on-line:
  • man - help, manual, uso dos comandos.
    Utilização dos recursos do sistema:
  • df - Mostra a porcentagem de utilização dos HDs.
  • du - Mostra a utilização do HD por diretório.
  • free - Mostra a utilização da memória e área de swap.
  • ps - Process Status, mostra os processos que estão rodando.
  • whereis - mostra em que diretório está um programa.
  • which - mostra qual programa será executado.
    Manipulação de arquivos:
  • cp - copia arquivo.
  • mv - move (ou renomeia) arquivo.
  • rm - remove arquivos.
  • ls - mostra o nome dos arquivos no diretório corrente (dir).
  • cat - mostra o arquivo na tela.
  • more - mostra o arquivo na tela (uma tela de cada vez).
  • grep - procura, dentro de um arquivo, as linhas que contem um determinado string.
  • head - mostra as primeiras linhas de um arquivo.
  • tail - mostra as últimas linhas de um arquivo.
  • wc - conta quantas linhas, palavras e letras em um arquivo.
  • diff - compara dois arquivos.
  • cmp - Comparação binária entre dois arquivos.
  • vi - Editor de arquivos.
    Manipulação de diretórios:
  • mkdir - cria diretório.
  • rmdir - remove diretório vazio.
  • cd - muda de diretório.
  • pwd - mostra o diretório corrente.
    Segurança:
  • passwd - mudança de senha.
  • chmod - muda as permissões dos arquivos/diretórios (attribute).
    Verificando usuários:
  • who - mostra quem está logado na maquina.
  • whoami - (who am I) mostra quem sou eu (útil para quem faz muito su para mudar de usuário).
  • finger - mostra qual o login de algum usuário.
    Manipulação da impressora:
  • lpr - imprime arquivo.
  • lpq - mostra a fila de impressão.
  • lprm - remove da fila de impressão.

Dicas de gerenciamento de usuários no Linux

 A lista de usuários é mantida pelo Linux no arquivo /etc/passwd O arquivo contêm uma linha para cada usuário cadastrado. Os campos em cada linha são separados pelo símbolo ":". Cada linha tem o seguinte formato (ou as seguintes colunas):

  1. O nome de login do usuário:
  2. A senha encriptada do usuário:
  3. O numero do grupo do usuário:
  4. O numero do usuário (UID):
  5. O nome completo do usuário:
  6. O diretório "home" do usuário:
  7. O tipo de shell do usuário.

Para acrescentar um usuário novo no sistema, usa-se o comando adduser. Este comando pede as informações necessárias para acrescentar mais uma linha no arquivo de usuários.
Após a atualização do arquivo, o programa cria o diretório "home" do usuário e copia todos os arquivo contidos no diretório /etc/skel para este diretório.

Para deletar um usuário é necessário editar o arquivo /etc/passwd e: ou apagar o login, ou alterar a senha encriptada. Uma técnica bastante usada para impedir o acesso de um usuário temporariamente é de inserir um asterisco antes da primeira letra da senha. Para habilitar novamente o usuário, basta remover o asterisco inserido.

Para deletar completamente um usuário do sistema, é preciso deletar seu nome do arquivo /etc/login como descrito acima e ainda apagar os seus diretórios: /home/user e /var/spool/mail/user. Para remover completamente (sem possibilidade de recuperar) usa-se o comando rm -R dir.

Em versões mais recentes segurança tem sido muito mais importante aos gerentes de sistema, e portanto tem sido modificado a forma de salvar a senha dos usuários.

Uma modificação foi a introdução de um arquivo (/etc/shadow) exclusiva para senhas. Neste tipo de arquitetura, o arquivo /etc/passwd não contém mais as senhas. O arquivo /etc/shadow contém o nome do usuário e sua senha encriptada, além do tempo de vida de sua senha. Este arquivo é lido apenas pelo root (gerente geral do sistema). Assim as senhas ficam mais difíceis de obter.

Outra coisa que está mudando no Linux, é a gerência do sistema por menus (cada dia mais parece com o sistema operacional tão combatido). Sendo assim, já tem nas interfaces Gnome, KDE e outros, menus para gerenciar os usuários, não sendo mais necessário a edição dos aruivos de configuração diretamente. Nestes casos basta seguir os menus para acrescentar, remover ou alterar dados de um usuário.

domingo, 26 de janeiro de 2020

Investimentos Financeiros

Não sou especialista em finanças. Minha formação é no ramo da engenharia elétrica. Mas, já estou por aqui nesta terra por mais de 60 anos e já adquiri algumas noções de finanças. Já li muito a respeito e desde os 17 anos de idade trabalho fora de casa e administro minhas próprias finanças. Além disso já participei de conselho fiscal de condomínio e de igreja, já participei de administração de condomínio e passei alguns anos como tesoureiro de uma igreja. Como disse, algumas noções eu tenho. Veja outras informações em meu outro blog: Tutoriais do Bob

Quando penso em Investimentos Financeiros às vezes penso em muito dinheiro (que eu não tenho ainda). Mas sei que é possível começar devagar, com pouco mensal. Me parece que o importante inicialmente não é a quantia em si, mas sim a formação de hábito de gastar menos do que se ganha, para poder poupar (investir) regularmente. E mais importante ainda é começar (não apenas aprender como fazer, mas realmente fazer).

Quando o assunto é investimentos é muito importante lembrar que antes de começar a investir é importante ter as dívidas quitadas. Via de regra os rendimentos pagos sobre investimentos são menores (em percentuais) em relação ás taxas cobradas sobre empréstimos. Afinal, os bancos recebem os investimentos e emprestam a outras pessoas. O valor cobrado pelo empréstimo deve cobrir os valores pagos aos investidores e ainda dar lucro aos bancos.

Existem duas grandes categorias de investimentos: as de renda fixa e as de renda variável. Na renda fixa, como o próprio nome diz, a cada ciclo temporal (mês, bimestre, semestre ou ano) se recebe um valor fixo referente ao seu investimento. Já na renda variável, pode variar o ciclo temporal ou o valor das rendas (ou ambos).

Dentro de ambas as categorias existem vários tipos de investimento. Cada tipo atende a um perfil de investidor. Atualmente, com a taxa SELIC abaixo de 5%, a poupança está perdendo para a inflação, portanto não é prudente deixar dinheiro na poupança por muito tempo. Se não vai precisar do dinheiro no curto prazo, é melhor buscar uma aplicação que renda mais em porcentagem.

Estou me preparando para comprar minha primeira cota de FIIs (provavelmente esta semana). Ainda não decidí qual FII comprar, mas provavelmente será do segmento FOF (Fundo de Fundos) ou Fundo de Papeis. A razão principal para eu comprar FIIs FOF para começar é que me dá uma certa diversidade mesmo com uma única cota. Outra razão é porque eu entendo que um FOF com gestão ativa é semelhante a contratar um gestor para diversificar os meus Fundos Imobiliários. Ele está sendo pago para me gerar renda, e a melhor renda possível, no seguimento.

Retomei na semana passada (após umas férias merecidas) meus experimentos com "day trade" de bitcoins. Minha meta para cada trade (operação de compra e depois operação de venda de bitcoins) é obter um lucro de 0,5% (após descontar as taxas de compra e de venda). Tenho conseguido isso na maioria das vezes. Se eu consigo uma operação de sucesso por dia (sem operações de fracasso) me sinto bastante feliz, sabendo que se o dinheiro estivesse na poupança eu não conseguiria isso nem no mês inteiro. Fazendo uma conta básica, se eu conseguir um lucro de 0,5% por dia, 4 vezes por semana, 50 semanas no ano (sem considerar o juro composto) eu terei conseguido duplicar o valor aplicado em um ano. Isso é muito bom para gerar patrimônio.

Se não olhou ainda o meu outro post sobre o assunto pode fazê-lo pelo seguinte link: Complementando a Renda






segunda-feira, 24 de julho de 2017

Você está preparado para a Nova Economia?

A Era Agrícola

Adão e Eva cuidavam do Jardim do Éden até serem expulsos por Deus por causa de sua desobediência (por causa de seu pecado) conforme Gênesis 3:23. Os primeiros filhos de Adão e Eva eram: 1) pastor de ovelhas e 2) lavrador da terra (agricultor) conforme Gênesis 4:2. Aos poucos a forma de cultivar alimentos foi mudando. Inicialmente foi desenvolvido um arado puxado por boi ou jumento para facilitar o plantio. Já no século XIX foram inventadas e implementadas maquinas para auxiliar no plantio e na colheita, diminuindo a necessidade de mão de obra na agricultura.

A Revolução Industrial

Com a invenção de maquinas a vapor no século XVIII e as subsequentes atualizações nos séculos seguintes para maquinas a diesel, gasolina, energia elétrica, e finalmente para os robôs, as fábricas tem necessitado de cada vez menos mão de obra. Fabricas que antigamente empregavam milhares de pessoas, agora precisam de poucas pessoas (bem qualificadas) para programar e operar as maquinas e os robôs.

A Nova Economia

Com a diminuição de empregos formais na agricultura e nas fábricas, muitas pessoas tem se dado conta que nos dias de hoje cada pessoa tem que ser autônomo, ou dono de seu próprio negócio para sobreviver. Com a criação da Internet possibilitou-se o Home Office, além de vendas e serviços pela rede. Com os smartphones (celulares com aplicativos) diminuiu-se a distância e o tempo necessário para fechar negócios. Muitos aplicativos têm surgido para facilitar a vida do homem moderno; para fazer a ponte entre o prestador de serviço ou vendedor e o tomador do serviço ou comprador.
  • O AliExpress faz a ponte entre lojistas e consumidores, mas não é dono de nenhuma loja.
  • O Google substituiu as páginas amarelas, fazendo ponte entre a informação e o consumidor.
  • O Wikipédia substituiu as enciclopédias trazendo informações atualizadas ao alcance de todos.
  • O Uber faz ponte entre proprietários de automóveis e consumidores que precisam de transporte.
  • O Booking faz a ponte entre hotéis e turistas.
  • Aplicativos tem facilitado vídeo chamadas e trocas de mensagens de textos entre usuários.
A nova economia aproveita as facilidades da Internet, dos laptops, tablets e dos smartphones para interligar as pessoas. As lojas convencionais estão sofrendo com a concorrência das lojas online. Cada vez mais as pessoas estão vendo a necessidade de serem donas de seus próprios negócios e gerarem sua própria renda.

Marketing Multinível

O marketing multinível nasceu no século XX e tem crescido desde então. Com a chegada da Internet o trabalho de marketing multinível tem sido facilitado, já que a Internet permite a divulgação de vídeos (EX: Youtube) demonstrativos ou explicativos sobre o negócio, facilita a comunicação entre os integrantes do negócio, e as redes sociais ajudam na divulgação do negócio e dos produtos.

Hoje é viável ter lojas online, cujos clientes são notificados sobre o negócio e os produtos por email, ou pelas redes sociais. Já faz algum tempo que estou envolvido em marketing de rede. A empresa com a qual trabalho é a líder mundial de vendas diretas, já há mais de cinco anos. Ela fornece um escritório virtual (back office) pelo qual o empresário individual pode verificar os produtos, clientes, vendas, membros de sua rede, etc. Também fornece uma loja online para cada um dos empresários independentes. Vende produtos patenteados de grande valia para os consumidores finais. Caso queira maiores informações, visite nossa loja virtual aqui.

Moedas Virtuais

 As moedas virtuais, a exemplo do Bitcoin, estão revolucionando a forma de fazer negócios, já que facilitam a troca de valores entre duas ou mais pessoas, independentemente do país onde vivem. As taxas de transferência são pequenas, e as transferências ocorrem em poucos minutos (ou no máximo em poucas horas). As moedas virtuais encriptadas não dependem de nenhum governo ou banco central. Elas podem ser utilizadas para pagamentos de produtos e serviços, facilitando grandemente os negócios.

Você está preparado?

Você já se deu conta da diminuição das grandes empresas que contratavam muitas pessoas? Já se deu conta de que, mesmo se preparando e se qualificando, empregos formais pagam cada vez menos, e oferecem cada vez menos benefícios? Já parou para pensar onde você poderá estar daqui a cinco ou dez anos, em relação ao mercado de trabalho? As mudanças continuam vindo, e são inevitáveis. Mas, você pode se esconder e fazer de conta que não vão lhe afetar, ou pode abraçar as mudanças e lucrar com elas.

Eu já me decidi. Estou envolvido com marketing de rede, que tem me proporcionado uma renda adicional, e estou começando a adquirir Bitcoins pensando no futuro. Informação sobre a nova economia é uma necessidade. Eu estou me informando e tentando passar alguma informação adiante. E você está se informando ou se escondendo? Você está preparado para as mudanças que estão chegando?

 

sábado, 1 de julho de 2017

Bitcoin Faucets

Bitcoin Faucets

Existem diversos sites intitulados de Bitcoin Faucets. Para o Bitcoin temos uma descrição sucinta nesta página. O nome Faucet significa literalmente: torneira. O sentido aqui é que o site pinga bitcoins na sua conta ou na sua carteira de bitcoins. Alguns sites pagam e outros apenas prometem. Os sites que prometem valores elevados são os que estão mais propensas a não pagar.

 É relativamente fácil um site ter alguma renda de fração de centavos, ou até um ou dois centavos por cada visitante. Portanto, pagar até um centavo de Real (o que equivale hoje a BTC 0.00000122 ou seja 122 Satoshi) não é complicado para um Bitcoin Faucet. Se visitar o site e clicar nos botões, vai juntando Satoshis e pode ganhar alguma coisa.

Um site que coloca diversas propagandas na página ganha por cada visitante. Então alguns simplesmente dividem o que ganham com o visitante. Outros utilizam outras formas de ganhar dinheiro e também distribuem os Satoshis para seus visitantes.

Alguns cuidados a serem tomados

Alguns sites fazem chantagem emocional oferecendo valores altos, mas não liberam estes valores sem você primeiro pagar algo a eles. Isso é o primeiro cheiro de golpe. Se vão te pagar um valor alto, basta deduzir as taxas dos valores que vão te pagar. Muito lógico. Mas um golpe muito antigo é dizer que vai receber um valor alto, mas para poder ser liberado tem que dar um adiantamento, tem que pagar alguma coisa. Esse golpe não está limitado apenas a Bitcoin Faucets.

Outros sites ditos de investimento dizem que pagam valores elevados de juros, mas que não devolvem o seu capital inicial, pois esse fica rendendo para sempre. Muitos destes sites são apenas esquemas para receber os investimentos dos incautos e vão ficar pagando apenas os juros enquanto tiver gente nova sendo iludida e depositando seus Bitcoins. Quando parar a entrada de novos Bitcoins investidos, o site vai a falência (desaparece do ciberespaço), levando consigo os depósitos de muita gente.

Uma máxima que circula por ai, é, não invista nada em Bitcoins que não esteja disposto a perder. Você pode ter êxito em algumas transações e fracasso em outras. Esteja sempre vigilante ao lidar com Bitcoins. E mais um lembrete: Nunca, nunca, nunca divulgue as chaves privadas de suas carteiras, APIs, ou exchanges de Bitcoins, para ninguém, nem para seu melhor amigo.

Pense no seguinte...

Por que alguém quer lhe pagar alguma coisa? Se o site precisa de visitantes para ganhar alguns centavos, então nada mais justo que dividir o lucros com o visitante. Mas se o site está querendo que você pague algum valor adiantado, cuidado.

domingo, 28 de maio de 2017

Bitcoin

O que é o Bitcoin? 

O nome "Bitcoin" é um composto de duas palavras: "bit" e "coin". A primeira indica um Binary Digit, ou a menor unidade de informação que pode ser armazenada ou transmitida, e a segunda indica moeda. Resumindo, o Bitcoin é uma moeda digital criptografada que pode ser utilizada para compra e venda de produtos e serviços, e até para investimentos.

De acordo com Wikipedia: Bitcoin (símbolo: Ƀ; abrev: BTC ou XBT) é uma criptomoeda descentralizada. É também um sistema ou rede de pagamento online baseado em protocolo de código aberto independente chamado de "sistema eletrônico de pagamento peer to peer",[7] inaugurada em 2009; É também um software de código aberto que o grupo projetou para manipulação da moeda e da respectiva rede peer-to-peer (P2P ou ponto-a-ponto).

Como conseguir Bitcoins?

Os bitcoins podem ser obtidos de diversas formas:
  1. Comprando (utilizando cartão de crédito, boleto, transferência bancária, etc.).
  2. Recebendo por doação, ou por serviços prestados.
  3. Ganhando valores baixos em sites que divulgam o Bitcoin.
  4. Ganhando sobre investimentos na própria moeda (recebimento de juros).
Explicando melhor:
1) Existem sites de câmbio que recebem uma moeda e trocam por outra. Ex: Recebem Reais (R$) e trocam por Bitcoins (BTC$) ou vice-versa. O site BitCambio é um exemplo deste tipo de site. Outro é o BitcoinToYou.
2) Alguém pode fornecer um endereço de carteira para receber bitcoins de outras pessoas por doações ou por prestação de serviços.
3) Alguns sites que trabalham com bitcoins (minerando ou autenticando transações) fazem distribuição de pequenos valores de bitcoins como divulgação e educação dos usuários da nova moeda. O FreeBitCo é um site no qual pode ganhar alguns Satoshi (menor fração do BitCoin) clicando a cada hora.
4) Existem sites especializados em investimentos Bitcoin que pagam juros a quem depositar valores com eles.

Investindo em Bitcoins para obter lucros

Existe basicamente duas formas de ganhar algum dinheiro com bitcoins:
  1. Recebendo juros sobre investimentos.
  2. Comprando baixo e vendendo alto.
Explicando melhor:
1) Para receber juros sobre investimentos é preciso adquirir bitcoins e depositá-los em um site de investimento. Levando em conta que o Bitcoin ainda é uma moeda nova, tem muitos sites querendo se aproveitar da situação e estão roubando o dinheiro depositado. Todo cuidado é pouco. Se o juro prometido é alto demais, cuidado, pois pode ser uma armadilha para atrair os gananciosos. Lembre-se que o site tem que ter alguma maneira de ganhar lucros ainda maiores para poder pagar o que lhe promete. Os bancos comuns emprestam a juros maiores pagando juros menores a quem investe (além de cobrar taxas por tudo). No caso em questão, pagar juros implica em um aumento na quantidade de bitcoins, e não tem nada haver com o preço do bitcoin. Se o site de investimento não explica como eles ganham mais bitcoins para poder lhe pagar, cuidado. Na telinha os números podem impressionar, mas a decepção vem ao tentar resgatar ou converter para dinheiro vivo os valores mostrados na telinha.
2) Especulação de mercado implica em comprar bitcoins em um valor inferior ao de venda. Lembrando que uma vez vendidos não se tem mais, e precisará comprar mais para um novo investimento. Considerando o bitcoin como uma moeda nova, a especulação faz o preço do bitcoin um pouco instável. Ao escrever estas linhas o bitcoin está em uma fase de grande demanda, pois tem muita gente descobrindo o valor do bitcoin. Sendo assim o preço está subindo muito. Mas daqui uns tempos poderá chegar um período de estabilidade no preço, ou até de queda. O investidor tem que estar ciente desta possibilidade e dos riscos envolvidos, já que não existe nenhum órgão de estabilização da moeda, pois o preço depende exclusivamente de oferta e demanda.

segunda-feira, 11 de fevereiro de 2013

Servidor DNS

Em minha última postagem a respeito de DNS (DNS - Servidores de Nomes de Domínios) expliquei para que serve o DNS. Serve para traduzir nomes de domínios em IPs e vice versa.

Nesta postagem vou falar mais a respeito do servidor DNS em si: qual o seu papel e quais as funções que deve prover.

Um servidor DNS tem uma ou mais tabelas de configuração com informações específicas dos serviços oferecidos pelo domínio a qual serve. Um servidor de uma Empresa B vai conter informações dos serviços oferecidos no domínio empresab.com.br.

Em geral tem uma tabela "direta" e uma tabela "reversa" contendo todas as informações de servidores da empresa. A tabela "direta" contém o nome do serviço e o IP associado. A tabela "reversa" tem o IP e o nome da maquina associada.

No início das tabelas vão informações sobre o domínio, o tempo para manter a informação em cache, e o número serial para fins de atualização de tabelas por servidores DNS secundários.

Cada empresa poderá ter vários serviços e vários servidores. Como exemplo, vamos supor que a empresa B tem correio eletrônico, servidor web, e servidor de arquivos (ftp). Neste caso, será necessário ter entradas nas tabelas para cada serviço, mesmo que residem na mesma maquina.
empresab.com.br.                 IN A 192.168.x.1
mail10.empresab.com.br      IN A 192.168.x.1
empresab.com.br.                 IN MX 10 mail10.empresab.com.br
www                                     IN CNAME empresab.com.br
ftp                                         IN A 192.168.x.2

O "A" significa Absolute, e o "MX" significa Mail eXchange. As informações na tabela indicam o IP do servidor, o trocador de correio eletrônico, o endereço do servidor web e do servidor ftp. Pode-se observar que o servidor de correio eletrônico e o de web estão na mesma maquina. Já o servidor de ftp está em outro IP. Se estivesse na mesma maquina, poderia utilizar o CNAME da mesma maneira que utilizou para o www.

Também é importante ter um servidor DNS primário (mestre) e um ou mais servidores secundários (escravos) que buscam a tabela no servidor primário, e respondem quando o servidor primário estiver fora do ar. Backup das tabelas é essencial.

O servidor DNS será consultado toda vez que alguém quiser acessar um dos serviços do domínio empresab.com.br. Poderá também ser configurado para ser usado pelos usuários da empresa para resolução de nomes de outros servidores em sua navegação pela Internet.

sexta-feira, 21 de janeiro de 2011

Agenda Pessoal

A vida moderna tem quase que obrigado o ser humano a seguir algum tipo de agenda para não se atrasar ou não perder os compromissos. Tem gente que opta por comprar um livrinho de compromissos na livraria. Anotam os eventos e horários na data apropriada, e depois esquecem de consultar o livrinho.

Eu já fiz isso durante anos. Hoje em dia com a Internet, já me sofistiquei bastante. Teve uma época que criei um programa online de agenda. Ainda utilizo um pouco, mas na grande maioria dos casos, substituí pelo programa de calendário do Google.

Qualquer pessoa que tenha usado o gmail do Google online, pode ter notado no canto superior esquerdo uma linha de sugestão de sites: Orkut, gmail, calendário, documentos, web, etc. Pois bem, eu passei a utilizar o programinha de calendário. Na realidade, criei diversas agendas debaixo do mesmo perfil, cada uma com finalidade específica. Criei uma agenda só para aniversários (dos familiares e amigos), outra para datas importantes (dia do professor, Natal, dia da sogra, etc.), outra agenda de atividades relacionadas ao trabalho (reuniões, congressos, apresentação de trabalhos minhas e dos colegas, etc.), e outra estritamente pessoal.

Na configuração geral das agendas, coloquei a opção para me enviar um email bem cedo, no início de cada manhã com as atividades agendadas para aquele dia. Tem funcionado bem. Apenas eu fico na responsabilidade de ler os emails cedo de manhã para não esquecer os compromissos.

Cada agenda poderá ter configurações individuais quanto ao compartilhamento e às notificações. No caso da agenda de atividades relacionadas ao trabalho posso programar um pop-up 15 minutos antes do início da atividade. Isso não é necessário na agenda de aniversários, já que o horário da festa (que muitas vezes será em outro dia) fica na agenda pessoal.

Infelizmente ainda não tem uma configuração que eu possa colocar na agenda de aniversários para o padrão ser de repetir a cada ano, portanto cada vez que cadastro novo aniversário, tenho que alterar manual e conscientemente a repetição para anual. Por outro lado, ter uma agenda só de aniversários tem feito com que algumas pessoas acham que sou muito organizado e muito lembrado das coisas (o que pode não ser verdade).

No caso da minha agenda relacionada ao trabalho, tornei-a pública, e compartilhei-a com os amigos do trabalho. Assim poderão ver se tem alguma reunião importante, ou alguma apresentação que gostariam de ir. Em todo caso poderão consultar os compromissos que coloquei ali conscientemente de que qualquer pessoa poderá tomar conhecimento daqueles eventos.

Um outro recurso que a agenda do Google oferece é a de enviar um torpedo (para as operadoras de celular que estão cadastradas) de lembrete de eventos. Eu ainda não experimentei este recurso, mas acho que é bastante interessante.

Em todo caso, acredito que o uso com frequência da agenda do Google pode ajudar a colocar alguma organização na vida de muita gente. O aniversário da esposa ninguém esquece, mas já imaginou o transtorno que dá quando alguém esquece o aniversário da sogra?


quinta-feira, 20 de janeiro de 2011

Instalando o DropBox

O DropBox oferece de 2 até 8 GB de espaço grátis para armazenar arquivos. Veja meu post anterior para entender mais a respeito.

Após ter feito o cadastro, efetue o login no site. Na aba Files, na parte esquerda em baixo vai ver uma barrinha dizendo quantos % do seu espaço você está utilizando. Logo acima deste indicador, tem um link chamado Install Dropbox. Lá tem um botão grande para baixar (Free Download) o programa para Windows. Logo abaixo deste botão tem links para Mac 10.4+, Linux, e Mobile (Celular). Escolha o sistema de seu dispositivo e siga as instruções.

A correta instalação do programa, vai solicitar seu email e senha de cadastro. Estes dados serão salvos e o programa irá inicializar toda vez que entrar em sua conta. O programa irá criar uma pasta local no seu HD chamada de Dropbox e todas as pastas que você criou no site serão copiados para a pasta local. Dai por diante, qualquer alteração local será replicada no servidor, e vice-versa. A versão mais atual será mantida (pela data de criação / alteração).

Caso tenha uma pasta compartilhada com outra pessoa (ou o programa instalado em outro computador), os arquivos da pasta serão atualizados nos computadores remotos assim que fizer o login. O programa irá utilizar uma parte da banda Internet até conseguir sincronizar todos os arquivos em sua pasta. O programa é inteligente o suficiente para enviar apenas parte de arquivos que tenham sido alterados. Calcula as partes do arquivo e envia apenas a parte que mudou, economizando sua banda larga.

O Dropbox pode ser utilizado para backup de arquivos, já que todos os arquivos colocados na pasta Dropbox são enviados automaticamente ao servidor.

Pode ser utilizado para compartilhar arquivos de um projeto, entre pessoas diferentes. Basta compartilhar a pasta com alguém que já esteja utilizando o Dropbox, que tudo que for colocado na pasta compartilhada aparecerá automaticamente na conta de todos os participantes, em todos os computadores onde têm o programa instalado.

Eu tenho usado o Dropbox para compartilhar arquivos PDF, DOC e PPT relativos ao meu PhD, entre meu orientador e os demais membros da equipe de pesquisa. Também tenho utilizado para transferir arquivos entre meu PC (trabalho) e meu notebook (casa), já que ambos tem o programa instalado.

Outro aluno de PhD compartilhou as fotos tiradas no dia de sua apresentação do doutorado, entre os membros do laboratório.

Considero o Dropbox uma ferramente bastante útil no compartilhamento de arquivos.

DropBox

O que vem a ser o DropBox?

O termo em inglês tem algo a ver com caixa para jogar as coisas, ou caixa onde deixar as coisas cair. Na realidade é um site onde pode armazenar arquivos digitais. O site lhe dá gratuitamente 2GB de espaço para utilizar. Se quiser mais espaço, tem duas maneiras: 1) pague uma mensalidade, 2) indique amigos para se inscreverem (limite de 8GB espaço grátis).

O Dropbox pode ser dividido em duas partes: 1) um site na Internet, 2) um programa em um computador cliente. Vou tentar descrever ambos. O primeiro neste post, e o segundo no próximo post.

O DropBox na Internet é um site onde você pode depositar arquivos e, tudo que você colocar lá poderá ser acessado de qualquer computador ligado à Internet. Isso é ótimo para ter cópia de suas apresentações quando em viagem. Assim que você acessar o DropBox pela primeira vez, vai aparecer um formulário para preencher, e fazer o seu cadastro. O formulário é dos mais simples possível. Pede seu primeiro nome (First Name), seu sobrenome (Last Name), seu email e sua senha (password). O acesso a sua conta posteriormente será pelo email e senha. Após o cadastro, receberá um email de boas vindas, no email cadastrado.

Fazendo login no site online, verá abas contendo os seguintes nomes:
Get Started -> Começando
Files -> Arquivos
Events -> Eventos
Sharing -> Compartilhando
Help -> Ajuda.

Para salvar algum arquivo no site, vá para Files e crie uma pasta utilizando o comando New Folder (ou escolha uma pasta existente). Depois basta fazer o Upload do arquivo desejado. Muito simples.

Para receber algum arquivo do site, basta clicar em cima e dizer como salvar localmente. Bastante simples para quem já navega na Internet e baixou algum arquivo.

A aba Events é interessante pois lhe diz quais as modificações que foram efetuadas nas suas pastas. Quais os arquivos salvos, quando foram salvos ou deletados ou modificados.

A aba Sharing permite compartilhar uma ou mais pastas com pessoas em quem você confia (já que uma vez a pasta seja compartilhada, as outras pessoas poderão apagar tudo na pasta, se assim desejarem).

A aba Get Started tem informações sobre como iniciar o uso do DropBox, e como conseguir mais espaço gratúito.

Veja o próximo post para informações sobre a instalação do programa do DropBox.

domingo, 10 de agosto de 2008

Linguagens de Programação para Criação Web

Existem muitas linguagens de programação que podem ser usadas para criação de páginas web. Aqui vou destacar apenas algumas:

C é uma linguagem antiga (data de 1972) de uso geral. A linguagem C é uma linguagem estruturada que foi desenvolvida para programação de sistema, mas é também usada para aplicativos. Aceita definição de estruturas. Uma das vantagens desta linguagem é que por natureza ela deve ser compilada, e o programa executável é que deve ser disponibilizado, sendo assim mais dificil de copiá-lo.

Perl é uma linguagem de alto nível, de uso geral, desenvolvida originalmente em 1987. Esta linguagem normalmente é interpretada e não compilada, apesar de existir maneiras para compilá-la. Ela é poderosa na interpretação de textos, sendo portanto muito útil na criação de formulários interativos na web.

Java introduzido em 1995 prometia ser a linguagem do futuro, em que se poderia escrever um programa uma única vez e seria possivel executar sempre em qualquer maquina. Java usou muito da estrutura da linguagem C e também C++, mas com muito menos recursos de baixo nível. Muitas vezes é usado em conjunto com o JavaScript. Nestes casos, normalmente o Java fica no servidor e o JavaScript na página do cliente.

PHP é uma linguagem de uso geral, criado em 1995. Seu uso normal é de integração direta no servidor web, recebendo código PHP na entrada, e gerando páginas HTML na saída. É muito comum carregar o interpretador PHP como um módulo no servidor Apache (servidor http, ou servidor web). A linguagem PHP pode interagir também com um servidor de banco de dados MySQL com facilidade, criando assim páginas dinâmicas, que mudam conforme as informações do banco de dados. O PHP serve então para criação de blogs, relatórios, páginas de notícias, e qualquer página que necessita ser atualizada a partir de um banco de dados.

Informações adicionais sobre linguagens de programação podem ser obtidos no Wikipedia.

terça-feira, 13 de novembro de 2007

ANSI CODES (part three)

Part One
Part Two

Ansi Codes define functions that change display graphics, control cursor movement, and reassign keys. An ANSI escape sequence is a sequence of ASCII characters, the first two of which are the escape character (1Bh) and the left-bracket character (5Bh). The character or characters following the escape and left-bracket characters specify an alphanumeric code that controls a keyboard or display function. ANSI escape sequences distinguish between uppercase and lowercase letters; for example, "A" and "a" have completely different meanings.

Parameters used in ANSI escape sequences:

Pn - Numeric parameter. Specifies a decimal number.

Ps - Selective parameter. Specifies a decimal number that you use to select a function. You can specify more than one function by separating the parameters with semicolons.

PL - Line parameter. Specifies a decimal number that represents one of the lines on your display or on another device.

Pc - Column parameter. Specifies a decimal number that represents one of the columns on your screen or on another device.

ANSI escape sequences for cursor movement, graphics, and keyboard settings:

In the following list of ANSI escape sequences, the abbreviation ESC represents the ASCII escape character 27 (1Bh), which appears at the beginning of each escape sequence.

ESC[code;string;...p - Set Keyboard Strings: Redefines a keyboard key to a specified string. The parameters for this escape sequence are defined as follows:

  • Code is one or more of the values listed in the following table. These values represent keyboard keys and key combinations. When using these values in a command, you must type the semicolons shown in this table in addition to the semicolons required by the escape sequence. The codes in parentheses are not available on some keyboards. ANSI.SYS will not interpret the codes in parentheses for those keyboards unless you specify the /X switch in the DEVICE command for ANSI.SYS.
  • String is either the ASCII code for a single character or a string contained in quotation marks. For example, both 65 and "A" can be used to represent an uppercase A.

IMPORTANT: Some of the values in the following table are not valid for all computers. Check your computer's documentation for values that are different.

Key              Code      SHIFT+code  CTRL+code  ALT+code

F1               0;59      0;84        0;94       0;104
F2               0;60      0;85        0;95       0;105
F3               0;61      0;86        0;96       0;106
F4               0;62      0;87        0;97       0;107
F5               0;63      0;88        0;98       0;108
F6               0;64      0;89        0;99       0;109
F7               0;65      0;90        0;100      0;110
F8               0;66      0;91        0;101      0;111
F9               0;67      0;92        0;102      0;112
F10              0;68      0;93        0;103      0;113
F11              0;133     0;135       0;137      0;139
F12              0;134     0;136       0;138      0;140

(The next sixteen codes are from the num keypad)
HOME             0;71      55          0;119      ��
UP ARROW         0;72      56          (0;141)    ��
PAGE UP          0;73      57          0;132      ��
LEFT ARROW       0;75      52          0;115      ��
RIGHT ARROW      0;77      54          0;116      ��
END              0;79      49          0;117      ��
DOWN ARROW       0;80      50          (0;145)    ��
PAGE DOWN        0;81      51          0;118      ��
INSERT           0;82      48          (0;146)    ��
DELETE           0;83      46          (0;147)    ��
ENTER            13        ��          10         (0;166)
/                47        47          (0;142)    (0;74)
*                42        (0;144)     (0;78)     ��
-                45        45          (0;149)    (0;164)
+                43        43          (0;150)    (0;55)
5                (0;76)    53          (0;143)    �?

HOME             (224;71)  (224;71)    (224;119)  (224;151)
UP ARROW         (224;72)  (224;72)    (224;141)  (224;152)
PAGE UP          (224;73)  (224;73)    (224;132)  (224;153)
LEFT ARROW       (224;75)  (224;75)    (224;115)  (224;155)
RIGHT ARROW      (224;77)  (224;77)    (224;116)  (224;157)
END              (224;79)  (224;79)    (224;117)  (224;159)
DOWN ARROW       (224;80)  (224;80)    (224;145)  (224;154)
PAGE DOWN        (224;81)  (224;81)    (224;118)  (224;161)
INSERT           (224;82)  (224;82)    (224;146)  (224;162)
DELETE           (224;83)  (224;83)    (224;147)  (224;163)
PRINT SCREEN     ��        ��          0;114      ��
PAUSE/BREAK      ��        ��          0;0        ��
BACKSPACE        8         8           127        (0)
ENTER            13        ��          10         (0
TAB              9         0;15        (0;148)    (0;165)
NULL             0;3       ��          ��         ��
A                97        65          1          0;30
B                98        66          2          0;48
C                99        66          3          0;46
D                100       68          4          0;32
E                101       69          5          0;18
F                102       70          6          0;33
G                103       71          7          0;34
H                104       72          8          0;35
I                105       73          9          0;23
J                106       74          10         0;36
K                107       75          11         0;37
L                108       76          12         0;38
M                109       77          13         0;50
N                110       78          14         0;49
O                111       79          15         0;24
P                112       80          16         0;25
Q                113       81          17         0;16
R                114       82          18         0;19
S                115       83          19         0;31
T                116       84          20         0;20
U                117       85          21         0;22
V                118       86          22         0;47
W                119       87          23         0;17
X                120       88          24         0;45
Y                121       89          25         0;21
Z                122       90          26         0;44
1                49        33          ��         0;120
2                50        64          0          0;121
3                51        35          ��         0;122
4                52        36          ��         0;123
5                53        37          ��         0;124
6                54        94          30         0;125
7                55        38          ��         0;126
8                56        42          ��         0;126
9                57        40          ��         0;127
0                48        41          ��         0;129
-                45        95          31         0;130
=                61        43          ��-        0;131
[                91        123         27         0;26
]                93        125         29         0;27
                 92        124         28         0;43
;                59        58          ��         0;39
'                39        34          ��         0;40
,                44        60          ��         0;51
.                46        62          ��         0;52
/                47        63          ��         0;53
`                96        126         ��         (0;41)

ANSI CODES (part two)

Part One

Ansi Codes define functions that change display graphics, control cursor movement, and reassign keys. An ANSI escape sequence is a sequence of ASCII characters, the first two of which are the escape character (1Bh) and the left-bracket character (5Bh). The character or characters following the escape and left-bracket characters specify an alphanumeric code that controls a keyboard or display function. ANSI escape sequences distinguish between uppercase and lowercase letters; for example, "A" and "a" have completely different meanings.

Parameters used in ANSI escape sequences:

Pn - Numeric parameter. Specifies a decimal number.

Ps - Selective parameter. Specifies a decimal number that you use to select a function. You can specify more than one function by separating the parameters with semicolons.

PL - Line parameter. Specifies a decimal number that represents one of the lines on your display or on another device.

Pc - Column parameter. Specifies a decimal number that represents one of the columns on your screen or on another device.

ANSI escape sequences for cursor movement, graphics, and keyboard settings:

In the following list of ANSI escape sequences, the abbreviation ESC represents the ASCII escape character 27 (1Bh), which appears at the beginning of each escape sequence.

ESC[Ps;...;Psm - Set Graphics Mode: Calls the graphics functions specified by the following values. These specified functions remain active until the next occurrence of this escape sequence. Graphics mode changes the colors and attributes of text (such as bold and underline) displayed on the screen.

    Text attributes
       0    All attributes off
       1    Bold on
       4    Underscore (on monochrome display adapter only)
       5    Blink on
       7    Reverse video on
       8    Concealed on
 
    Foreground colors
       30    Black
       31    Red
       32    Green
       33    Yellow
       34    Blue
       35    Magenta
       36    Cyan
       37    White
 
    Background colors
       40    Black
       41    Red
       42    Green
       43    Yellow
       44    Blue
       45    Magenta
       46    Cyan
       47    White
 
    Parameters 30 through 47 meet the ISO 6429 standard.

ESC[=psh - Set Mode: Changes the screen width or type to the mode specified by one of the following values:

       0      40 x 148 x 25 monochrome (text)
       1      40 x 148 x 25 color (text)
       2      80 x 148 x 25 monochrome (text)
       3      80 x 148 x 25 color (text)
       4      320 x 148 x 200 4-color (graphics)
       5      320 x 148 x 200 monochrome (graphics)
       6      640 x 148 x 200 monochrome (graphics)
       7      Enables line wrapping
      13      320 x 148 x 200 color (graphics)
      14      640 x 148 x 200 color (16-color graphics)
      15      640 x 148 x 350 monochrome (2-color graphics)
      16      640 x 148 x 350 color (16-color graphics)
      17      640 x 148 x 480 monochrome (2-color graphics)
      18      640 x 148 x 480 color (16-color graphics)
      19      320 x 148 x 200 color (256-color graphics)

ESC[=Psl - Reset Mode: Resets the mode by using the same values that Set Mode uses, except for 7, which disables line wrapping. The last character in this escape sequence is a lowercase L.

Part Three

ANSI CODES (part one)

Ansi Codes define functions that change display graphics, control cursor movement, and reassign keys. An ANSI escape sequence is a sequence of ASCII characters, the first two of which are the escape character (1Bh) and the left-bracket character (5Bh). The character or characters following the escape and left-bracket characters specify an alphanumeric code that controls a keyboard or display function. ANSI escape sequences distinguish between uppercase and lowercase letters; for example, "A" and "a" have completely different meanings.

Parameters used in ANSI escape sequences:

Pn - Numeric parameter. Specifies a decimal number.

Ps - Selective parameter. Specifies a decimal number that you use to select a function. You can specify more than one function by separating the parameters with semicolons.

PL - Line parameter. Specifies a decimal number that represents one of the lines on your display or on another device.

Pc - Column parameter. Specifies a decimal number that represents one of the columns on your screen or on another device.

ANSI escape sequences for cursor movement, graphics, and keyboard settings:

In the following list of ANSI escape sequences, the abbreviation ESC represents the ASCII escape character 27 (1Bh), which appears at the beginning of each escape sequence.

ESC[PL;PcH - Cursor Position: Moves the cursor to the specified position (coordinates). If you do not specify a position, the cursor moves to the home position: the upper-left corner of the screen (line 0, column 0). This escape sequence works the same way as the following Cursor Position escape sequence.

ESC[PL;Pcf - Cursor Position: Works the same way as the preceding Cursor Position escape sequence.

ESC[PnA - Cursor Up: Moves the cursor up by the specified number of lines without changing columns. If the cursor is already on the top line, ANSI.SYS ignores this sequence.

ESC[PnB - Cursor Down: Moves the cursor down by the specified number of lines without changing columns. If the cursor is already on the bottom line, ANSI.SYS ignores this sequence.

ESC[PnC - Cursor Forward: Moves the cursor forward by the specified number of columns without changing lines. If the cursor is already in the rightmost column, ANSI.SYS ignores this sequence.

ESC[PnD - Cursor Backward: Moves the cursor back by the specified number of columns without changing lines. If the cursor is already in the leftmost column, ANSI.SYS ignores this sequence.

ESC[s - Save Cursor Position: Saves the current cursor position. You can move the cursor to the saved cursor position by using the Restore Cursor Position sequence.

ESC[u - Restore Cursor Position: Returns the cursor to the position stored by the Save Cursor Position sequence.

ESC[2J - Erase Display: Clears the screen and moves the cursor to the home position (line 0, column 0).

ESC[K - Erase Line: Clears all characters from the cursor position to the end of the line (including the character at the cursor position).

Part Two

segunda-feira, 29 de outubro de 2007

Transferências OnLine

Existem ocasiões em que é necessário transferir recursos financeiros via rede (EX. loja virtual). Hoje o mercado já está mais "maduro" e mais seguro de que nos primórdios da Internet. Já existem programas para gerar boletos bancários online, e também os cartões de crédito já tem sua presença on-line.

O que era difícil, agora está muito mais fácil. E para o site pequeno existem empresas que facilitam seu dia-a-dia, oferecendo serviços financeiros em um pacote integrado.

Veja, por exemplo, os serviços prestados pela PagSeguro. Se o dono de um site quiser receber doações pelo seu site, esse é o caminho. Não custa nada (até um certo limite máximo mensal). Se tiver uma loja virtual pequena, eles te fornecem até alguns scripts para colocar em sua página para servir como carrinho de compras.

A PagSeguro faz também a cobrança via cartão de crédito, se o site for gerido por pessoa jurídica.

Hospedagem de Domínios

Quando um domínio é criado, é necessário ser hospedado em alguma máquina. Basicamente temos duas opções:

  1. Hospedar em um provedor comercial (pago ou não);
  2. Hospedar em maquina própria.

Se a escolha for em provedor comercial, o dono do domínio não precisa se preocupar com a hospedagem em si, mas apenas com a atualização do conteúdo. Esta opção normalmente sai mais em conta, porque vários domínios podem compartilhar a mesma maquina e o mesmo canal. Podem também compartilhar os mesmos servidores de DNS.

Por outro lado, se a escolha for por hospedagem em maquina própria, então o dono do site tem que se preocupar também com:

  • a configuração e segurança da maquina;
  • a velocidade do link;
  • o serviço de DNS (primário e secundário).

Alguns sites oferecem hospedagem grátis para aqueles que registram o domínio através deles. Outros sites oferecem o serviço de DNS secundário a baixo custo anual.

Em todo caso, o criador do domínio tem que pensar e pesar as diversas opções para ver qual o melhor para ele.

Compartilhamento de Arquivos

Nos primordios da Internet, quando alquém precisava de um arquivo, usava o protocolo de FTP para baixar o arquivo de um servidor. Com o passar do tempo, a função de baixar arquivo também foi incorporado ao web browser, tornando esta função mais fácil para o usuário.

Com o aumento do tamanho dos arquivos, e o aumento da quantidade de usuários da grande rede, estes métodos se tornam insuficientes para a distribuição em massa de programas, filmes, música, enfim, de arquivos em geral. Portanto foram elaborados algumas outras maneiras de compartilhar arquivos, utilizando a banda disponível de todos os usuários.

Basicamente o procedimetno é o seguinte: se divide o arquivo em vários pedacinhos (EX. pedaços de 4KB, ou 8KB) e distribui os pedacinhos. Cada cliente baixa os pedacinhos e junta-os para fazer novamente o arquivo completo. Uma vez baixada um pedacinho, esse pedacinho pode ser disponibilizado para outros usuários.

Vamos supor o seguinte cenário: Um produtor quer lançar um filme através da Internet, mas não tem recursos para instalar um super servidor. Então, ele disponibiliza o arquivo pelo método de compartilhamento de arquivos P2P. Quando o primeiro cliente pede um pedacinho do arquivo, ele oferece o primeiro pedacinho. Quando o segundo cliente pede um pedacinho, ele oferece o segundo. Quando o primeiro cliente termina de baixar o primeiro pedacinho e solicitar o segundo pedacinho, o cliente vai buscar, não no servidor, mas no segundo cliente que baixou o segundo pedacinho. O segundo cliente, por sua vêz, quando terminar de baixar o segundo pedacinho e for buscar o primeiro, vai baixar do primeiro cliente.

Desta forma, com a troca de pedacinhos entre si, a banda do servidor principal é economizada. Não fica sobrecarregado.

Posteriormente, quando um novo cliente chegar, pedindo um pedacinho, poderá ser direcionado para um dos outros clientes que já tem pedacinhos disponíveis, e pode baixar os pedacinhos em qualquer ordem, e depois juntar todos os pedacinhos, formando o todo.

Uma das redes P2P é a rede do BitTorrent. Nessa rede existem alguns bancos de dados (um dos mais completos está no site: www.mininova.org ) que mantem a lista dos torrents, ou seja a lista de quem tem quais pedacinhos. Esses bancos de dados são chamdos de "trackers". Os "seeders" (seeds, seeder, sementes) são os sites que já tem uma cópia completa do arquivo e estão disponibilizando para a rede. Os "leechers" (leech, leacher, sugador) são os que estão baixando os pedacinhos, mas ainda não tem o arquivo completo.

É importante ajustar os limites de download e de upload no seu cliente, para não ocupar toda sua banda, caso contrário vai ter muita dificuldade em navegar a outros sites, enquanto está baixando um arquivo pela rede P2P.

Como em qualquer rede compartilhada, existem usuários de todos os níveis e interesses. Alguns só se interessam em baixar o arquivo e não querem compartilhar com os outros. Outros querem divulgar seus programas, e até virus, mascarados pela rede P2P. Todo cuidado é pouco quando se baixa algum arquivo pela rede.

A Internet

A Internet começou como uma forma de trocar idéias entre professores e pesquisadores na universidade. Hoje já evoluiu e está presente na vida de muita gente.

Básicamente a Internet é uma interligação de muitos computadores, alguns atuando como servidores e outros como clientes (alguns como os dois).

Os servidores contém informações que podem ser de diversos tipos:

  • Páginas estáticas em html;
  • Páginas dinâmicas, geradas com informações de um banco de dados;
  • Arquivos (programas, livros, etc.)
  • Serviços diversos.

Os serviços da Internet hoje, podem ser resumidos em:

  • Acesso WEB (navegação);
  • Email (correio eletrônico);
  • Transferêencia de arquivos (FTP, P2P, Torrent, etc.);
  • Forums de conversa (Chat, bate-papo, MSN, etc.);
  • Ligações telefônicas (Voice over IP - VOIP);

Spyware e Virus

Outro dia eu estava em uma loja que vende material de informática, e também faz manutenção em computadores e ouví o "técnico" dizer a um cliente que o computador dele estava cheio de virus. Os anti-spyware tinham detectado inumeros virus no computador.

Eu fiquei calado na hora, mas acho que o "técnico" estava tentando impressionar o cliente, e também usar de má fé em relação à ignorancia do cliente nas diferenças entre "Virus" e "Spyware".

Também não sou expert no assunto, mas vou tentar traçar algumas semelhanças e diferenças entre os dois tipos de programas.

  • Todos dois são programas que são instalados no seu computador por algum usuário (direta, ou indiretamente). Hoje em dia os virus normalmente se propagam por email e é necessário ler o email e/ou executar um arquivo atachado ao email para se infectar. Os spywares normalmente são instalados junto com outro programa, ou através de cookies em sites visitados na Internet.
  • Os virus normalmente fazem alguma coisa prejudicial a seu computador (formatam o HD, desabilitam funções, tornam a maquina lenta). Os spywares normalmente colhem informações sobre o computador e seus usuários, e assim quem se prejudica são os usuários. Podem colher informações simples (quais os sites mais visitados, que tipo de sites o usuário gosta de visitar, ou quais os produtos que compra pela Internet), ou informações sigilosas (contas e senhas de banco).
  • Existem também os "trojans" que se instalam e ficam na espreita até que encontram alguma coisa que acham útil (senha de banco) e depois enviam para o seu dono. Alguns trojans esperam um evento específico (data, acesso, senha) para entrar em ação, que pode até ser a formatação do HD.