RAM diskini nasıl yaparım?


55

RAM'den yapılmış bir bölüm yapmak istiyorum.

Örnek

Windows 7'de koçtan yapılmış bir bölüm oluşturabilirsiniz.

görüntü tanımını buraya girin

Ram içinde 1 GB bölüm oluşturdum. Primo RamDisk kullanarak

Ubuntu'da iyi bir alternatif var mı?


3
Ubuntu, tmpfs ile birlikte geliyor. Bir RAMDISK oluşturmanıza gerek yoktur.
mixdev

Kullanım amacınıza bağlı olarak Ubuntu (veya çoğu Linux dağıtımında) için bir ramdisk gerekmeyebilir. İşletim sistemi önbellekleri normal disklerle çalışırken RAM'e okuma ve yazma etkinliği gösterir. Küçük bir dosyayı birkaç kez okursanız, yalnızca bir kez diskten alınır, daha sonra sonraki zamanlarda RAM önbelleğinden alınır. Çok miktarda RAM'iniz varsa, yaptığınız her şey bu şekilde önbelleğe alınır, böylece çok az disk etkinliği elde edersiniz. Dosyalar yerine kalıcı olmayan hızlı bellek kullanımı istiyorsanız, hala bir RAMDISK gerekir. Daha fazla bilgi için linuxatemyram.com adresini ziyaret edin.
TafT

Yanıtlar:


77

Bu size bir RAMDISK'in nasıl hızlı ve kolay bir şekilde yapıldığını gösterecektir. Bir RAMDISK ile hafızanızı geçici alan için kullanabilirsiniz ve aynı zamanda sabit disk sürücünüzden çok daha hızlıdır.

Şimdi RAMDISK'inizi yapmak için sonraki 2 komutu kullanarak başlayalım.

RAMDISK'inizin çağrılmasını istediğiniz yeri “isim” yazdığım yere koyun.

mkdir -p /media/nameme

mount -t tmpfs -o size=2048M tmpfs /media/nameme/
Yukarıdaki komutlar, RAMDISK için 2GB RAM'imi kullanır. Benim kadar ram yoksa 512 MB veya 1 GB kullanırım. Bundan sonra Terminal için sizin için otomatik olarak RAMDISK'i yaratacak bir komut oluşturacaksınız.

Kaynak: Linux'ta RAMDISK Nasıl Oluşturulur


3
Bunu yeniden başlatmalar arasında nasıl devam ettirebilirim?
Chovy

1
RAM olduğu için uçucudur, yeniden başlattığınızda, BIOS / EFI gibi sıcak bir başlangıç ​​RAM'i silecek olsa bile hepsi kaybolur. Yapabileceğiniz en iyi şey, komutları giriş sırasında çalıştıran bir kabuk betiği hazırlamaktır.
Brandon MacEachern

1
@chovy devam etmek için şu anda 2 hakkında düşünüyorum birkaç seçenek var. 1. ram diske yazmak için api ve hdd diske asenkronize yazma yazın. Her zaman tokmaktan okuyun, yalnızca diskten önyükleme ısınmasında. 2. zaman zaman ram diskindeki herhangi bir şeyi bir hdd diske kopyalayan bir komut dosyası çağırın ve önyüklemeden sonra bir kez geri kopyalayın.
Lukas

Başka bir seçenek de /tmp/cacheönbellek dir gibi bir şey belirtmek , bu dizinde aslında bir üst üste binmenin bağdaştırıcı noktası (üst üst olarak bir tmpfs kullanarak ve normal dosya sisteminizde normal olarak alt düzlem olarak etkileşime gireceğiniz başka bir şey) olduğu belirlenir. bu, hızlı ve geçici bir katmana sahip olmanıza ve ara sıra parçalarını kalıcı yapmak istemeniz durumunda önemsiz şekilde senkronize edilebilen bir şeye sahip olmanızı sağlar.
mway

chovy bunu /etc/rc.local dosyasına ekler ve bölümü otomatik olarak bağlar ... ancak veriler kaybolur.
777

49

Tmpfs dosya sistemi bir RAMDISK'tir. Aşağıdaki, her zaman erişilebilir olacak bir 2G RAMDISK oluşturacaktır.

sudo mkdir -p /media/ramdisk
sudo mount -t tmpfs -o size=2048M tmpfs /media/ramdisk

Ramdisk klasörü, yeniden başlatmaya hazır olması için root'a aittir. Ramisk izinleri herkes tarafından yazılabilir olmalıdır. Tmpfs varsayılan izinleri (chmod 1777) doğru.

sudo chmod 1777 /media/ramdisk
drwxrwxrwt 2 root root 180 Apr 23 07:34 /media/ramdisk

Ramisk'i kalıcı olarak kullanılabilir duruma getirmek için, / etc / fstab dosyasına ekleyin.

grep /media/ramdisk /etc/mtab | sudo tee -a /etc/fstab

Satırın mtab'dan fstab'a taşındığını göreceksiniz. Böyle bir şeye benzeyecek.

tmpfs /media/ramdisk tmpfs rw,size=2048M 0 0

RAMDISK siz kullanana kadar hafıza kullanmaz. Maksimum sistem yükü sırasında bellek gereksinimlerinizi iki kez kontrol edin. RAMDISK çok büyükse, sisteminiz farkı telafi etmek için takas deposu kullanır.

RAMDISK'in boyutunu ayarlamak için / etc / fstab dosyasını düzenleyin ve ramdisk'i yeniden takarak doğrulayın (mevcut RAMDISK içeriğinizi yeniden başlattığınız gibi kaybedeceksiniz). Aşağıdaki, ramdisk'in boyutunu 512M olarak değiştirecektir.

# Check the existing ramdisk size.
df /media/ramdisk
# change size=512M for a 512 megabyte ram drive.
sudo vi /etc/fstab
# Remount the ramdisk, you will lose any existing content.
sudo mount -a /media/ramdisk
# Verify the new ramdisk size.
df /media/ramdisk

1
Teknik olarak, tmpfsbir ramdiskramfs değil .
heemayl

2
Anlaşmak. RAMDISK'i Windows'ta bunun ortak adı olduğu için kullanmayı seçtim.
rickfoosusa 7:16

Bir ramdisk gerçekten kullanımda olup olmadığını nasıl kontrol edebilirsiniz? Ben her zaman Kullanılan 0% olarak görüyorum.
BTR Naidu

9

Kök ayrıcalıklarına sahip olmadığınız dava için 2 kuruş ekleyerek:

Bu cevaptan alıntı yapmak unix.stackexchange adresinden

Linux, herhangi bir kullanıcının kullanabileceği bir tmpfs cihazı sağlar / dev / shm. Varsayılan olarak belirli bir dizine bağlı değildir, ancak yine de onu tek olarak kullanabilirsiniz.

Basitçe / dev / shm içinde bir dizin oluşturun ve sonra istediğiniz yere işaretleyin. Oluşturulan dizine seçtiğiniz izinleri verebilirsiniz, böylece diğer kullanıcılar erişemez.

Bu RAM destekli bir cihazdır, yani varsayılan olarak bellekte ne var. İhtiyacınız olan / dev / shm dizinlerini oluşturabilirsiniz.

Doğal olarak, buraya yerleştirilen dosyalar yeniden başlatma işleminden kurtarılamaz ve makineniz değişmeye başlarsa / dev / shm size yardımcı olmaz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.