Tahukah anda bahawa terdapat direktori khas dalam sistem Linux, yang bukan pada cakera keras, tetapi dalam memori? Ia adalah direktori /dev/shm, yang membolehkan anda mencipta dan menggunakan fail dalam memori, dengan itu meningkatkan kelajuan dan kecekapan sistem anda. Walau bagaimanapun, direktori /dev/shm bukan sekadar sistem fail memori yang ringkas, ia mempunyai banyak fungsi dan kegunaan lain, seperti memori kongsi, komunikasi antara proses, fail yang disulitkan, dsb. Dalam artikel ini, kami akan menyelidiki misteri direktori /dev/shm supaya anda boleh menggunakannya dengan lebih baik untuk mengoptimumkan sistem Linux anda.
/dev/shm/ ialah direktori yang sangat berguna di bawah Linux, kerana direktori ini bukan pada cakera keras, tetapi dalam ingatan. Oleh itu, di bawah Linux, tidak perlu bersusah payah untuk membina ramdisk Anda boleh mencapai hasil pengoptimuman yang baik dengan terus menggunakan /dev/shm/. Satu perkara yang perlu diambil perhatian tentang /dev /shm/ ialah isu kapasiti Di bawah Linux, ia lalai kepada separuh saiz memori, yang boleh dilihat dengan menggunakan perintah df -h. Tetapi ia tidak benar-benar menduduki memori ini Jika tiada fail di bawah /dev/shm/, memori yang didudukinya sebenarnya adalah 0 bait jika ia adalah sehingga 1G dan terdapat 100M fail di dalamnya, baki 900M Ia masih boleh; digunakan oleh aplikasi lain, tetapi memori 100M yang didudukinya tidak akan dikitar semula dan dibahagi semula oleh sistem. Jika tidak, siapa yang berani menyimpan fail di dalamnya?
Secara lalai, sistem akan memuatkan /dev/shm, yang dipanggil tmpfs Sesetengah orang mengatakan ia serupa dengan ramdisk (cakera maya), tetapi ia berbeza. Seperti cakera maya, tmpfs boleh menggunakan RAM anda, tetapi ia juga boleh menggunakan partition swap anda untuk penyimpanan. Selain itu, cakera maya tradisional ialah peranti blok dan memerlukan arahan seperti mkfs untuk benar-benar menggunakannya. tmpfs ialah sistem fail, bukan peranti blok anda hanya memasangnya dan ia sedia untuk digunakan.
tmpfs mempunyai kelebihan berikut:
1. Saiz sistem fail dinamik.
2. Satu lagi faedah utama tmpfs ialah kelajuan kilatnya. Oleh kerana sistem fail tmpfs biasa akan berada sepenuhnya dalam RAM, membaca dan menulis boleh menjadi hampir serta-merta.
3. data tmpfs tidak akan dikekalkan selepas but semula kerana memori maya sememangnya tidak menentu. Oleh itu, perlu membuat beberapa skrip untuk melaksanakan operasi seperti memuatkan dan mengikat.
Saiz separuh memori maksimum lalai mungkin tidak mencukupi dalam sesetengah situasi, dan bilangan lalai inod adalah sangat rendah dan secara amnya perlu ditambah Dalam kes ini, anda boleh menggunakan perintah pelekap untuk mengurusnya.
#mount -o size=1500M -o nr_inodes=1000000 -o noatime,nodiratime -o remount /dev/shm
Pada mesin 2G, laraskan kapasiti maksimum kepada 1.5G dan bilangan inod kepada 1,000,000, yang bermaksud sehingga satu juta fail kecil boleh disimpan.
Jika anda perlu mengubah suai nilai /dev/shm secara kekal, anda perlu mengubah suai /etc/fstab
tmpfs /dev/shm tmpfs lalai,saiz=1.5G 0 0
#mount -o remount /dev/shm
Mula-mula buat folder tmp dalam /dev/shm, dan kemudian ikatkannya pada /tmp sebenar
#mkdir /dev/shm/tmp
#chmod 1777 /dev/shm/tmp
#mount –bind /dev/shm/tmp /tmp(–bind)
Selepas menggunakan perintah mount –bind olderdir newerdir untuk melekapkan direktori ke direktori lain, semua maklumat seperti kebenaran dan pemilik newerdir akan berubah. Direktori yang dipasang mewarisi semua atribut direktori yang dipasang kecuali namanya. Mod pengurusan memori amm Oracle 11g menggunakan /dev/shm, jadi kadangkala ralat ORA-00845 akan berlaku apabila mengubah suai MEMORY_TARGET atau MEMORY_MAX_TARGET
Direktori /dev/shm ialah alat yang sangat berkuasa dan fleksibel dalam sistem Linux Ia membolehkan anda mencipta dan menggunakan fail dalam memori, dengan itu meningkatkan prestasi dan keselamatan sistem. Melalui artikel ini, kami mempelajari tentang prinsip, fungsi dan penggunaan direktori /dev/shm, serta beberapa senario dan langkah berjaga-jaga aplikasi biasa. Kami berharap artikel ini dapat membantu anda lebih memahami dan menggunakan direktori /dev/shm, menjadikan sistem Linux anda lebih cekap dan selamat.
Atas ialah kandungan terperinci Rahsia direktori /dev/shm dalam sistem Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!