Збільшити Swap в Ubuntu 18.04 під Lvm та зашифрованою файловою системою


22

Я зробив чисту установку робочого столу Ubuntu 18.04.

Я використав графічний інсталятор і вибрав "Шифрувати нову установку Ubuntu для безпеки".

Він використовував LVM за замовчуванням і створив розділ для swap замість файлу. Ось sudo swapon -sрезультат:

eviatan89@leviatan89-K55VD:~$ sudo swapon -s
Filename                Type        Size    Used    Priority
/dev/dm-2                               partition   1003516 999448  -2

Мені потрібно збільшити розмір, оскільки у мене виникає багато проблем із обмеженою пам’яттю.

Як цікавість, проблеми виникають при використанні Cassandra та Firefox з декількома відкритими вкладками (включаючи YouTube). Моя система отримала 6 Гб оперативної пам’яті.

Дякую за допомогу!


centos.org/docs/5/html/5.1/Deployment_Guide/… працював на мене (18.04 повне шифрування диска)
olejorgenb

1
Я блукаю, чи зможемо ми просто зробити перегородку більшою. LVM повинен зробити це легко, правда? Хтось пробував? Не вдалося знайти відповіді за допомогою цього параметра.
AlikElzin-kilaka

Я спробував змінити розмір розділу за допомогою програми диски, але параметр недоступний. Навіть після того, як я його «зупинив». Я намагався також завантажуватися з пальчикового накопичувача, який нічого не монтує на жорсткий диск, але параметр зміни розміру був недоступний для нерозділу LVM. Можливо, це тому, що "головний" розділ заблокований? Після її розблокування параметр все ще був недоступний.
AlikElzin-kilaka

@ AlikElzin-kilaka: так, потрібно використовуватиkpvm для зміни розміру swapгучності, і дійсно, це дуже просто.
Дан Даскалеску

@DanDascalescu Розширення логічного тома ... вимкнено для мого swap_1розділу, тому зменшується логічний том ... для root. Що робити?
Боян П.

Відповіді:


29

Найпростішим рішенням буде додати файл swap. Якщо ви вже шифруєте свою кореневу файлову систему, я б не переймався зашифрованим файлом swap, що лише трохи складніше, але це повільніше. Перевага файлу swap полягає в тому, що ви можете його видалити пізніше, щоб відновити місце на диску. А диск вже зашифрований!

Кроки прості. Спочатку зробіть файл. Наприклад, це зробить 1 Гб нового свопу:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k

of=/swapfileКаже ddпомістити новий файл підкачки в /swapfile. Ви можете назвати це все, що завгодно. Ви також можете додавати кілька файлів підкачки. Для останніх ядер Linux швидкість така ж, як і розділ swap.

Потім вам потрібно відформатувати файл swap як пробіл, наприклад:

sudo mkswap /swapfile

Ця команда дасть вам деякий вихід, наприклад:

Setting up swapspace version 1, size = 1048576 KiB

no label, UUID=83352590-ef57-49f5-84c4-7fb847e4e4e0

І це ваш новий swap-файл. Нарешті, вам потрібно активувати своп на вашій машині за допомогою наступної команди:

sudo swapon /swapfile

Тепер sudo swapon -sслід показати вам і розділ swap, і файл swap.

Тоді я рекомендую додати деяку безпеку, змінивши дозволи наступним чином:

sudo chown root:root /swapfile
sudo chmod 0600 /swapfile

Якщо поки що все здається хорошим, ви можете додати файл swap постійно, додавши наступний рядок до /etc/fstab використання улюбленого редактора:

/swapfile       none    swap    sw      0       0

Ви, звичайно, можете додавати кілька файлів підкачки. І ви можете видалити файл swap, використовуючиsudo swapoff /swapfile .

Сподіваюся, це допомагає.


2
Спасибі! Це спрацювало. Це команда dd, яку я використав для додавання файлу swap 4G: sudo dd if = / dev / zero of = / swapfile bs = 1024 count = 4096k
leviatan89

Чому це 1024k? Моя інтуїція сказала б, що це був 1 мегабайт, а не концерт.
grofte

4
Параметр розміру блоку 'bs' знаходиться в байтах. Отже, кількість 1024 кб або 1 мільйон блоків по 1 КБ кожен становить 1 Гб.
Martin W

Оскільки ОП використовує LVM, було б ще простіше просто змінити розмір swapгучності, використовуючи kpvm.
Дан Даскалеску

@DanDascalescu… простіше, якщо ОП не вважає за краще встановлювати KDE для цієї проблеми окремо
törzsmókus

3

Додавання до верхньої відповіді . Оскільки я не маю репутації коментувати. Вибачення.

У випадку, якщо ви намагаєтеся збільшити розмір місця та вже виділили місце для заміни.

Увага : Закрийте програми, які використовують місця для заміни.

По-перше, зробіть це, інакше ви отримаєте помилку :

sudo swapoff -a

А потім продовжуйте, як зазначено вище.

Крім того, вищезазначений процес видалить попередній простір підкачки, тому якщо у вас є 2 Gigs свопу і хочете додаткові 6 Gigs, вам доведеться виділити свіжих 9 Gigs місця для заміни. Або назвіть файл swap чимось відмінним від інших файлів (-ів).

sudo dd if=/dev/zero of=/swapfile2 bs=1024 count=6144k

Помилка:

~ $sudo dd if=/dev/zero of=/swapfile bs=1024 count=6144k                     
dd: failed to open '/swapfile': Text file busy

Примітка: Це запропоновано розширення до @Martin W в відповідь


З LVM вам не потрібен файл підкачки. Ви можете легко змінити розмір swapгучності, використовуючи kpvm.
Дан Даскалеску

1

Зауважте, що якщо у вашій установці використовується LVM, можливо, у вас вже є обмін свопом. Перевірте використання kvpm. Якщо це не так, ось короткі кроки для створення нового файлу своп 4 Гб. Спочатку закрийте будь-які програми, використовуючи простір підкачки (або перезавантажте машину). Потім:

sudo swapoff -a                                    # Turn off all swap space.
sudo rm /swapfile                                  # Delete current swap file.
sudo dd if=/dev/zero of=/swapfile bs=1G count=4    # Make a new 4GB swap file.
sudo chown root:root /swapfile                     # Set owner to root, group root
sudo chmod 0600 /swapfile                          # Set permission to root
sudo mkswap /swapfile                              # Convert file to swap format
sudo swapon /swapfile                              # Enable swap space

Запустіть htopабо інший системний монітор, щоб перевірити, чи діє нова заміна. Якщо все виглядає добре, зробіть файл swap постійним, додавши наступний рядок до /etc/fstab:

/swapfile       none    swap    sw      0       0

Якщо мені потрібно 12gb свопу, мені потрібно просто змінити count = 12288 так?
user_6396

1
Справді,4096*3=12288
Алексіс Пакес

З LVM вам не потрібен файл підкачки. LVM дозволяє легко змінити розмір swapгучності, використовуючи kpvm.
Дан Даскалеску

0

Він використовував LVM за замовчуванням і створив розділ для swap замість файлу.

Це насправді не перегородка; скоріше, це об'єм LVM ( Logical Volume Management ). Ви можете бачити томи LVM, використовуючи kvpm:

kpvm скріншот з обміном

Таким чином, правильна відповідь на ваше запитання полягає не у створенні іншого місця заміни (файла swap), а в зміні обсягу swap, використовуючи kvpm: клацніть правою кнопкою миші на swapтомі та виберіть Extend logical volume.

Якщо ця опція недоступна, можливо, потрібно спочатку зменшити розмір іншого обсягу.


Чи буде це працювати при використанні zfsubuntu 19.10?
AlikElzin-kilaka

1
Розширити логічний том ... для мого swap_1розділу вимкнено , тому зменшується логічний том ... для root. Що робити?
Боян П.

-1

Якщо ви працюєте з м'ятою 19.X, ось кілька стислих кроків:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=10240k # make 10G swapfile
sudo chown root:root /swapfile
sudo chmod 0600 /swapfile
sudo mkswap /swapfile

редагувати /etc/fstab

рядок коментарів: /dev/mapper/mint--vg-swap_1 none swap sw 0 0

додати рядок: /swapfile none swap sw 0 0

Потім перезавантажте.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.