Tüm fiziksel belleği bir dosyaya nasıl dökebilirim?


10

Ubuntu 11.10 kullanıyorum ve bazı çekirdek kısıtlamalarından ötürü dd /dev/mem, süper kullanıcı olarak bile yapamadığım için tüm fiziksel belleği ve değiş tokuşu boşaltıp bırakamayacağımı bilmek istiyorum .

Herhangi bir geçici çözüm veya izin vermek için seçenek var mı dding' /dev/memveya doğru bunu yapmak için yapılmış özel bir alet?


1
wiki.ubuntu.com/Security/Features , kmem'in devre dışı bırakıldığını ve /dev/memkısıtlandığını söylüyor .
Ciro Santilli 法轮功 9 审查 六四 事件 法轮功

Yanıtlar:


7

Fmem kullan

Eskiden sadece dd /dev/memgün içinde geri dönebiliyordunuz, ancak artık güvenlik nedenleriyle değil (çekirdek 2.6, IIRC'den beri).

Alternatif olarak, çekirdeği kök yapmasına izin verme seçeneği ile kendiniz oluşturmaktır (daha sonra adla, şimdi telefonda düzenleyecektir) VEYA daha iyisi, kolay boşaltma için neredeyse bir cihaz oluşturan bir çekirdek modülü olan fmem'i kullanın /dev/fmem.


fmem benim için harika çalışıyor 12.04. Sadece run.shmodülü yüklemek için tarballda bulunan dosyayı kullandığınızdan emin olun ; yok kullanın insmod:

$ ./run.sh
...
---- Bellek alanları: -----
reg00: temel = 0x000000000 (0MB), boyut = 1024MB, sayım = 1: geri yazma
reg01: temel = 0x0c8800000 (3208MB), boyut = 2MB, sayım = 1: yazma birleştirme
-----------------------
!!! DD'ye "count =" eklemeyi unutmayın !!!


$ ls / dev / f *
/ dev / fb0 / dev / fd0 / dev / fmem / dev / tam / dev / sigorta


$ sudo dd = / dev / fmem / = / tmp / fmem_dump.dd bs = 1MB sayısı = 10 ise
10 + 0 kayıt
10 + 0 kayıt çıktı
10000000 bayt (10 MB) kopyalandı, 0.0331212 s, 302 MB / s

Tıkır tıkır çalışıyor. Yeniden başlatırsam make'i tekrar çalıştırmam gerekir mi?
nanofarad

Hayır, yalnızca çekirdekleri değiştirdiğinizde :)
ish

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.