Разве это не как настроить файл подкачки?
Я думаю , что вы пропустили шаг между ними chmod
и swapon
:
mkswap /mnt/sda2/swapfile
Что касается оксиморомной ошибки ...
swapon: / mnt / sda2 / swapfile: не удалось прочитать заголовок подкачки: успешно
Это буквально означает, что в swapon
коде есть ошибка , но не обязательно связанная с ее основным функционированием.
Функции библиотеки C часто используют errno , глобальную переменную, в которой хранится код ошибки. Сама функция вернет значение, указывающее, что произошла ошибка (любая ошибка), и точный характер этой ошибки будет сохранен в errno
. Идея состоит в том, что если вы получаете указание на ошибку, вы можете проверить значение, errno
чтобы точно увидеть, что это такое.
Также есть strerror()
библиотечная функция, которая примет значение errno (они являются целыми числами) и вернет относящуюся к нему строку человеческого языка. Одним из них является то Success
, что соответствует коду ошибки 0 (т. Е. Нет ошибки).
Поэтому, когда вы видите что-то подобное, это указывает на такую ошибку, как:
- Получаем ошибку, затем вызываем другую функцию (успешно), которая сбрасывает errno до 0 за кулисами, затем используем errno, чтобы определить особенности ошибки, которую вы получили до вызова второй функции.
И / или
- Передача
strerror()
переменной, которой в определенный момент должно было быть присвоено значение errno (чтобы предотвратить возникновение предыдущей ошибки), но это не так.
mkswap
иerrno
.