Yet Another Blog

Entradas com Etiqueta ‘Mac’

Time Capsule Home Made

Segunda-feira, 17 de Dezembro de 2012

Há 4 anos atrás publiquei um artigo descrevendo como usar a Time Machine com SMB. Usei essa estratégia para conseguir usar o meu router com dispositivo de backup. Na altura referi a tentativa frustrada de usar o protocolo AFP (através do Netatalk) em vez do SMB, visto que o AFP é suportado de forma mais transparente que o SMB pela Time Machine.

Com a nova funcionalidade introduzida na última versão do MacOSX (10.8), que permite definir vários dispositivos de backup, decidi configurar uma máquina Linux à qual tenho acesso como um dispositivo de backup alternativo. E também decidi tentar novamente o Netatalk, de modo a simplificar ao máximo o processo de backup. Desta vez, e com a flexibilidade adicional de estar a usar um PC em vez de um router, fui bem sucedido :) Neste artigo vou então descrever os passos necessários para configurar um PC com Linux (Debian 6 neste caso) para funcionar como uma Time Capsule.

O primeiro passo consiste em instalar o Netatalk na máquina com Linux. É recomendável instalar a versão 3, visto que adicionou algumas novas funcionalidades, que são úteis quando se pretende usar a Time Machine. A versão disponibilizada nos repositórios oficiais do Debian é bastante antiga (2.2), pelo que vamos instalar o Netatalk compilando o código fonte. Assim, começa-se por fazer o download da última versão do Netatalk (3.0.2, na presente data) a partir do site oficial do projecto. Isto deverá colocar no vosso PC um ficheiro comprimido, que, obviamente, é necessário descomprimir. Depois disto, vamos então passar à compilação do Netatalk. Para tal, temos de abrir o Terminal (no meu caso, disponível em Applications > Accessories > Terminal), e mudar para a pasta que contém os ficheiros descomprimidos (usando o comando cd /caminho/da/pasta/). Antes de passarmos à compilação, temos que instalar algumas dependências. Usando uma aplicação como o Synaptic, ou o apt-get directamente no Terminal, é necessário instalar os seguintes pacotes (e respectivas dependências):

  • libacl1
  • libacl1-dev
  • libdb-dev
  • libldap2-dev
  • libavahi-client-dev
  • libgcrypt11-dev

O último é particularmente importante para quem usa a versão 10.7 ou posterior do MacOSX, pois na ausência do mesmo irão muito provavelmente obter erros de autenticação quando se tentarem ligar ao dispositivo de backup.

Podemos agora passar à compilação e instalação do Netatalk, que é feita usando os seguinte comandos:

./configure --enable-quota --enable-zeroconf --with-init-style=debian
make
sudo make install

No primeiro comando definimos algumas opção de compilação. O enable-quota servirá para limitarem o espaço que será disponibilizado para backup (caso não queiram disponibilizar o espaço todo disponível no volume). O enable-zeroconf permitirá que o volume de rede seja automaticamente encontrada pelo MacOSX. A última opção é para que as scripts de inicialização automática do Netatalk quando o SO (Linux) arranca sejam também geradas.
O último comando, que instala o Netatalk, necessita de permissões de administrador, e pode ser necessário introduzir a sua password.

Para termos a certeza que o Netatalk irá sempre arrancar com o SO, deve-se correr o comando sudo update-rc.d netatalk defaults no Terminal.

Depois disto, é só configurar o Netatalk. O ficheiro de configuração está localizado em /usr/local/etc/afp.conf, vamos editá-lo usando o comando sudo gedit /usr/local/etc/afp.conf. Mais uma vez vai precisar de permissões de administrador, e poderá ser necessário introduzir a sua password. Em vez do gedit pode utilizar outro editor qualquer da sua preferência. Abaixo segue uma configuração minimalista.

[Global]
; Global server settings
zeroconf = yes
uam list = uams_dhx2.so

[time-machine]
path = /path/para/paste/de/backup/
time machine = yes
vol size limit = 80000

Primeiro temos um conjunto de configurações globais. A opção zeroconf convém activar para que o volume seja mais facilmente detectado no MacOSX. A opção seguinte define o mecanismo de autenticação, e é necessário definir esta opção nas versões mais recentes do MacOSX (10.7+).
Depois temos as configurações do volume de backup, ao qual chamei time-machine. Primeiro definimos o caminho para o pasta que será partilhada (e onde serão armazenados os backups). Depois indicamos que o volume suporta Time Machine. E por último definimos o tamanho do volume (que será o espaço disponível para a Time Machine usar).

Existem muitas outras opções de configuração. Para uma descrição exaustiva das mesmas, podem aceder a este link.

Depois de concluída a configuração, deverá ser suficiente ter o mac (que pretendemos fazer backup) na mesma rede que o sistema Linux, e ir às preferências da Time Machine para adicionar um novo dispositivo de backup, e deverão ter lá um volume chamado time-machine (ou com o nome que vocês escolheram).

Extra: Cifrar os Backups
O Mountain Lion disponibiliza a opção de cifrar os backups ao adicionarem o volume nas preferências da Time Machine. Em versões anteriores podem usar o este tutorial para obterem backups cifrados.

Mac OS X Lion: breve review

Sábado, 8 de Outubro de 2011

Apesar de ter instalado o Lion num disco esterno há cerca de um mês, só na passada semana é que migrei definitivamente para a nova versão do Mac OS X. Não obstante as muitas novidades anunciadas, a verdade é que não tinha grandes expectativas para a nova versão do SO da Apple, onde estava à espera de algumas funcionalidades interessantes, mas também de alguns aspectos negativos. Comecemos então pelos pontos negativos…

Uma das coisas que mais me desagradou no Lion, foi a remoção do iSync. Basicamente, isto significa que acabaram as sincronizações de contactos e calendário com a maior parte dos telemóveis (telemóveis que usam o protocolo SyncML). Ainda relacionado com os contactos e calendário, tivemos também algumas mudanças no Address Book e iCal, nomeadamente ao nível do interface gráfico. Sempre admirei o Mac OS X pela simplicidade do seu interface gráfico, simplicidade que deixou de existir nestas aplicações. Qualquer um destes problemas pode ser contornado, aproveitado as versões anteriores das aplicações, mas é apenas contornar o problema…

Outra novidade foi o Mission Control, que veio substituir o Exposé e o Spaces. Pessoalmente preferia a solução anterior, que me permitia facilmente mudar de aplicação/janela, mesmo quando esta estava a correr num ambiente diferente, ou também mudar as aplicações de ambiente. Actualmente, temos pouco controlo sobre as aplicações/janelas que não estão no ambiente actual.

O Mail também disponibiliza uma nova forma de organização da interface gráfica. Ainda estou a tentar habituar-me a esta nova forma de organização, mas parece-me que faz uma má gestão do espaço, e é provável que vá voltar ao esquema antigo.

Entre as coisas que me agradaram, está a nova versão do iChat, que juntas várias contas na mesma janela, e que me fez abandonar o Adium (e já agora, as contas MSN).

Neste última versão do SO passou também a ser possível criar disco cifrados, o que é bastante útil para manter os meus discos de backup um pouco mais seguros. Esta funcionalidade permite cifrar os backups feitos com o Time Machine. Infelizmente, parece-me que esta funcionalidade não funciona quando temos mais do que uma partição num mesmo disco… O FileVault tem também uma nova versão, que parece já funcionar decentemente com o Time Machine (mas é algo que ainda não experimentei). Ainda relativamente ao Time Machine, temos agora a possibilidade de manter backups locais, ou local snapshots (para quando não estamos ligados à unidade de backup). Nada de muito relavante, visto que no Snow Leopard já tinha uma partição local para backups do Time Machine (agora há a vantagem de não termos que configurar nada, nem trocar de unidade de backup quando nos ligamos à unidade de backup externa). Para já, vejo três aspectos a melhorar: a possibilidade de definir o intervalo temporal entre backups (até agora apenas consegui mudar este intervalo para os backups não locais), a possibilidade de definir tamanho máximo usado por estes backups, e a possibilidade de copiar dos backups locais para a unidade de backup externa quando esta é ligada.

O novo Mac OS X é também menos restritivo no que diz respeito a máquinas virtuais, e é agora permitido ter máquinas virtuais com a versão normal do SO (anteriormente apenas era possível com a versão servidor). Isto é útil para manter um ambiente de testes, permitindo manter o SO principal (não virtualizado) mais limpo.

Para terminar, referia mais algumas novidades bastante publicitadas, mas que me parece pouco relevantes: o Resume, que para alguns utilizadores poderá ser bastante útil, mas no meu caso não me tem servido para nada; o Launchpad, que me parece inútil (o Spotlight é bem mais prático); e o Resume, que ainda não é suportado por várias aplicações.

Resumindo, apesar de ter o preço acessível, a verdade é que o SO pouco trás de novo…

Google Chrome

Quarta-feira, 17 de Março de 2010

Há umas semanas atrás decidi dar uma oportunidade ao Google Chrome, e comecei a usá-lo como browser principal, tendo praticamente deixado de usar o Safari.

Umas das razões que me levou a experimentar o Chrome foi o consumo de memória completamente absurdo do Safari. Como passava semanas sem encerrar o Safari, facilmente atingia consumos de memória da ordem dos 500MB, e o pior de tudo é que mesmo depois de fechar vários separadores (ou mesmo todos), o consumo de memória continuava elevado. Tipo, parece-me aceitável que gaste 300 ou até 400MB de memória quando estão umas dezenas de páginas aberta, mas depois de as fechar, esperava que o consumo de memória baixasse para valores próximos de quando o Safari arranca, ou de quando acabamos de abrir uma ou duas páginas (algo na ordem dos 100MB parece-me aceitável). Mas isto não acontece, e várias vezes tinha o Safari sem qualquer página aberta a gastar mais de 400MB.

Nos testes que fiz, este parece ser um problema que o Chrome consegue resolver. A verdade é que ao usar vários processos separados para abrir as páginas, torna-se mais simple fazer a gestão da memória, e tendo em conta que depois de fecharmos todas a janelas, os processos a elas associados terminam (fazendo com que toda a memória que o processo estava a consumir seja libertada), a maior parte da memória é efectivamente libertada.

Um dos problemas que encontro no Firefox para MacOSX é o facto de este não estar bem integrado no SO. Não usa os certificados do SO, não usa o sistema de gestão de palavras-passe SO, não usa o corrector ortográfico do SO, não usa as definições de proxy do SO, etc. Estas foram algumas das razões que me levaram a deixar de usar o Firefox no MacOSX.
Pensei que o Chrome fosse apresentar o mesmo problema, mas felizmente estava enganado, e parece estar razoavelmente integrado no SO.

Por outro lado, descobri hoje que o Chrome possui algumas funcionalidades bastante interessantes ao nível do controlo de cookies, JavaScript e plugins (Flash). As primeiras eram duas das coisas que mais falta me faziam no Safari (para bloquear o Flash já tinha arranjado um plugin).
Relativamente aos cookies, tem a opção de perguntar se quero aceitar ou bloquear os cookies, e tem a opção de guardar a opção para aquele site, permitindo-me construir facilmente uma lista de sites onde quero permitir (ou não) a utilização de cookies.
Ao nível de JavaScript permite-me desactivá-lo, tendo uma lista de excepções para indicar sites onde este deve ser permitido (penso que é algo semelhante ao que o NoScript faz).
Quanto ao Flash, o funcionamento é semelhante ao do JavaScript.
Adicionalmente, sempre que uma página é impedida de usar cookies, JavaScript ou Flash, aparece um ícone na barra de endereço, que permite facilmente activar a funcionalidade para aquele site (infelizmente para já apenas permite adicionar o site à lista de excepção, e não dar autorizações temporárias).

É claro que o Chrome está longe de ser perfeito, tem alguns bugs (nada de admirar, visto que estou a usar a versão de desenvolvimento), e faltam algumas funcionalidades importantes, como o Java e a possibilidade de visualizar ficheiros PDF directamente. Ainda assim, estou bastante satisfeito.

Contributo do iPhone

Quinta-feira, 4 de Março de 2010

Pessoalmente nunca fui grande fã do iPhone. Apesar de ser um mac user, e de achar que o iPhone tem uma usabilidade bastante acima da média quando comparado com outros dispositivos do mesmo género, nunca foi um produto que eu achasse que valia a pena comprar.

Apesar de tudo, hoje descobrir um motivo para gostar do iPhone. Parece que a Virgin America decidiu deixar de usar flash no seu site devido ao facto do iPhone não o suportar.

Ou seja, o iPhone poderá contribuir para que os web developers comecem a pensar se realmente precisam de usar flash e recorram a este apenas quando é mesmo necessário.

Adenda: parece que há mais sites que se preparam para seguir o mesmo caminho

Widget DicionarioPT agora com conjugação de verbos

Terça-feira, 19 de Maio de 2009

Era uma das funcionalidades que temos disponível no site da Priberam, mas que não estava acessível no widget. Agora este problema foi resolvido, e os links que permitem conjugar um verbo já estão a funcionar :)

Entretanto, aproveitei para criar uma página para o widget, onde está disponível um changelog (para além da descrição do widget, e onde colocarei outras informações relevantes).

Click to Flash

Sábado, 16 de Maio de 2009

Há uns anos atrás, comecei a usar uma extensão para o Safari chamada SafariStand. Já não sei exactamente qual o motivo que me levou a usar esta extensão, mas com o tempo comecei a dar cada vez menos importância às funcionalidade por esta disponibilizadas. Actualmente, penso que a única funcionalidade que realmente me dava jeito era a capacidade de bloquear flash nos sites, sendo estes conteúdos apenas carregados quando clicasse neles.

Como o Stand é uma extensão um pouco pesada, decidi procurar por outras extensões que me permitissem bloquear flash no Safari, e encontrei uma extensão chamada Click to Flash. Tal como o nome indica, serve para bloquear flash, e possuiu mais algumas opções neste campo quando comparado com o Stand. Por exemplo, permite indicar sites em que o flash não é bloqueado, ou carregar todos os conteúdos em flash de uma página de uma só vez.

Para aqueles que usam Safari/MacOSX, e que, tal como eu, se sentem incomodados com grande parte das animações flash que se vêem nos sites, penso que é uma extensão que vale a pena experimentar.

Mais um widget – GuiaTV

Sexta-feira, 15 de Maio de 2009

Como parece que também havia bastante gente a usar o widget GuiaTV (tal como o Dicionario, este também da autoria do José Coelho), resolvi revê-lo, de forma a tentar resolver os problemas que tinha, e parece que ficou novamente a funcionar :)

Quem estiver interessado, pode fazer o download aqui.

Dicionário de português – widget para MacOSX

Sexta-feira, 24 de Abril de 2009

O Dicionário era um dos widgets que mais falta me fazia no MacOSX. Infelizmente, há alguns dias atrás, depois de algumas alterações no site da Priberam (donde o widget extraía a informação), deixou de funcionar. Adicionalmente, o autor (José Coelho) também deixou de manter o widget.

Resolvi então dedicar algum tempo a analisar o código fonte do widget, de modo a tentar resolver o problema.

Nunca tinha trabalhado no desenvolvimento de widgets, nem com JavaScript (a linguagem mais relevante para este widget), mas a Apple disponibiliza uma excelente ferramenta para este tipo de tarefa, o Dashcode (que infelizmente só descobrir depois de já ter perdido umas horas a usar o Vim como editor, e a Console para ver os erros), e o JavaScript também é relativamente simples (a minha maior dificuldade foi não ter encontrado uma API com as funções que poderia usar).

E assim, aos fim de alguns dias, lá consegui colocar o widget novamente funcional.

Quem estiver interessado, pode fazer download do widget aqui: DicionarioPT.
Também criei uma página com informações sobre o widget aqui.

25 anos

Sábado, 24 de Janeiro de 2009

Time Machine no Tiger ou no Linux

Segunda-feira, 15 de Setembro de 2008

Há algum tempo atrás, depois de começar a usar um MacBook como a minha máquina principal, decidi voltar a meter o Tiger no meu PowerBook. Tendo em conta o pouco uso que lhe dou actualmente, chega perfeitamente. A única funcionalidade que senti mesmo falta, foi a Time Machine.

Tendo em conta que era uma funcionalidade que também me dava jeito no Linux, decidi investigar um pouco, para ver se encontrava alguma alternativa. Depois de ler isto e isto, consegui perceber o funcionamento da Time Machine. As scripts apresentadas nos sites indicados, tinha o problema de não fazer uma gestão tão elaborada dos backups antigos como a Time Machine. Assim, decidi fazer uma script um pouco mais completa.

O resultado final pode ser encontrado aqui.

É uma script Perl, que faz backups incrementais (usando o rsync), e que apenas apaga os antigos, caso seja usada uma opção disponível para esse efeito. A estratégia seguida para apagar backups antigos é semelhante à seguida na Time Machine: backups das últimas 24 horas, backups diários dos últimos 30 dias, e backups semanais no resto (no entanto, alterando algumas varáveis na script, podemos adaptar isto às nossas necessidade).

Para ter a script a correr de hora em hora, é só adicionar uma entrada no cron (o ideal seria usar o launchd, mas estava a ter alguns problemas com esta alternativa).

NOTA: A script foi testada em Linux (Debian 4.0) e em MacOSX, estando, aparentemente, a funcionar sem problemas. Ainda assim, recomendo algum cuidado com a sua utilização, pois pode conter bugs. Deverá funcionar em qualquer sistema UNIX, mas não testei em mais nenhum, para além dos 2 anteriormente citados.