Чому у мене стільки дисків оперативної пам’яті?


15

У мене на Linux Raspberry Pi 2 працює арка Linux.

Відразу ж після установки, я побіг lsblk, fdiskі dfкоманди (на жаль , я не рятували вихід) , але у мене був один диск, який є SD - карти і два розділи на ньому. Потім я оновив систему pacman -Syu, встановив sudoі налаштував ssh. Тепер, коли я запускаю, fdiskце показує, що у мене є 16 оперативної пам’яті в пам'яті з параметрами:

Disk /dev/ram15: 4 MiB, 4194304 bytes, 8192 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

і всі види файлових систем, встановлених у різних точках монтажу (в той час, як я особисто створив /dev/rootі лише /dev/boot):

Filesystem      Size  Used Avail Use% Mounted on
/dev/root       1.8G  1.1G  557M  67% /
devtmpfs        458M     0  458M   0% /dev
tmpfs           462M     0  462M   0% /dev/shm
tmpfs           462M  328K  462M   1% /run
tmpfs           462M     0  462M   0% /sys/fs/cgroup
tmpfs           462M     0  462M   0% /tmp
/dev/mmcblk0p1  100M   18M   83M  18% /boot
tmpfs            93M     0   93M   0% /run/user/1000

Отже, моє запитання: що це за всі ці диски оперативної пам’яті і чому вони знаходяться в моїй системі, оскільки я їх точно не створив і на чому встановлені ті файлові системи?

Редагувати :

cat /proc/partitions вихід:

major minor  #blocks  name

   1        0       4096 ram0
   1        1       4096 ram1
   1        2       4096 ram2
   1        3       4096 ram3
   1        4       4096 ram4
   1        5       4096 ram5
   1        6       4096 ram6
   1        7       4096 ram7
   1        8       4096 ram8
   1        9       4096 ram9
   1       10       4096 ram10
   1       11       4096 ram11
   1       12       4096 ram12
   1       13       4096 ram13
   1       14       4096 ram14
   1       15       4096 ram15
 179        0   31472640 mmcblk0
 179        1     102400 mmcblk0p1
 179        2    1853439 mmcblk0p2

1
Я знайшов це пов'язане питання . На це питання також немає великих відповідей, але один коментар дозволяє припустити, що це /proc/partitionsможе бути актуальним. Ви повинні включити висновок cat /proc/partitionsу своєму запитанні.
kasperd

Ви не обов'язково знайдете відповіді на конкретному веб-сайті Raspberry Pi на загальні питання Linux. Швидкий пошук Google знайде відповіді.
Жанна

1
@joan О, я зробив обширний гуглінг, але я не міг знайти чітку і стисну відповідь, лише шматочки та шматочки.
РусьІ

1. Ці диски оперативної пам’яті повинні бути включені перед компілюванням ядра. 2. Вони насправді не повинні використовувати жодну оперативну пам’ять перед тим, як встановити на них FS.
пластівці

Причина розподілу цих дисків оперативної пам’яті залишається загадкою, тоді ... здавалося б, що причиною повинно бути: 1) збереження запису на SD-карту та / або 2) підвищення продуктивності за рахунок зменшення затримки вводу / виводу диска. Але ніхто (достовірний) не записувався з такою заявою.
Сіамус

Відповіді:


4

По-перше, диски оперативної пам’яті - це не те саме, що tmpfs .

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

На механічному жорсткому диску, де кількість циклів читання / запису не має значення, це абсолютно добре. Однак на Raspberry Pi, де основним резервним файлом зберігання є SD-карта, де існує обмежена кількість циклів читання / запису, наявність такої кількості вводу-виводу може передчасно зношувати картку.

Оскільки нам не потрібно зберігати файли у цих тимчасових каталогах під час перезавантаження, багато дистрибутивів намагаються зменшити знос накопичувального пристрою, зберігаючи тимчасові файли з високим трафіком в оперативній пам'яті. Tmpfs використовується з його файлової системи, яка використовує оперативну пам'ять як резервний запас даних. Ось чому ви бачите стільки каталогів, як встановлено tmpfs.

Оперативні диски абсолютно не пов'язані з цим. Вони є блоковими пристроями , які підтримуються оперативною пам'яттю, тоді як tmpfs - це файлова система, підтримувана оперативною пам'яттю. Оперативні диски - це необроблені блокові пристрої, подібні до /dev/sdaтощо. Ви можете створити файлову систему поверх диска оперативної пам’яті, виконавши так mkfs /dev/ramсамо, як і на звичайному блоці жорсткого диска.

Я вважаю, що кількість дисків оперативної пам’яті, які доступні для використання, контролюється параметром конфігурації ядра . Будьте впевнені, що вони фактично не займають місця, поки ви не користуєтесь ними / пишете їм.


7

Це нічого незвичайного.

Оперативні диски зазвичай використовуються для тимчасових файлових систем.

Мій ноутбук Debian

Filesystem      Size  Used Avail Use% Mounted on
udev            1.5G     0  1.5G   0% /dev
tmpfs           301M   32M  269M  11% /run
/dev/sda2        47G   31G   14G  71% /
tmpfs           1.5G  1.7M  1.5G   1% /dev/shm
tmpfs           5.0M  8.0K  5.0M   1% /run/lock
tmpfs           1.5G     0  1.5G   0% /sys/fs/cgroup
tmpfs           1.5G   69M  1.5G   5% /tmp
/dev/sda4       386G  344G   23G  94% /home
tmpfs           301M   12K  301M   1% /run/user/114
tmpfs           301M   76K  301M   1% /run/user/1000

Мій Raspbian Pi Zero

Filesystem                     Size  Used Avail Use% Mounted on
/dev/root                      7.2G  3.8G  3.1G  56% /
devtmpfs                       214M     0  214M   0% /dev
tmpfs                          218M     0  218M   0% /dev/shm
tmpfs                          218M   17M  202M   8% /run
tmpfs                          5.0M  4.0K  5.0M   1% /run/lock
tmpfs                          218M     0  218M   0% /sys/fs/cgroup
/dev/mmcblk0p1                  56M   20M   37M  36% /boot
tmpfs                          100M  4.0K  100M   1% /ram
tmpfs                           44M     0   44M   0% /run/user/109
mercury.lan:/home/common/code  386G  344G   23G  94% /code
tmpfs                           44M     0   44M   0% /run/user/1000

3
Ви не відповідаєте на запитання. Питання в тому, чому /dev/ram15(і, мабуть, 0-14 також) з'являються у випуску з fdisk. У Вашій відповіді є лише згадування, tmpfsяке абсолютно не пов'язане з цим /dev/ram*.
kasperd

1
Я не сумніваюся у ваших твердженнях, але мене дуже цікавить, чому ці зміни відбулися в моїй системі. У той час як я просто вивчаю Linux, і я спеціально вибрав Arch як "хардкор", так би мовити, де потрібно чітко сказати ОС, що ти хочеш це робити, і тепер у мене є система створення дисків та файлових систем та їх встановлення. всюди самостійно - так хто тут контролює?
РусьІ

2

Коротка відповідь : це лише fdisk особливість останніх версій. Крім того, ви можете також використовувати partedі lsblk.

Витягнуто з цієї теми в AskUbuntu:

На більш пізніх версіях fdiskвибору того , що програма вважає , як блоковий пристрій істотно змінилося. У util-linuxпакеті, до складу якого входить fdisk (серед інших), версія 2.21, це рішення базується на геометрії повідомленого диска, тоді як у ( поточній версії 2017) поточній версії 2.72.1 вихід / / proc / розділів аналізується

І:

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

Більш детальна інформація та декілька обхідних шляхів (якщо ці диски на екрані дратують вас) у вищезгаданій темі.


"Більше деталей та декілька обхідних шляхів" ??? де ???
ZEE

@Zee, подивись на згадану нитку на AskUbuntu. Вони навіть перелічують деякі виправлення для вихідного джерела fdisk.
Sopalajo de Arrierez
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.