Використання файлу як пам'яті підкачки (SWAP)

Автор: Майкель Ламарет Ередія Опубліковано на сайті КУШКА.

Дуже давно, GNU / Linux, було обмежено використанням одного розділу пам'яті підкачки максимум 128 MB, щось дуже критиковане недоброзичливцями ядра Лінуса Торвальдса.

На щастя, на сьогоднішній день такого обмеження немає, і також можна використовувати стільки пам’яті підкачки, скільки потрібно для задоволення потреб будь-якої системи.

Іноді після встановлення нашої системи ми стикаємося з необхідністю збільшити пам’ять SWAP що ми налаштували під час інсталяції, що можна зробити простим способом, збільшивши розмір розділу, вибраного для цих цілей. Але ... Що робити, якщо ви не хочете торкатися таблиці розділів?

Що таке SWAP і як він працює?

Обмін місцями пам'яті підкачки або своп, - це те, що відоме як віртуальна пам’ять. Різниця між реальною та віртуальною пам'яттю полягає в тому, що віртуальна пам’ять використовує місце на жорсткому диску замість модуля пам'яті.

Коли реальна пам’ять вичерпується, система копіює частину її вмісту безпосередньо в цей простір пам’яті підкачки для виконання інших завдань.

Перевага використання SWAP полягає в наданні додаткової пам’яті, необхідної, коли справжня пам’ять закінчилась і потрібно виконати процес. Недоліком є ​​те, що в результаті використання місця на жорсткому диску використання жорсткого диска відбувається повільніше.

Використовуйте файл як пам’ять підкачки.

Цей метод не вимагає внесення змін до таблиці розділів жорсткого диска. Ідеально підходить для недосвідчених користувачів, для тих, хто хоче уникнути ризику при зміні таблиці розділів свого жорсткого диска, або для тих, кому потрібна обмінна пам’ять більше, ніж випадково, або випадковим чином.

Враховуючи, що файл підкачки можна помістити в будь-який каталог на жорсткому диску, команда виконується dd, вказуючи, що будуть записані нулі (якщо = / dev / zero) щоб створити файл / swap (з = / swap), блоками по 1024 байти (bs = 1024) до заповнення певної кількості в байтах (count = [кількість, помножена на значення bs]). Наступний приклад робить вищезазначене, поки не буде завершено 524288000 байтів (розділене на 1024 дорівнює 512 МБ):

Щоб створити файл, який ми будемо використовувати як SWAP, ми відкриємо консоль і введемо наступне (як root):

dd if=/dev/zero of=/swap bs=1024 count=512000

Наведений вище крок може зайняти кілька секунд, будьте терплячі. Потім, щоб відформатувати створений файл як пам'ять підкачки, ми виконаємо команду mkswap, наступним чином (завжди як root):

mkswap /swap

Вам буде повернуто вивід на консолі, подібний до наступного:

Налаштування простору обміну версіями 1, розмір = 511996 КіБ без мітки, UUID = fed2aba5-77c6-4780-9a78-4ae5e19c506b

Щоб активувати розділ і негайно використати його операційною системою, виконайте команду своп. У нашому випадку ми активуємо як розділ пам’яті своп файл / swap, який ми створили та відформатували SWAP на попередніх кроках:

swapon /swap

Щоб перевірити, чи використовує новий файл підкачки операційна система, ми виконаємо команду ще раз безкоштовно і ми побачимо, що місткість нового файлу додана до початкової SWAP-пам'яті.

Для того, щоб цей файл автоматично використовувався як обмін пам’яттю при наступному завантаженні системи, ми відредагуємо  / etc / fstab (використовуючи nano, gedit, kate, kwrite, vim або текстовий редактор на ваш вибір), додавши відповідний рядок, як показано нижче, де замість пристрою поміщається шлях до створеного файлу підкачки:

Відкриваємо файл

nano /etc/fstab

І додаємо:

/swap         swap      swap     defaults               0 0

Готові !!!!

Ми можемо перезавантажити систему та перевірити, чи збільшилась пам’ять своп із використанням нового файлу ПОМІНТИ. Просто те, що ми зробили, це створити файл у кореневій системі, відформатувати його SWAP і розкажіть нашому GNU / Linux використовувати його як пам’ять підкачки разом із розділом, який ми вже призначили для цього.

Щось просте, але це може бути корисно для багатьох з нас ... Без зайвих слів ...


25 коментарі, залиште свій

Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   kourt - сказав він

    Нота чудова. Тільки зараз це змушує мене думати про одне, чи міг би я так само використовувати USB як карту пам'яті ??? Якщо у вас дещо старе обладнання, і отримання пам’яті є складним або занадто дорогим (здається, чим старше, тим дорожчі запчастини в комп’ютерах), було б добре мати можливість розширити пам’ять лише за допомогою USB

    1.    auroszx - сказав він

      Так, це дуже добре, більш-менш саме так працює встановлений мною zramswap (я не люблю салати-перегородки, я нічого не відокремлюю).
      Якщо ви хочете використовувати usb як підкачку, ви просто відформатуєте розділ для цієї мети та додасте його до fstab, змінивши / swap на / dev / sdb1 (припускаючи, що шлях до вашого usb є sdb1).

      1.    sieg84 - сказав він

        ви будете задоволені btrfs та його підтомами

      2.    kourt - сказав він

        Добре, якщо я правильно зрозумів, як зробити обмін USB, але я більше думав про щось на зразок додаткової оперативної пам'яті, оскільки USB буде фізичною пам'яттю, і я не хотів би чекати, поки він перевищить 60% пам'яті для запуску використовувати USB.

        Ну і бачачи коментар @nonamed, причину таких рішень (і лише як внесок, а не як початок командної війни та з усією повагою) в той час, коли вже є команди з кращою продуктивністю, і здається непотрібний; Я можу подумати про 3 моменти:

        1-й. І найочевидніше - використовувати його в старому обладнанні
        2-й. Я також думаю про не настільки нові ноутбуки, які мають ємність 1 Гб або 2 Гб, "МІНУС" пам'яті, призначеної для відеокарти
        3-й. Ну, це очевидно, так? Тому що це цікаво і тому, що це можна зробити ... хе-хе-хе! XD

        вітання

        1.    k1000 - сказав він

          Або якщо ви забули створити SWAP і не хочете возитися з таблицею розділів

        2.    Катекьо - сказав він

          Ви вирішили використовувати USB-накопичувач як оперативну пам'ять? Цього не можна зробити, оскільки швидкість читання-запису оперативної пам'яті набагато швидша, ніж підтримує USB, а також USB буде зруйнований через короткий час використання ха-ха, і було б добре використовувати USB-накопичувач як додатковий SWAP

    2.    Альтаїр - сказав він

      Так, ви створюєте розділ підкачки на USB і монтуєте його за допомогою sudo swapon / dev / sdX, і ви можете додати до нього 60, щоб він мав пріоритет над іншими розділами підкачки. Ви також можете додати його до fstab для автоматичного монтування або створити файл підкачки, як сказано в цьому чудовому посібнику на usb usb

  2.   slayerkorn - сказав він

    Чудовий посібник та водночас практика, коли у когось не вистачає обміну, хоч і важко. Зараз я тиражую те саме, але в USB-пам’яті, так що передача даних з фізичної пам’яті до місця обміну пам’яттю відбувається трохи швидше.

  3.   елендінарсіл - сказав він

    Дякую за інформацію. але це генерує запитання, можливо, щось дурне: після створення цього файлу підкачки не можна видалити розділ підкачки ???

  4.   без назви - сказав він

    Іноді я замислююся, чи справді варто мати своп, я завжди маю його на рівні 0%, можливо, це пов’язано з пам’яттю, у мене є 4 Гб оперативної пам'яті, я думаю, чим більше пам’яті, тим менше сенсу використовувати своп

    1.    Даніель Рохас - сказав він

      Так, це залежить від пам’яті, яка у вас є в апараті. Я також завжди маю його на рівні 0%, і маючи 4 Гб оперативної пам'яті, я даю лише 512 Мб розділу підкачки

      1.    pzero - сказав він

        В останній установці я видалив обмін. Незважаючи на це, з 24 Гб оперативної пам'яті я іноді бачив невеликі обміни (кілька КБ), навіть з великою частиною оперативної пам'яті, що не використовується. Чому? Я поняття не маю

  5.   sieg84 - сказав він

    Мені довелося це зробити в sabayon, я не міг знайти причину, чому вона з’їла всю оперативну пам’ять і обмін.

  6.   Містер Linux - сказав він

    Я завжди скажу це, FromLinix - це блог номер один, завдяки цим цікавим статтям. До речі, я знайшов ключ, який Йойо кинув із в'язниці, де у них є Елав, думаю, я його збережу.

    Привіт Елав.

  7.   Мерлін дебіаніт - сказав він

    Дуже корисна подяка за внесок.

  8.   правильний - сказав він

    Це простіше
    lvm lvresize /dev/vg_laptpop/vl_swap -L +4G
    якщо ви використовуєте LVM clear (якщо ви хочете поміняти місцями 4gigas)

    1.    правильний - сказав він

      Однак цей внесок становить p% $ матері, не знаючи цього раніше, скільки форматів я б зберегла xDDDD

  9.   invisible15 - сказав він

    У мене є два розділи для обміну (по одному на кожному жорсткому диску), і з 1 Гб оперативної пам'яті я використовую як мінімум від 200 до 500 Мб обміну ...

  10.   калх - сказав він

    Якщо у вас є кілька старих USB-накопичувачів, ви можете поміняти на рейді 0 смужку з N USB-пристроїв, тим самим прискоривши продуктивність свопу пропорційно пробитим USB-пристроям і, по можливості, кожному в іншому кореневому концентраторі - я думаю ! -. Вам просто потрібно повідомити себе про рідну підтримку raid by linux soft.
    посилання для отримання додаткової інформації:
    http://www.kriptopolis.com/raid-1
    або більш загальний пошук
    https://www.google.es/search?q=raid+por+soft+en+linux&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a&channel=fflb

    1.    калх - сказав він

      Я забув сказати, що рейд можна здійснити на рівні розділів. Отже, якщо шипи usb не однакового розміру, ви можете зробити перегородки розміром з найменший спайк, а решта отвори більших usbs можна використовувати для інших речей або для більшої кількості обмінів на рівні файлу або розділу ... що не є Чи можливо здійснити рейд кількома файлами обміну за допомогою описаного вами методу ???…

  11.   Карлос - сказав він

    Відмінний підручник, мене закликали збільшити обмін, який я мав у своєму розпорядженні. (І)

  12.   Хорхе - сказав він

    Це добре виглядає. Спробую з usb-пам'яттю.

  13.   Гільокс - сказав він

    чудово ... це працює на мобільному телефоні android? У мене вже є власне ядро, але я не хочу розділяти sd. Я думаю, це мало б спрацювати

  14.   Делугас - сказав він

    Дуже хороша стаття.

    Ще однією цікавою концепцією обміну Linux є своппі:

    http://www.sysadmit.com/2016/10/linux-swap-y-swappiness.html

  15.   Девід Коулман - сказав він

    Вітаю, мене звуть Девід Коулман Мені 32, я з Огайо, я вивчаю комп’ютерне програмування та інформатику, щоб отримати ступінь обох протягом 4 років!
    Моє питання з додатком (SWAP / без кореня) APK є простим після того, як файл swap / swp, який я створив для 2 Гб 999 Мб × 2, по суті, як саме він зберігатиметься в моєму Android? Я використовую оперативну пам’ять 3 Гб 32 ГБ мемерой +32 ГБ SanDisk SD, також завантажуючи Stylo 5, підсилюючи мобільний невкорінений пристрій з розблокованим завантажувачем, а також розблокованим симом! Будь -яка порада добре оцінена вітається THX
    Урс ЧУДО, Девід Коулман 32 з Огайо, США.. ?