Mount point — file system iyerarxiyasida boshqa file system yoki storage obyektining ildizi biriktiriladigan katalog. Mount bajarilgach shu katalog yo‘li orqali yangi file system tarkibi ko‘rinadi. Unix tizimlarida barcha disklar uchun alohida harf berish o‘rniga ular bitta umumiy namespace ichiga ulanadi.
Namespace ichidagi joylashuv
Masalan, /dev/vdb1 qurilmasidagi file system /srv/data katalogiga mount qilinsa, uning ildizidagi orders katalogi /srv/data/orders sifatida ochiladi. Mountdan oldin /srv/data ichida mavjud fayllar o‘chirilmaydi, ammo yangi file system ularni vaqtincha berkitadi. Unmount qilinganda eski tarkib yana ko‘rinadi.
Root file system / ga mount qilinadi. Boot davomida /home, /var yoki /boot alohida volume’lardan ulanishi mumkin. Pseudo file systemlar ham mount qilinadi: Linux’dagi /proc process va kernel ma’lumotlarini fayl ko‘rinishida beradi, lekin oddiy disk bloklarini saqlamaydi.
Mount amali
Mount uchun source, target, file system turi va optionlar kerak bo‘lishi mumkin:
mount -t ext4 -o nodev,nosuid /dev/disk/by-uuid/ABCD /srv/data
Barqaror UUID yoki label qurilma nomidan ishonchliroq, chunki /dev/vdb kabi nomlar aniqlash tartibiga qarab o‘zgarishi mumkin. Doimiy mountlar odatda /etc/fstab yoki system manager unitida yoziladi. Noto‘g‘ri majburiy entry bootni kutish holatiga olib kelishi mumkin; dependency va timeout aniq belgilanadi.
Mount optionlar
ro faqat o‘qishni, noexec shu mountdan executable’ni bevosita ishga tushirishni cheklashni, nosuid set-user-ID ta’sirini, nodev device fayllarini talqin qilmaslikni belgilaydi. Bu himoya qatlamlari foydali, lekin application permission va identity nazoratini almashtirmaydi. Interpreter scriptni argument sifatida o‘qisa noexec barcha kod bajarilishini to‘liq to‘xtatmasligi mumkin.
Performance optionlari access time yozuvi, write barrier va cache xatti-harakatiga ta’sir qiladi. Durability optionini tushunmasdan o‘zgartirish quvvat uzilishida data xavfini oshiradi.
Bind mount va container
Bind mount mavjud directory’ni namespace’ning boshqa joyida ko‘rsatadi. Source va target bir xil underlying inode’larni ko‘radi. Container runtime host katalogini container ichidagi yo‘lga bind mount qilishi mumkin. Bu image’dan tashqaridagi configuration yoki data’ni beradi, lekin containerga host fayllariga kuchli kirish ham ochishi mumkin.
Linux mount namespace’lari turli process guruhlariga turli mount jadvalini ko‘rsatadi. Containerdagi mount hostda aynan shu ko‘rinishda paydo bo‘lishi shart emas. Mount propagation sozlamasi child va parent namespace orasidagi yangi mountlar tarqalishini boshqaradi.
Unmount va diagnostika
File system ishlatilayotganda unmount busy xatosini beradi. Processning current working directory’si, ochiq fayli, nested mount yoki swap fayli reference saqlashi mumkin. lsof va mount tree vositalari sababni aniqlaydi. Majburan yoki lazy unmount qilish active writerlar bilan data yo‘qotishi mumkin.
Tarmoq mounti uzilganda processlar I/O kutishida qolishi mumkin. Hard va soft retry semantikasi data yaxlitligiga ta’sir qiladi. Monitoring mount mavjudligini tekshirish bilan cheklanmay, read-write probe, latency va stale handle xatolarini ham kuzatadi.
Yo‘l va disk chegarasi
Dastur bir katalog ostidagi barcha fayllar bir storage’da deb taxmin qilmasligi kerak. Nested mount iyerarxiyaning o‘rtasida boshqa capacity, quota va durability xususiyatini kiritadi. Backup vositasi mount boundary’dan o‘tish-o‘tmasligini aniq belgilaydi; aks holda tarmoq volume tasodifan ikki marta nusxalanishi yoki umuman tashlab ketilishi mumkin.
Disk usage tekshiruvi ham kerakli mount pointni nishonga oladi. Mount muvaffaqiyatsiz bo‘lib, dastur oddiy root katalogiga yozsa root file system to‘lib qoladi. Service startidan oldin expected device UUID va file system turini tekshirish bu silent fallbackni aniqlaydi.
Bog‘liq tushunchalar
File system, Block device, Mount namespace, Bind mount, fstab, Volume, Inode, File permission