Вимкнути кеш-пам'ять для читання та запису Linux на розділі


10

Як я відключу кеш файлу Linux на розділі xfs (обидва читають запис).

У нас є розділ xfs над апаратним RAID, який зберігає наше відео RAW HD. Більшість пагонів мають по 50-300 ГБ кожен, тому кеш-пам'ять linux має частоту враження 0,001%.

Я спробував параметр синхронізації, але він все ще заповнює кеш при копіюванні файлів.
(приблизно 30 разів більше на знімок: P)

/ і т.д. / fstab:

/ dev / sdb1 / video xfs синхронізація, час роботи, nodiratime, logbufs = 8 0 1

Я запускаю debian lenny, якщо це допомагає.

Відповіді:


6

є рішення, яке ідеально відповідає вашому випадку використання: http://code.google.com/p/pagecache-mangagement/

Після перевірки вихідного коду:

svn checkout http://pagecache-mangagement.googlecode.com/svn/trunk/ pagecache-mangagement-read-only

проблема

make
sudo cp *.so /usr/local/lib/
sudo cp *.sh /usr/local/bin/

тоді ви можете запустити будь-яку програму, яку ви хочете

pagecache-mangagement.sh <App>

і додаток не заповнить ваші кеші!


1
Це було саме те, що мені потрібно було для іншої роботи, тієї ж проблеми. Тепер інші мої програми можуть використовувати кеш там, де це корисніше.
компліст

6

Інструмент nocache призначений для подібної мети: запобігання певним командам зіпсувати поточний кеш-буфер. Просто додайте ./nocacheдо своєї команди:

./nocache cp -a ~/ /mnt/backup/home-$(hostname)

Зауважте, що подібний інструмент pagecache-mangagement - Інструмент для дозволу керування використанням кеш-сторінок довільних додатків , як зазначав rmetzger, все ще знаходиться в тому ж стані, що був у 2008 році. Звичайно, це може бути як хорошим, так і поганим, або суміш :) У мене немає прямого порівняння, але я попросив людей, що не мають кеша


5

Це неможливо зробити чисто. Якщо вам потрібно це для певних додатків, їх слід змінити, щоб перейти O_DIRECTна їх open(2)дзвінки.


Файли записуються / читаються різними сторонніми додатками ... mv, md5sum, samba тощо. Я, можливо, зможу в майбутньому замінити деякі з моїх власних програм C ... але, наскільки я можу сказати, самба dosnt має варіант O_DIRECT.
компілістичний

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

2

man raw. Ви можете зв'язати необроблений пристрій, який обходить кеш із цим. Він має деякі обмеження. Я використовував його лише на пристроях CD / DVD, тому не знаю, наскільки добре він буде працювати для вас.


Чи пов'язує необроблена команда пристрій таким чином, що я можу змонтувати мій розділ xfs до / відео для використання з samba? Документація та результати Google виглядають дещо невиразними.
компілістичний

Не слід їх змішувати. Я думаю, ви можете замість цього встановити новий необроблений пристрій.
Кіт

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