Ситуация: увеличьте размер подкачки ( /dev/sda3
) больше, чем Ram (8 ГБ), когда HD 128 ГБ
Мотивация: 8 ГБ ОЗУ слишком мало; 30 ГБ свободного места на моем SSD; Хочу превратить 20 ГБ в SSD подкачку
Характеристики системы
Поменяйте местами неизменяемый / изменяемый. Я не могу найти никаких доказательств того, почему они
/mnt/.swapfile
должны быть неизменяемыми, поэтому вам не нужно изменять атрибуты файла файла подкачкиsudo lsattr /mnt/.swapfile -------------e-- /mnt/.swapfile
Команда
sudo fdisk -lu /dev/sda
даетDisk /dev/sda: 113 GiB, 121332826112 bytes, 236978176 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: 082F85CA-EE3E-479C-8244-858B196FA5BA Device Start End Sectors Size Type /dev/sda1 2048 4095 2048 1M BIOS boot /dev/sda2 4096 220323839 220319744 105.1G Linux filesystem /dev/sda3 220323840 236976127 16652288 8G Linux swap
Команда
df -h
даетFilesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 793M 9.4M 784M 2% /run /dev/sda2 104G 74G 25G 75% / tmpfs 3.9G 54M 3.9G 2% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 793M 64K 793M 1% /run/user/1000
Выделите больше места на диске для замены
/dev/sda3
.
Мой неудачный рабочий процесс для задачи, когда HD и Swap на одном разделе, /dev/sda3
masi@masi:~$ sudo -i
root@masi:~# swapoff /dev/sda3
root@masi:~# swapon
[blank]
root@masi:~# dd if=/dev/zero of=/dev/sda3 bs=20480 count=1M
dd: error writing '/dev/sda3': No space left on device
416308+0 records in
416307+0 records out
8525971456 bytes (8.5 GB, 7.9 GiB) copied, 18.7633 s, 454 MB/s
root@masi:~# mkswap /dev/sda3
Setting up swapspace version 1, size = 8 GiB (8525967360 bytes)
no label, UUID=245cb42c-1d4e-4e21-b544-16b64af962d6
root@masi:~# swapon -p 99 /dev/sda3
root@masi:~# swapon
NAME TYPE SIZE USED PRIO
/dev/sda3 partition 8G 0B 99
root@masi:~# vi /etc/fstab
...
HD и обмен на одном разделе - текущий рабочий процесс [Ijaz, cas, FarazX]
Слияние. fallocate
Вместо этого используйте в начале, dd
потому что не нужно ставить нули
masi@masi:~$ sudo fallocate -l 20G /mnt/.swapfile
masi@masi:~$ sudo mkswap /mnt/.swapfile
Setting up swapspace version 1, size = 20 GiB (21474832384 bytes)
no label, UUID=45df9e48-1760-47e8-84d7-7a14f56bbd72
masi@masi:~$ sudo swapon /mnt/.swapfile
swapon: /mnt/.swapfile: insecure permissions 0644, 0600 suggested.
masi@masi:~$ sudo chmod 600 /mnt/.swapfile
masi@masi:~$ free -m
total used free shared buff/cache available
Mem: 7925 1494 175 196 6255 5892
Swap: 28610 0 28610
Добавьте в вашу строку следующую строку, /etc/fstab
которая лучше, чем добавление этой вещи в ваши уровни запуска ( /etc/rc.local
), где я поместил файл подкачки в файл, /mnt/.swapfile
чтобы поддержать философию Linux / Unix и сохранить целостность моих сценариев резервного копирования системы; При подключении к SSD используйте эту discard
опцию, чтобы блоки обрезались при каждой перезагрузке, поэтому неsw
# http://unix.stackexchange.com/a/298212/16920
# http://unix.stackexchange.com/a/298543/16920
# If swap is on SSD, trim blocks each time at startup.
/mnt/.swapfile none swap defaults,discard 0 0
# If swap on External HDD, just use sw.
#/media/masi/SamiWeek/.swapfile none swap sw 0 0
источники
- Как увеличить пространство подкачки? https://askubuntu.com/a/178726/25388 Общее обсуждение увеличения пространства подкачки для начинающих.
- Linux Partition HOWTO для жестких дисков, а не SSD: 4. Требования к разделам. http://www.tldp.org/HOWTO/Partition/requirements.html Так что не устанавливайте своп на внешние дорожки на твердотельных накопителях, а используйте
defaults,discard
параметры для обрезки блоков, как предложено @cas.
Система: Linux Ubuntu 16.04 64-битное
ядро Linux: 4.6
Модули Linux: wl
Аппаратное обеспечение: Macbook Air 2013 - середина
Ram: 8 ГБ
SSD: 128 ГБ
источник
fdisk -lu /dev/sda
?chflags
BSD и OS X, и у нас есть команда под названием linuxchattr
, вы можете сделать свои файлы и каталоги более безопасными и неизменяемым путем установки некоторых атрибутов, вот руководство на tecmint.com , я надеюсь, что это может помочь.Ответы:
Вы просто хотите увеличить размер подкачки в вашей системе, используя пространство от
sda2
. Вашsda2
Вы можете добавить дополнительное пространство подкачки в вашу систему, используя файл подкачки, созданный на
/
вашем компьютереsda2
. Просто делать:а затем сделать:
и проверьте, что пространство подкачки увеличится на эту величину, используя
free -m
и да, чтобы включить его во время загрузки, добавьте запись в
/etc/fstab
источник
/etc/fstab
вы можете избежать записи вrc.local
. Поместите файл подкачки куда-нибудь,/mnt/.swap
и вам больше не нужно будет об этом слишком беспокоитьсяУправление памятью
Чтобы отобразить сводную информацию об использовании подкачки вашим устройством:
Чтобы отобразить объем свободной и использованной физической памяти и памяти подкачки:
Чтобы предварительно выделить место для / swapfile, вы можете использовать строку ниже:
Изменить разрешение и создать / активировать своп
Вы также можете улучшить безопасность файлов, изменив атрибуты файлов с помощью
chattr
. Я рекомендую вам прочитать его руководство или прочитать это руководство на веб-сайте Tecmint .Убедитесь, что он включен, просмотрев выходные данные команды
cat /proc/swaps
, использоватьfree
команду илиДля того, чтобы включить его во время загрузки , редактирования
/etc/fstab
(статическую информацию о файловой системе) , чтобы включить следующие где поляfs_spec
,fs_file
,fs_vfstype
,fs_mntops
,fs_freq
иfs_passno
, о которых вы можете прочитать наman 5 fstab
:sw
при подключении к SSD, но такdefaults,discard
, чтобы блоки памяти обрезались каждый раз при запуске, см. Ответ здесь о том, как сделать перехват ошибок и своппинг, если ошибка / предупреждение?discard
Вариант , безусловно , работает на разделах.источник
dd
так как вы можете сделать это неправильно, если вы не знаете, что делаете,dd
- это супер-мощная команда. А пространство подкачки AFAIK в Linux используется, когда объем физической памяти (ОЗУ) заполнен, и имейте в виду, что у него нет точки монтирования. Так что я думаю, что не имеет значения, где он находится, просто измените его на 600.fstab
, запустивman 5 fstab
. Удачи, приятель.lsattr
, и, как я уже говорил, вы можете установить их с помощьюchattr
. Например, если вы хотите сделать его неизменным, вы можете использоватьchattr +i /mnt/.swapfile
, или в BSD или OS X вы можете использоватьchflags uchg yourFile
. У вас есть много опций атрибутов, например, когда файл сs
набором атрибутов удален, его блоки будут обнулены и записаны обратно на диск. Но я рекомендую вам прочитать его справочную страницу и побродить по сети. Это не так просто, как кажетсяchattr
, и вы должны знать, что вы действительно собираетесь делать!Вы спрашиваете: « Как выделить больше места для замены и увеличить его размер больше, чем у Ram? », Ничего не говорится об изменении способа настройки вашей системы.
Ваш fdisk и бесплатный вывод говорят нам:
Раздел подкачки не является расширенным разделом, это немного увеличивает размер.
Необходимые инструменты:
Посмотрите здесь, где находится последняя бесплатная версия Parted Magic
Инструкция по изменению размера разделов с помощью gparted
Помните, что вы меняете диск и разделы на низком уровне и что любые ошибки или сбои могут повредить ваши данные.
Сначала сделайте резервную копию ваших данных.
источник
gparted
здесь не нужно, потому что вы можете поместить тампон на тот же диск, где находится ваша ОС./dev/sda2
и/dev/sda3
являются отдельными разделами.swapon
или аналогичный. На устройстве удаление сделатьswapoff
или аналогичные. Состояние перестановки устройства не будет запомнено при перезагрузке ОС.