GNU/Linux >> Znalost Linux >  >> Linux

Jak vytvořit linuxový ramdisk s pevnou velikostí, který se nikdy nevymění na disk?

Je to jen myšlenka a má více než jednu nevýhodu, ale každopádně by to mohlo být dostatečně použitelné.

Co takhle vytvořit obrazový soubor a souborový systém v něm na vrcholu ramfs a poté připojit obraz jako smyčkové zařízení? Tímto způsobem můžete omezit velikost ramdisku pouhým omezením velikosti souboru obrázku. Například:

$ mkdir -p /ram/{ram,loop}
$ mount -t ramfs none /ram/ram
$ dd if=/dev/zero of=/ram/ram/image bs=2M count=1
1+0 records in
1+0 records out
2097152 bytes (2.1 MB) copied, 0.00372456 s, 563 MB/s
$ mke2fs /ram/ram/image
mke2fs 1.42 (29-Nov-2011)
/ram/ram/image is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
256 inodes, 2048 blocks
102 blocks (4.98%) reserved for the super user
First data block=1
Maximum filesystem blocks=2097152
1 block group
8192 blocks per group, 8192 fragments per group
256 inodes per group

Allocating group tables: done                            
Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done
$ mount -o loop /ram/ram/image /ram/loop
$ dd if=/dev/zero of=/ram/loop/test bs=1M count=5
dd: writing `/ram/loop/test': No space left on device
2+0 records in
1+0 records out
2027520 bytes (2.0 MB) copied, 0.00853692 s, 238 MB/s
$ ls -l /ram/loop
total 2001
drwx------ 2 root root   12288 Jan 27 17:12 lost+found
-rw-r--r-- 1 root root 2027520 Jan 27 17:13 test

V (poněkud příliš dlouhém) příkladu výše je soubor s obrázkem vytvořen tak, aby měl 2 megabajty, a když se do něj pokusíte zapsat více než 2 megabajty, zápis prostě selže, protože souborový systém je plný.

Jedno zřejmé zmenšení toho všeho je samozřejmě to, že je zde mnohem větší složitost, ale alespoň pro akademické účely by to mělo stačit.


Linux
  1. Jak vytvořit swap v Linuxu

  2. Jak vytvořit odkládací soubor v Linuxu

  3. Jak zvýšit velikost swapu na Ubuntu Linux

  1. Jak vytvořit oddíl v Linuxu pro velikost 2 TB pomocí Parted GPT

  2. Jak vytvořit snímky systému souborů pomocí příkazu Snapper v systému Linux

  3. Jak vytvořit soubor s danou velikostí v Linuxu?

  1. Jak vytvořit souborový systém na linuxovém oddílu nebo logickém svazku

  2. Jak vytvořit nebo zvětšit swapový prostor v Linuxu

  3. Jak vytvořit soubory určité velikosti v Linuxu