Não é assim que se configura um arquivo de troca?
Eu acho que você perdeu um passo no meio chmod
e swapon
:
mkswap /mnt/sda2/swapfile
Quanto ao erro oxymoromic ...
swapon: / mnt / sda2 / swapfile: falha no cabeçalho de troca de leitura: Sucesso
O que isso significa literalmente é que há um erro no swapon
código, mas não necessariamente relacionado ao seu funcionamento primário.
As funções da biblioteca C geralmente usam errno , uma variável global que armazena um código de erro. A própria função retornará um valor indicando que ocorreu um erro (qualquer erro), e a natureza exata desse erro será armazenada errno
. A idéia é que, se você receber uma indicação de um erro, poderá verificar o valor de errno
para ver exatamente o que é.
Há também uma strerror()
função de biblioteca que pega um valor errno (são inteiros) e retorna uma string de linguagem humana relacionada a ele. Uma Success
delas é , que corresponde a um código de erro 0 (ou seja, nenhum erro).
Então, quando você vê algo assim, indica um erro como:
- Obtendo um erro e, em seguida, chamando outra função (com sucesso) que redefine errno para 0 nos bastidores e, em seguida, usa errno para determinar as especificidades do erro que você recebeu antes de chamar a segunda função.
E / ou
- Passar
strerror()
uma variável que deveria ter sido atribuída ao valor de errno em algum momento (para impedir que o erro anterior acontecesse), mas não foi.
mkswap
eerrno
.