Comando mkswap do Linux
O mkswap configura uma área de troca do Linux.
Descrição
O mkswap configura uma área de troca do Linux em um dispositivo ou em um arquivo .
O argumento do dispositivo geralmente será uma partição de disco (algo como / dev / sdb7 ), mas também pode ser um arquivo. O kernel do Linux não analisa os IDs das partições, mas muitos scripts de instalação assumem que as partições do tipo hexadecimal 82 ( LINUX_SWAP ) devem ser partições de troca. (O Solaris também usa esse tipo. Cuidado para não matar acidentalmente suas partições Solaris, se houver alguma, misturando-as!)
O parâmetro size é supérfluo, mas incluído para compatibilidade com versões anteriores . (Ele especifica o tamanho desejado da área de troca em blocos de 1024 bytes . O mkswap usará toda a partição ou arquivo, se for omitido. Especificando que é muito perigoso: um erro de digitação pode destruir seus dados. REPETIR, TENHA MUITO CUIDADO AO ESPECIFICAR A PARTIÇÃO TAMANHOS MANUALMENTE! UM TIPO PODE DESTRUIR OS DADOS NO SEU DISCO! )
Após criar a área de troca, você precisa do comando swapon para começar a usá-lo. Geralmente, as áreas de troca são listadas em / etc / fstab para que possam ser usadas no momento da inicialização por um comando swapon -a em algum script de inicialização.
Informações e avisos importantes
O cabeçalho de troca não toca no primeiro bloco. Um carregador de inicialização ou etiqueta de disco pode estar lá, mas não é uma configuração recomendada. A configuração recomendada é usar uma partição separada para uma área de troca do Linux.
O mkswap , como muitos outros utilitários do tipo mkfs , apaga o primeiro bloco de partição para tornar invisível qualquer sistema de arquivos anterior.
No entanto, o mkswap se recusa a apagar o primeiro bloco em um dispositivo com uma etiqueta de disco ( SUN , BSD etc.) e em um disco inteiro (por exemplo, / dev / sda ).
Sintaxe
mkswap [ opções ] dispositivo [ tamanho ]
Opções
-c , –check | Verifique o dispositivo (se for um dispositivo de bloco) quanto a blocos defeituosos antes de criar a área de troca. Se algum bloco defeituoso for encontrado, a contagem será impressa. |
-f , –force | Vá em frente mesmo que o comando seja estúpido. Força a criação de uma área de troca maior que o arquivo ou partição de onde ele reside.
Além disso, sem essa opção, o mkswap se recusará a apagar o primeiro bloco em um dispositivo com uma tabela de partição e em um disco inteiro (por exemplo, / dev / sda ). |
-L , – rótulo | Especifique um rótulo para o dispositivo, para permitir a troca por rótulo. |
-p , –pagesize size | Especifique o tamanho da página (em bytes) a ser usado. Essa opção geralmente é desnecessária; O mkswap lê o tamanho do kernel. |
-U , –uuid UUID | Especifique o UUID a ser usado. O padrão é gerar um UUID . |
-v , –swapversion 1 | Especifique a versão do espaço de troca. (No momento, esta opção não faz sentido, pois a opção -v 0 antiga tornou-se obsoleta e agora apenas é suportada -v 1. O kernel não suporta o formato de espaço de troca v0 desde 2.5.22 (junho de 2002). A nova versão v1 é desde 2.1.117 (agosto de 1998).) |
-h , –help | Exibir texto de ajuda e sair. |
-V , –version | Exibir informações da versão e sair. |
Notas
O tamanho útil máximo de uma área de troca depende da arquitetura e da versão do kernel. São aproximadamente 2 GiB no i386 , PPC , m68k e ARM , 1 GiB no sparc , 512 MiB nos mips, 128 GiB no alfa e 3 TiB no sparc64. Para kernels após 2.3.3 (maio de 1999 ), não existe essa limitação.
Observe que, antes da versão 2.1.117, o kernel alocava um byte para cada página, enquanto agora alocava dois bytes, de modo que usar uma área de troca de 2 GiB pode exigir 2 MiB de memória do kernel.
Atualmente, o Linux permite 32 áreas de troca (isso era 8 antes do Linux 2.4.10 (setembro de 2001)). As áreas em uso podem ser vistas no arquivo / proc / swaps (desde 2.1.25 (setembro de 1997)).
O mkswap recusa áreas menores que 10 páginas.
Se você não souber o tamanho da página que sua máquina usa, poderá procurar com ” cat / proc / cpuinfo ” (ou não – o conteúdo deste arquivo depende da arquitetura e da versão do kernel). Para configurar um arquivo de troca, é necessário criar esse arquivo antes de inicializá-lo com mkswap , por exemplo, usando um comando como:
dd se = / dev / zero de = swapfile bs = 1024 count = 65536
Observe que um arquivo de troca não deve conter nenhum furo (portanto, usar cp para criar o arquivo, por exemplo, não é aceitável).
Exemplos
mkswap / dev / sdc1
Prepara a partição / dev / sdc1 , configurando-a para uso como uma partição de troca. Esse espaço pode ser ativado usando o comando swapon .
Comandos relacionados
fdisk – Um utilitário de particionamento de disco.
swapon – Habilite uma área de troca do Linux.