Usando dispostividos de armazenamento locais

Quando falo em “dispositivos de armazenamento”, estou falando em CD-ROMs (tanto CD-ROMs IDE, quanto USB), pendrives (e HDs ligados na porta USB) e disquetes. Por enquanto ainda não são suportados gravadores de CD nas estações, mas nada impede que os usuários nas estações gravem CDs usando o gravador instalado no servidor. Em alguns ambientes, isso pode ser até desejável, pela questão do controle.

O LTSP 4.2 utiliza o módulo fuse e o udev para permitir acesso aos dispositivos nas estações. O fuse é um módulo que permite montar sistemas de arquivos usando um login normal de usuário, ao invés do root, enquanto o udev cuida da detecção de pendrives e outros dispositivos conectados na porta USB.

Comece instalando os pacotes “fuse-utils“, “libfuse2” e “libx11-protocol-perl“, que contém os utilitários usados:

# apt-get install fuse-utils libfuse2 libx11-protocol-perl

O passo seguinte é verificar se o módulo fuse está disponível. Ele vem incluído por padrão a partir do Kernel 2.6.14, de forma que muitas distribuições atuais (incluindo o Kurumin 6.0 e o Ubuntu 5.10 em diante) já o trazem instalado:

# modprobe fuse

Caso você esteja usando uma distribuição antiga, ainda baseada no Debian Sarge (a versão anterior ao Etch) pode instalá-lo usando o module-assistant, disponível via apt-get:

# apt-get install fuse-source module-assistant
# module-assistant auto-install fuse
# modprobe fuse
(note que o pacote “fuse-source” não está disponível no Etch e nas versões atuais do Ubuntu, esta receita é apenas para distribuições baseadas no Sarge)

Em qualquer um dos dois casos, adicione a linha “fuse” no final do arquivo “/etc/modules“, de forma que ele seja carregado durante o boot:

# echo ‘fuse’ >> /etc/modules

Crie em seguida o arquivo “/etc/fuse.conf“, contendo a linha “user_allow_other”:

# echo ‘user_allow_other’ > /etc/fuse.conf

Para que os usuários tenham acesso aos dispositivos, é necessário adicionar cada um ao grupo “fuse”, de modo que eles tenham permissão para usá-lo. Normalmente você faria isso usando o comando “adduser”, como em:

# adduser joao fuse

Fazer isso manualmente para cada usuário não é viável em um servidor com muitos usuários já cadastrados. Você pode usar o script abaixo para cadastrar todos os usuários de uma vez:

# cd /home
# for i in *; do adduser $i fuse; done

Falta agora apenas instalar o pacote “ltsp-localdev”. Ele é o mesmo pacote necessário para ativar o suporte a swap. Se ainda não está com ele instalado, acesse o http://ltsp.mirrors.tds.net/pub/ltsp/utils/, baixe o pacote “ltsp-server-pkg-debian_0.1_i386.deb” (a versão para distribuições derivadas do Debian) e instale-o via apt-get:

# dpkg -i ltsp-server-pkg-debian_0.1_i386.deb
(veja a observação sobre erros na instalação no tópico sobre swap)

Isso conclui a configuração do servidor. Abra agora o arquivo “/opt/ltsp/i386/etc/lts.conf“, onde vamos adicionar a configuração dos clientes, que consiste em duas linhas. A primeira é a genérica “LOCAL_STORAGE = Y”, enquanto a segunda indica o módulo que será carregado (no cliente) a fim de ativar o suporte a USB.

Existem três opções possíveis. Em placas-mãe recentes, com portas USB 2.0, é usado o módulo “ehci-hcd”. Em placas antigas, é usado o módulo “ohci-hdc” ou “uhci-hcd”. Teste os três até encontrar o que funciona. O “ohci-hcd” é o que funciona na maioria das placas.

As duas linhas vão dentro da sessão referente a cada estação, como em:

[ws001] XSERVER = via
X_MOUSE_PROTOCOL = “IMPS/2”
X_MOUSE_DEVICE = “/dev/input/mice”
X_MOUSE_RESOLUTION = 400
X_MOUSE_BUTTONS = 5
X_ZAxisMapping = “4 5”
LOCAL_STORAGE = Y
MODULE_01 = ohci-hcd

Depois de fazer todas as alterações, reinicie as estações e faça o teste. Originalmente é usado um ícone em .svg do Gnome para os ícones dos dispositivos no desktop, o que faz com que eles apareçam com ícone fa folha em branco. Para trocar o ícone por outro, abra o arquivo “/usr/sbin/lbus_event_handler.sh” e substitua a linha:

ICON=${FOLDER_ICON:-gnome-fs-directory.svg}

Por outra com um ícone de sua preferência (os ícones disponíveis vão na pasta /usr/share/icons), como em:

ICON=”hdd_unmount.png

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X