Archive for the ‘Solaris’ category

Liberando espaço no “/var” do Solaris

agosto 3rd, 2008

O diretório ou partição, “/var” no Solaris incha facilmente. Isto acontece devido aos diretórios abaixo de “/var/sadm” serem constantemente alimentados com informações de pacotes e atualizações. Quando se tem um bom espaço físico disponível para o “/var”, esta característica não é um problema, pelo contrário; o sistema, silenciosa e providencialmente, mantém cópias de segurança nos diretórios “/var/sadm/pkg/*/save”, isto para que, caso algum update ou patch não funcione adequadamente, o administrador tem a possibilidade de restaurar o ambiente do jeito que estava antes destes terem sido aplicados. Porém, quando se tem o Solaris instalado em máquinas mais antigas (como é o caso da minha Ultra Sparc 10) com o espaço para a partição/diretório “/var” limitado, esta característica atrapalha. Uma forma de contornar este esgotamento constante do recurso em questão é dar uma “limpada” nestas pastas:

  1. Verifique a pasta “/var/sadm/spool”; ali estão os patchs que devem ser aplicados manualmente e os arquivos ali contidos podem e devem ser eliminados após a instalação.  Isto já libera um montante considerável de espaço.
  2. Limpe as pastas “/var/sadm/pkg/*/save” apagando os arquivos “undo.Z” e “obsolete.Z”, da seguinte forma:
root@sun4u_nodeF:~# find /var/sadm/pkg -name obsolete.Z -exec rm {} \;
root@sun4u_nodeF:~# find /var/sadm/pkg -name undo.Z -mtime +90 -exec rm {} \;

No primeiro comando busquei arquivos obsolete.Z que é um backup do backup undo.Z. Este arquivo é gerado quando um patch ou update já tenha sido feito anteriormente; portanto, é dispensável. No segundo “find” busquei os arquivos undo.Z que são as cópias de segurança das quais falei há pouco. Busquei os arquivos que foram gerados há noventa dias ou mais e os eliminei. Se em noventa dias não houve problemas, muito provavelmente o path/update é estável.

Pode-se colocar estes comandos no “cron” e executá-los mensalmente, assim constantemente haverá espaço disponível para novas atualizações.

Bom, estas foram duas soluções que eu encontrei fuçando na net para um problema chato que estava tendo, caso queira utilizar, faça-o por sua conta e risco. Infelizmente as informações sobre estes arquivos mencionados “obsolete.Z” e “undo.Z”, estão disponíveis somente para usuários que pagam suporte técnico para a Sun; eu na qualidade de usuário doméstico do Solaris não tenho/tive acesso à informações mais precisas.

Manual installation of patches on Solaris

fevereiro 29th, 2008

Muitos patchs/atualizações baixadas pelo update manager do Solaris precisam ser aplicados e ou instalados manualmente. A ferramenta informará quando isto for necessário. Segue um exemplo de como executar a tarefa:

root@sun4u_nodeF:~# cd /var/sadm/spool/
root@sun4u_nodeF:spool# jar xvf 121430-22.jar
root@sun4u_nodeF:spool# cd 121430-22

Verifique se os arquivos : prepatch ou postpatch existem.  Se existir um dos dois ou os dois, eles precisam ter permissão de execução.

root@sun4u_nodeF:121430-22# chmod 755 prepatch

E/Ou:

root@sun4u_nodeF:121430-22# chmod 755 postpatch

Agora é só aplicar o patch:

root@sun4u_nodeF:121430-22# patchadd /var/sadm/spool/121430-22

Host “unknown” in Solaris with DHCP

fevereiro 25th, 2008

Dica rápida:

Quando se configura o Solaris para obter o IP de um servidor DHCP que não fornece o nome de host; como é o caso do meu roteador LinkSys (e da maioria dos roteadores de pequeno porte), o sistema fica nominado como “unknown” ou “desconhecido” (em bom português). Há uma solução simples para isto, que é forçar um nome de host criando/editando o arquivo “/etc/nodename” e deixando-o com o nome que se deseja utilizar, exemplo:

root@sun4u_nodeF:~# vi /etc/nodename
sun4u_nodeF
~
~
~
~
:wq
root@sun4u_nodeF:~#

Durante a recarga do sistema, já será mostrado o nome de host setado corretamente. É necessário informar ao DHCPAGENT que você tem um hostname para esta placa e que ele deve informar isto ao servidor DHCP:

root@sun4u_nodeF:~# vi /etc/defaults/dhcpagent

Altere a seguinte linha:

#REQUEST_HOSTNAME=no

Para:

REQUEST_HOSTNAME=yes

Edite os arquivos /etc/hostname.<interface> e coloque o seguinte:

root@sun4u_nodeF:~# vi /etc/hostname.hme0
inet sun4u_nodeF
~
~
~
~
:wq
root@sun4u_nodeF:~# reboot

Isto informará ao DHCP o hostname corretamente e o sistema está corretamente nomeado.