Adicionar unidades de disco virtual a uma partição lógica do Linux
É possível adicionar unidades de disco virtuais de forma dinâmica a uma partição lógica do Linux® que utilize recursos do IBM® i. Este procedimento permite-lhe aumentar a capacidade de memória da partição lógica do AIX sempre que for necessário.
Sobre esta tarefa
Os discos virtuais simplificam a configuração do hardware no servidor porque não requerem que o utilizador adicione dispositivos físicos adicionais ao servidor para executar o Linux. Pode atribuir até 64 discos virtuais a uma partição lógica do Linux. Cada disco virtual suporta até 1000 GB de armazenamento. Cada disco virtual aparece ao Linux como uma unidade de disco real. Contudo, o espaço associado no sistema de ficheiros integrado do i é distribuído pelos discos pertencentes à partição lógica do i. A distribuição do armazenamento pelos discos proporciona as vantagens da protecção por paridade de dispositivos através do i. Por isso, não tem de utilizar recursos de memória e recursos de processamento adicionais configurando a protecção por paridade de dispositivos através do Linux.
O IBM i fornece a capacidade de adicionar dinamicamente discos virtuais a uma partição lógica do Linux. Pode atribuir espaço em disco no sistema de ficheiros integrado e disponibilizá-lo para o Linux sem reiniciar o servidor ou a partição lógica. O administrador do Linux também pode configurar o espaço em disco recentemente atribuído e disponibilizá-lo sem reiniciar o servidor.
Para adicionar discos virtuais de forma dinâmica a uma partição lógica Linux, conclua os seguintes passos:
Procedimento
- Se utilizar o IBM Navigator for i,
crie o espaço de armazenamento do servidor de rede utilizando o IBM Navigator for i.
- Expanda As Minhas Ligações (My Connections) > o servidor > Rede (Network) > Administração do Windows (Windows Administration).
- Faça clique com o botão direito do rato em Unidades de disco (Disk Drives) e seleccione Novo disco (New Disk).
- No campo Nome da unidade de disco, especifique o nome que pretende fornecer ao espaço de armazenamento do servidor da rede.
- No campo Descrição, especifique uma descrição significativa para o espaço de armazenamento do servidor da rede.
- No campo Capacidade, especifique o tamanho do novo espaço de armazenamento do servidor da rede em megabytes.
Consulte a documentação de instalação do distribuidor de Linux preferido para determinar o tamanho que pretende utilizar.
- Clique em OK.
- Avance para o passo 4.
- Se utilizar uma interface baseada em caracteres,
crie um espaço de armazenamento do servidor de rede ao utilizar a interface baseada em caracteres:
- Numa linha de comandos do IBM i, escreva o comando CRTNWSSTG e prima F4. É apresentado o ecrã Criar Espaço de Armazenamento NWS (CRTNWSSTG).
- No campo Espaço de armazenamento do servidor da rede, especifique o nome que pretende atribuir ao espaço de armazenamento do servidor da rede.
- No campo Tamanho, especifique o tamanho em megabytes para o novo espaço de armazenamento do servidor da rede. Consulte a documentação de instalação do distribuidor de Linux preferido para determinar o tamanho que pretende utilizar.
- No campo Descrição de texto, especifique uma descrição significativa para o espaço de armazenamento do servidor da rede.
- Prima Enter.
- Numa linha de comandos do IBM i, escreva o comando CRTNWSSTG e prima F4.
- Se utilizar o IBM Navigator for i,
ligue o espaço de armazenamento do servidor de rede utilizando o IBM Navigator for i.
- Expanda As Minhas Ligações (My Connections) > o servidor > Rede (Network) > Administração do Windows (Windows Administration).
- Faça clique em Unidades de Disco, faça clique com o botão direito do rato sobre um espaço de armazenamento do servidor da rede disponível e seleccione Adicionar Ligação.
- Seleccione o servidor ao qual pretende ligar o espaço de armazenamento do servidor da rede.
- Seleccione um dos tipos de acesso a dados disponíveis.
- Clique em OK.
- Avance para o passo 5.
- Se utilizar uma interface baseada em caracteres, ligue
o espaço de armazenamento do servidor de rede ao utilizar uma interface baseada em caracteres:
- Numa linha de comandos do IBM i, escreva o comando ADDNWSSTGL e prima F4.
É apresentado o ecrã Adicionar Ligação de armazenamento de servidor de rede (ADDNWSSTGL).
- No campo Descrição do servidor da rede, especifique o nome da descrição do servidor da rede (NWSD).
- No campo Ligação de armazenamento dinâmico, especifique *YES para disponibilizar dinamicamente espaço de armazenamento no servidor de rede para a partição lógica (ou seja, disponível sem reiniciar a partição lógica do Linux).
- No campo Número de sequência da unidade, especifique a posição de sequência de ligação que pretende utilizar.
- Prima Enter.
- Numa linha de comandos do IBM i, escreva o comando ADDNWSSTGL e prima F4.
- Se a partição lógica do Linux não estiver a ser executada, active a partição lógica do Linux. Não continue até que a partição lógica esteja em execução.
- Inicie sessão no Linux utilizando um nome de utilizador com privilégios de super-utilizador (raiz).
- Determine o ID do sistema central, o bus de SCSI e o número da unidade lógica (LUN, Logical Unit Number) da nova unidade de disco virtual. Pode listar os dispositivos existentes escrevendo o seguinte comando na linha de comandos do Linux:
cat /proc/scsi/scsi. O seguinte exemplo mostra a saída de dados possível do comando:
Neste exemplo,Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: IBM Model: VDASD NETSPACE Rev: 0001 Type: Direct-Access ANSI SCSI revision: 04NETSPACEcorresponde ao nome do espaço de armazenamento da rede relativo ao dispositivo apresentado. Procure o nome de um espaço de armazenamento de rede existente na partição lógica do Linux. Tenha em atenção a parte numérica do valor deHost:(ID do sistema central) e dos valores deChannel:(bus de SCSI) e deLun:(número da unidade lógica (LUN)) do espaço de armazenamento da rede existente. A nova unidade de disco virtual tem o mesmo ID do sistema central, bus de SCSI e LUN do espaço de armazenamento da rede existente. Por exemplo, se o espaço de armazenamento de rede existente corresponder ao apresentado no exemplo de saída anterior, a nova unidade de disco virtual terá uma ID de sistema central de0, um bus SCSI de0e um LUN de0. - Determine o ID de SCSI da nova unidade de disco virtual.
Pode listar os dispositivos existentes no formulário de tabela escrevendo os seguintes comandos na linha de comandos do Linux:
O seguinte exemplo mostra a saída amostra dos comandos:cd /proc/scsi/sg cat device_hdr; cat devices
Tenha em atenção os valores dehost chan id lun type opens qdepth busy online 0 0 0 0 0 2 30 0 1 0 1 0 0 0 0 30 0 1host(ID do sistema central),chan(bus de SCSI),id(ID de SCSI) elun(número da unidade lógica (LUN)) dos dispositivos existentes. Localize os dispositivos com o mesmo ID do sistema central, bus de SCSI e LUN da nova unidade de disco virtual (conforme determinado no passo anterior). Entre esses dispositivos, localize o dispositivo com o maior ID de SCSI. A nova unidade de disco virtual terá um ID de SCSI que seja um valor superior ao maior ID de SCSI existente. Por exemplo, se a nova unidade de disco virtual tiver uma ID de sistema central de0, um bus SCSI de0e um LUN de0e se os dispositivos na partição lógica do Linux corresponderem à lista do exemplo de saída anterior, a unidade de disco virtual terá uma ID SCSI de1. - Escreva o seguinte comando na linha de comandos do Linux para adicionar manualmente a unidade de disco
virtual:
echo "scsi add-single-device host chan id lun" > /proc/scsi/scsi.Utilize as seguintes informações para ajudar a familiarizar-se com os argumentos do comando:hosté o ID do sistema central.chané o bus de SCSI.idé o ID de SCSI.luné o LUN.
Por exemplo, se a nova unidade de disco virtual tiver um ID do sistema central0, um bus de SCSI0, um ID de SCSI1e um LUN0, escreva o comandoecho "scsi add-single-device 0 0 1 0" > /proc/scsi/scsina linha de comandos do Linux. - Na linha de comandos do Linux, escreva o seguinte comando para criar uma partição de disco na unidade de disco virtual:
fdisk /dev/sdb.É necessário ter privilégios de super-utilizador (raiz) para executar este comando.É apresentado o pedido de informaçãoCommand (m para ajuda):. - Escreva
pno pedido de informação para ver a tabela de partições actual da unidade de disco virtual.Por predefinição, a nova unidade de disco virtual apresenta uma única partição de disco no disco virtual.Por exemplo,Disk /dev/sdb: 64 heads, 32 sectors, 200 cylinders Units = cylinders of 2048 * 512 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 199 203760 6 FAT16 - Escreva
dna linha de comandos para eliminar a partição actual e, em seguida, crie uma nova.O formato predefinido para a partição do disco é FAT16. Não utilize uma partição de disco formatada como FAT16 na unidade de disco virtual.É apresentado o pedido de informaçãoPartition number (1-4):. - Escreva o número da partição do disco que pretende eliminar e prima Enter. Neste exemplo, escreva
1.O comandofdiskindica que a eliminação teve êxito apresentando a linha de comandos. - Escreva
npara criar uma nova partição de disco.É apresentado o pedido de informaçãoCommand action E extended P primary partition (1-4). - Escreva
ppara criar uma partição de disco principal no disco virtual e prima Enter.É apresentado o pedido de informaçãoPartition number (1-4):. - Escreva
1porque esta é a primeira partição no disco virtual e prima Enter.É apresentado o pedido de informaçãoFirst cylinder (1-200, default 1):. - Prima Enter para utilizar a predefinição de 1 para o primeiro cilindro do disco. Este processo utiliza todo o disco para esta partição de disco.É apresentado o pedido de informação
Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):. - Prima Enter para utilizar o valor predefinido de 200 para o último cilindro do disco. Este processo utiliza todo o disco virtual para esta partição.Nota: O tipo de partição corresponde à predefinição do Linux. Se necessitar de um tipo de disco diferente (como o Gestor de Volumes Lógicos (LVM, Logical Volume Manager) ou o Linux Expandido), escreva
tpara alterar o tipo de partição.O comandofdiskindica que a criação da partição teve êxito devolvendo a linha de comandos. - Escreva
wpara consolidar as alterações na estrutura do disco e prima Enter.O comandofdiskgrava as alterações na unidade de disco virtual. O comandofdiskapresenta a seguinte mensagem de diagnóstico:
Após a execução da operação, o comando fdisk devolve a linha de comandos.The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. - Formate a partição do disco utilizando o comando Linux mkfs. Existem vários parâmetros opcionais para o comando mkfs, mas geralmente as predefinições cumprem a maior parte das utilizações do disco. Para formatar a partição de disco criada nos passos anteriores, certifique-se de que tem sessão iniciada com privilégios de super-utilizador (raiz) e escreva o seguinte comando numa linha de comandos do Linux:
Uma vez que existe uma única partição do disco no segundo disco virtual, o nome do disco é /dev/sdb1 (osdb indica que é o segundo disco e o 1 indica que é a partição 1). O comando mkfs apresenta as seguintes mensagens de diagnóstico:mkfs /dev/sdb1mke2fs 1.28 (31-Aug-2002) Fileserver label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 51200 inodes, 204784 blocks 10239 blocks (5.00%) reserved for the super user First data block=1 25 block groups 8192 blocks per group, 8192 fragments per group 2048 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Writing inode tables: done Writing superblocks and fileserver accounting information: done This fileserver will be automatically checked every 29 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. - Escreva o seguinte comando para criar um directório que pode utilizar para aceder ao novo ficheiro:
mkdir /mnt/data - Escreva o seguinte comando para montar a unidade de disco virtual no novo directório:
mount /dev/sdb1 /mnt/data. - Adicione uma entrada no ficheiro /etc/fstab utilizando um editor de texto do Linux, tal como vi. Por exemplo,
/dev/sdb1 /mnt/data ext2 defaults 1 1. Esta entrada monta o disco virtual de cada vez que reinicia o Linux.