Sayt bo'limlari
Muharrir tanlovi:
- Internet tezligini tekshirish: usullarning umumiy ko'rinishi. Provayderingizdan haqiqiy Internet tezligini qanday aniqlash mumkin
- Windows ro'yxatga olish kitobi muharririni ochishning uchta usuli Qidiruv yordamida ro'yxatga olish kitobini ochish
- Qattiq diskni qanday qismlarga bo'lish kerak
- Biz qattiq diskni bo'limlarga ajratamiz
- Kompyuter yoqilganda signal beradi
- Windows-da fayl kengaytmalarini to'g'ri o'zgartirish Arxiv kengaytmasini qanday o'zgartirish mumkin
- YouTube YouTube-da reklamalarni reklamasiz bloklash
- TeamViewer - kompyuterni masofadan boshqarish Boshqa kompyuter bilan bog'lanish uchun dasturni yuklab oling
- Windows-da kompyuteringizning xususiyatlarini qanday aniqlash mumkin: tizim usullari va maxsus dasturlar
- Biz turli xil qurilmalarda brauzerlarni yangilaymiz: kompyuter, planshet, smartfon Yangilangan brauzerni qayerda va qanday qilib o'rnating
Reklama
FreeBSD: AMD yordamida NFS va SMBFS fayl tizimlarini avtomatik o'rnatish. FreeBSD fayl tizimi: ierarxiya va o'rnatish nuqtalari, diskdan foydalanish |
Ularda bo'limlar va fayl tizimlarini yaratish tayyorgarlik masalasidir disk maydoni foydalanish bilan tugamaydi. Barcha yaratilgan fayl tizimlari FreeBSD uchun ham mavjud bo'lishi kerak. Nima uchun ular o'rnatilishi kerak - ya'ni kataloglar va fayllarning yagona ierarxiyasiga kiritilgan bo'lib, u ham fayl tizimining nomi bilan belgilanadi. Ammo, agar ilgari biz ma'lumotlarning jismoniy tashkil etilishi haqida gapirgan bo'lsak, endi uning mantig'i bilan tanishish vaqti keldi. Fayl tizimi mantig'iMantiqan, FreeBSD fayl tizimi (har qanday Unix tizimi kabi) daraxt printsipiga ko'ra tashkil etilgan: uning asosida ildiz (simvol bilan belgilangan ildiz katalogi / va ildiz katalogi deb ham ataladi; ikkinchisini aralashtirib yubormaslik kerak). superuser uchun uy katalogi bo'lib xizmat qiluvchi / ildiz katalogi). Daraxt tanasiga o'xshash bo'lishi mumkin bo'lgan ildiz katalogidan shoxchalar - unda joylashgan pastki kataloglar va o'qlar - oddiy fayllar mavjud. Biroq, ikkinchisi kam: FreeBSD versiyalarida bu ma'lum bir entropiya fayli (/entropiya) va tizimning mualliflik huquqini tavsiflovchi fayldir /MOLALIK HUQUQI. Ammo ildiz katalogida juda ko'p pastki kataloglar mavjud va ularning ba'zilari juda murakkab tarzda joylashtirilgan bo'lib, ular chuqurroq darajadagi ichki ichki kataloglarning etarli sonini o'z ichiga oladi. Aslida, barcha Unix tizimlarida kataloglar ierarxiyasi o'xshashdir, chunki u, birinchidan, uzoq yillik an'ana bilan, ikkinchidan, barcha turdagi standartlashtiruvchi hujjatlar, xususan, FHS (Fayl tizimi ierarxiyasi standarti) bilan tartibga solinadi. ruscha tarjimada mavjud (buning uchun Viktor Kostrominga rahmat). FHS standarti dastlab bir nechta katalog tuzilmalarini soddalashtirish uchun ishlab chiqilgan Linux distributivlari. Va faqat keyinroq u boshqa Unix-ga o'xshash tizimlar uchun moslashtirildi (shu jumladan BSD klan). Biroq, aynan FreeBSD katalog ierarxiyasi FHS ruhiga namunali sodiqlik uchun namuna bo'la oladi. Va undagi harfdan tom ma'noda individual og'ishlar har doim funktsional jihatdan aniqlanadi. FHS standarti ikkita asosiy tamoyilga tayanadi - bir tomondan, umumiy va umumiy bo'lmagan kataloglarning fayl ierarxiyasini aniq ajratish, ikkinchidan, o'zgarmas va o'zgaruvchan. Birgalikda va umumiy bo'lmagan kataloglar o'rtasidagi farq umuman Unix va xususan FreeBSD ning o'ziga xos tarmoq tabiati bilan bog'liq. Ya'ni, mahalliy mashina bilan bog'liq ma'lumotlar (masalan, uning qurilmalari uchun konfiguratsiya fayllari) mahalliy yoki global tarmoqdagi boshqa mashinalardan mazmuniga kirish mumkin bo'lgan kataloglardan alohida kataloglarda joylashgan bo'lishi kerak (bunga misol faqat foydalanuvchi emas) ma'lumotlar, balki dasturlar). O'zgarmas va o'zgaruvchan kataloglar o'rtasidagi kontrastning mohiyatini misol bilan osongina tushuntirish mumkin. Shunday qilib, bir xil foydalanuvchi dasturlari o'z tabiatiga ko'ra o'zgarmas bo'lishi kerak (aniqrog'i, o'zgartirish faqat tizim ma'muri uchun mavjud, lekin o'z ishida ulardan foydalanadigan foydalanuvchining o'zi uchun emas). Shu bilan birga, ushbu dasturlar o'z faoliyati davomida nafaqat ma'lumotlar fayllarini, aytaylik, matnlar yoki tasvirlarni (ularning o'zgaruvchan tabiati izohsiz aniq), balki barcha turdagi xizmat ma'lumotlarini, masalan, log fayllari, vaqtinchalik fayllar va kabi). Ularni ishga tushirish uchun zarur bo'lgan dasturlar, kutubxonalar, konfiguratsiya fayllari va boshqalarning haqiqiy bajariladigan fayllaridan ajratilgan kataloglarda guruhlash kerak. Birgalikda va umumiy bo'lmagan, o'zgarmas va o'zgarmas kataloglarni bir-biridan ajratish kontseptsiyasiga qat'iy rioya qilish, bitta daraxtga o'xshash fayl ierarxiyasi doirasida uning alohida filiallarini jismoniy, ya'ni mustaqil fayl tizimlari shaklida ajratish imkonini beradi. izolyatsiyalangan qurilmalar (disklar, disk bo'laklari, bo'limlar; umumiy holatda - va masofaviy, tarmoqqa ulangan muhitda, lekin bu hozir muhokama qilinmaydi). Buning ko'plab sabablari bor - tezlikni oshirish, ishonchlilikni oshirish va oddiygina qulaylik haqida fikr yuritish - lekin biz hozir ular haqida gapirmaymiz. Chunki endi biz uchun muhim bo'lgan narsa shundaki, fayl daraxtining bu shoxlari umumiy fayl tizimiga kiritilishi kerak. Unix tizimlarida har bir fayl (shu jumladan katalog) tizim tomonidan nomi bilan emas, balki uning jadvaldagi yozuvining yagona identifikatori orqali tan olinadi. inodes. Ushbu fayl identifikatorlarini ko'rish uchun vositalar mavjud. Ulardan biri -i opsiyasiga ega ls buyrug'i bo'lib, u har bir nomlangan faylning identifikatorlarini chop etadi. Ildiz katalog uchun berilgan - $ ls -i / u bizga biroz kutilmagan rasmni ko'rsatadi (chiqishni soddalashtirish uchun oddiy fayllar va ildizdagi ramziy havolalar haqidagi ma'lumotlar chiqishdan chiqarib tashlanadi va qolgan kataloglar ularning identifikatorlari bo'yicha tartiblanadi): 2 ../ 2 ./ 2 dev/ 2 uy/ 2 tmp/ 2 usr/ 2 var/ 3 cdrom/ 4 mnt/ 5 root/ 8257 dist/ 8258 bin/ 8294 proc/ 8295 sbin/ 16512 stend/ 24747 va boshqalar/ yuklash/ Ushbu misoldan (bu satrlar yozilgan mashinaning fayl tizimiga taalluqli) ko'rinib turibdiki, 7 ta katalogda bir xil raqamli identifikatorlar mavjud bo'lib, ular 2 ga teng. Savol tug'iladi, bu erda o'ziga xoslik nimada? Ro‘yxatning dastlabki ikkita elementini tushunish oson: ./ joriy katalogni (bu holda ildiz) va ../ joriy katalogning asosiy katalogini; va ta'rifga ko'ra, fayl ierarxiyasida ildizdan yuqori hech narsa yo'qligi sababli, ikkinchisi o'zini anglatadi. Shuning uchun ./ va ../ bir xil identifikatorga ega bo'lishi ajablanarli emas - ular bir xil, ildiz, katalog uchun turli xil belgilar (qattiq havolalar yoki boshqacha aytganda, takroriy nomlar). Lekin xuddi shunday, birinchi qarashda ko'rinadigandek, /dev, /home, /tmp, /usr, /var kataloglari uchun identifikatorning ma'nosi tushuntirishni talab qiladi. Biroq, hamma narsa oddiy: bularning barchasi alohida qurilmalarda joylashgan mustaqil fayl tizimlari o'rnatilgan kataloglar - disk bo'limlari, masalan, /home, /usr, /var kataloglari yoki virtual fayl tizimlari. har qanday haqiqiy disk qurilmasi (qurilma fayl tizimiga ega /dev katalogi va bu holda fayl tizimi o'rnatilgan /tmp katalogi) tasodifiy kirish xotirasi, ular hali ham muhokama qilinishi kerak). Va stoldan beri inodes- har bir fayl tizimi uchun har xil, ularning har birining ildizi 2 raqami bilan aniqlanishi ajablanarli emas - raqamlash inodes ularda o'ziga xos mos yozuvlar doirasiga kiradi. Shunday qilib, o'rnatish - bu tizimdan faylni ildiz tizimida mavjud bo'lgan har qanday katalogga kiritish (to'g'ridan-to'g'ri ildizda bo'lishi shart emas, u quyida tasvirlangan har qanday darajadagi joylashtirish bo'lishi mumkin). Busiz, bunday o'rnatilgan tizimning kataloglari va fayllariga kirish imkoni bo'lmaydi. Buni "/usr fayl tizimini yaratish" kabi iboralarga duch kelganingizda tushunish muhimdir. Yuqoridagilardan ko'rinib turibdiki, yaratilayotgan narsa (newfs buyrug'i bilan) shunchaki mavhum fayl tizimining bir turi bo'lib, u o'z "nomini" faqat belgilangan katalogga o'rnatish vaqtida oladi. Qizig'i shundaki, o'rnatish uchun katalog identifikatori (o'rnatish nuqtasi deb ham ataladi) faqat o'rnatish vaqtida topiladi. Buni tekshirish uchun oddiy tajriba o'tkazamiz. Vaqtinchalik o'rnatilgan fayl tizimlarini o'rnatish uchun maxsus mo'ljallangan /mnt katalogida siz uchta kichik katalogni ko'rishingiz mumkin - /mnt/disk, mnt/iso, /mnt/usb (bu mening tizimimda, men ularni o'zim uchun qulaylik yaratish uchun yaratdim; dastlab FreeBSD-dagi /mnt katalogi bo'sh). Tizim ishga tushganda, ularda hech narsa o'rnatilmaydi va ularning odatiy holati bo'sh bo'lishi kerak. Agar siz ularning identifikatorlariga qarasangiz, shunga o'xshash narsani ko'rishingiz mumkin: $ ls -i /mnt 18 disk/ 24 iso/ 19 usb/ Keling, USB interfeysi bilan flesh-diskni olib, /mnt/usb-ga o'rnatamiz (men aynan shu maqsadda mo'ljallangan) va ko'rishni takrorlaymiz. Va biz ko'ramiz: 18 disk/ 24 iso/ 2 usb/ Ya'ni bo'sh qolgan kataloglarning identifikatorlari (/mnt/disk va /mnt/iso) o'zgarmadi, lekin katalog identifikatori /mnt/usb sehrli tarzda 2 ga o'zgardi. Chunki o'rnatish vaqtida u uchun ildizga aylandi o'zining fayl tizimi va hisoblash uchun mos yozuvlar nuqtasi inodes unda yozilgan barcha fayllar. Keling, biroz chetga chiqaylik va qattiq havolalar haqida eslaylik, ular orqali bir xil inode va u bilan bog'langan ma'lumotlar bloklariga turli nomlar berilishi mumkin. Endi nima uchun bunday dublikatlarning barchasi bitta fayl tizimida joylashgan bo'lishi kerakligi aniq: axir, turli fayl tizimlari o'zlarining mos kelmaydigan raqamlariga ega. inodes, va ularni raqamlar bo'yicha aniqlashning iloji yo'q (aks holda tizim bizning misolimizdagi /usr va /var kataloglarini qanday ajratadi - axir u fayl nomlariga ahamiyat bermaydi). O'ziga xos bo'lgan ramziy havolalar uchun inode(aslida, ulardan tashqari deyarli hech narsa) ularning identifikatorlari bilan, ular joylashgan fayl tizimining mos yozuvlar tizimida raqamlangan, bunday cheklov yo'q. Va ramziy havolalar har qanday joyda joylashgan bo'lishi mumkin (shu jumladan masofaviy kompyuterda - nafaqat boshqa bo'limda). Biroq, ildiz katalogimiz misoliga qaytaylik. Ko'rib chiqilgan hamma narsadan ko'rinib turibdiki, uning bir qator filiallari alohida bo'limlarda yotadi va o'zlarining fayl tizimlarini tashkil qiladi (aslida biz ikkalasini ham aynan shuning uchun yaratdik). Va shuning uchun ularning barchasi o'rnatilishi kerak. O'rnatish amaliyotiO'rnatish maqsadlari tizimni yuklash paytida avtomatik ravishda yoki qo'lda bajariladigan mount buyrug'i bilan xizmat qiladi. buyruq qatori. Aslida, to'liq ma'noda, har qanday holatda faqat ildiz fayl tizimi avtomatik ravishda o'rnatiladi. U diskda bo'lishi shart emas - qutqaruv kompakt diski yoki boshqa xavfsizlik vositalaridan ishga tushirilganda, uni quyidagi manzilda joylashtirish mumkin. virtual disk RAMda. Однако процесс монтирования корневой файловой системы столь же неизбежен, как победа социализма в мировом масштабе: также, как социализм, не победив в мировом масштабе, просто утрачивает способность к существованию (что мы не так давно и наблюдали), так и ОС без корневой системы существовать bo'lishi mumkin emas. Linuxda bu yadro vahima rejimini keltirib chiqaradi - taxminan 20 yil oldin bizning rahbarlarimiz tushgan holat. To'g'ri, ular Linuxga qaraganda kuchliroq bo'lib chiqdi va tezda tiklandi - shuning uchun ular hali ham bizni qayta ishga tushirishmoqda (yoki qayta ishga tushirishdami? - lekin biz kuchayib bormoqdamiz :)). Biroq, bu men hozir sizga taqdim etishga harakat qiladigan o'rnatish masalasiga taalluqli emas. Shunday qilib, ildiz tizimidan tashqari barcha fayl tizimlarini o'rnatish uchun siz ba'zi qadamlarni bajarishingiz kerak. Avval biz ularni qo'lda qanday qilishni va keyin ularni tegishli konfiguratsiya fayllarida qanday abadiylashtirishni ko'rib chiqamiz. Shunday qilib, o'rnatish buyrug'i. Aslida, bu dasturlarning butun oilasi bo'lib, ularning har biri ma'lum turdagi fayl tizimlarini o'rnatish uchun mo'ljallangan - nafaqat UFS, balki FreeBSD tomonidan qo'llab-quvvatlanadigan har qanday. Ularning ro'yxati juda keng - siz /sbin katalogiga qarab, bu haqda tasavvurga ega bo'lishingiz mumkin: $ ls -1 /sbin/mount* javoban bizga nima beradi /sbin/mount_cd9660* /sbin/mount_devfs* /sbin/mount_ext2fs* /sbin/mount_fdescfs* /sbin/mount_linprocfs* /sbin/mount_mfs* /sbin/mount_msdosfs* /sbin/mount_nfs* /sbin/mount_nfs* /sbin/mount_nfs/sbin/mount_nts/ /sbin/mount_nullfs* /sbin/mount_procfs* /sbin/mount_std* /sbin/mount_udf* /sbin/mount_umapfs* /sbin/mount_unionfs* Ushbu ro'yxatdagi har bir buyruq boshqa turdagi fayl tizimini o'rnatish uchun javobgardir, ularning ba'zilariga keyinroq qaytamiz. Hozircha, faqat UFS va UFS2 bilan ishlash uchun mo'ljallangan /sbin/mount o'zini ta'kidlaymiz. Buyruqlar qatoridan chaqirilganda, u ikkita argumentni talab qiladi - o'rnatiladigan qurilmaning nomi va o'rnatish nuqtasi (ya'ni, asosiy fayl tizimi o'rnatilishi kerak bo'lgan katalog). Qurilma nomi UFS2 fayl tizimi (UFS) bilan mavjud BSD bo'limida allaqachon xaritalangan patrisiyani ko'rsatishi kerak, masalan, $ mount /dev/ads0d /usr fayl tizimini fayl daraxti ildizining /usr katalogidagi belgilangan bo'limga o'rnatadi. Agar qurilmadagi fayl tizimi yaratilmagan bo'lsa yoki UFS/UFS2 dan boshqa turdagi bo'lsa, noto'g'ri super blokni ko'rsatuvchi xato xabari paydo bo'ladi: xuddi shu nomdagi Linux yordam dasturidan farqli o'laroq, FreeBSD o'rnatish buyrug'ining o'zi faylni taniy olmaydi. tizim turi. O'rnatish nuqtasiga quyidagi talablar qo'yiladi: a) o'rnatish vaqtida bir xil nomdagi katalog mavjud bo'lishi kerak va b) iloji boricha bo'sh bo'lishi kerak. Birinchisi shart, ammo ikkinchisi mutlaqo to'g'ri emas. Har qanday fayllar bilan katalogga o'rnatish muammosiz davom etadi (men eslayman, Linuxda bu yaqinda tizimning ishdan chiqishiga sabab bo'lgan), lekin uning barcha mazmuni o'chirilmaguncha mavjud bo'lmaydi. Va agar undagi fayllar har qanday quyi tizim uchun muhim rol o'ynasa, bu har qanday yomon oqibatlarga olib kelishi mumkin. Misol uchun, agar X oyna tizimi ishlayotgan vaqtda fayl tizimini o'rnatish orqali /tmp katalogining mazmuni bloklangan bo'lsa, natijada X serverining ishdan chiqishi bo'lishi mumkin. Yaxshiyamki, agar kerak bo'lsa, siz birlashtirilgan o'rnatishni amalga oshirishingiz mumkin (pastga qarang). Belgilangan shaklda o'rnatish ba'zi bir standart xususiyatlar bilan amalga oshiriladi: fayl tizimi deb ataladigan rejimda o'qiladi / yoziladi. noasync (metama'lumotlar operatsiyalari sinxron tarzda amalga oshiriladigan va ma'lumotlar operatsiyalari asinxron tarzda amalga oshiriladi). Bu pozitsiyani -o parametri qiymatlari yordamida o'zgartirish mumkin. Ularning ko'pi bor, lekin amalda asosiylari bu bosqichda biz uchun bo'ladi:
O'rnatilgan fayl tizimiga ma'lum turdagi fayllarni, masalan, bajariladigan fayllar (-o noexec), qurilma fayllari (-o nodev) yoki shunga o'xshash fayllarni joylashtirishni taqiqlovchi -o parametrining yana bir qancha qiymatlari mavjud. - chaqirdi. bir oz o'z joniga qasd qilish. Biroq, ular asosan server ma'murlari uchun amaliy ahamiyatga ega va xavfsizlik maqsadlarida xizmat qiladi. Ish stoli mashinasida o'rnatishning odatiy shakli quyidagicha bo'ladi: $ mount -o noatime /dev/ads0d /usr; $ mount -o noatime /dev/ads0e /var; $ mount -o noatime /dev/ads0f /home Yuqoridagilarning barchasi faqat FreeBSD fayl tizimlarini o'rnatish uchun amal qiladi. Biroq, amalda ko'pincha boshqa turdagi fayl tizimlarini uning katalog daraxtiga kiritish zarurati tug'iladi. Bu, ayniqsa, ISO9660 (Mac-dan tashqari barcha CD-lar uchun odatiy fayl tizimi) va har xil turdagi FATlar uchun talab qilinadi. Bunday holda, tegishli o'rnatish buyrug'i aniq chaqirilishi kerak, masalan. $ mount_cd9660 /dev/acd0 /cdrom ixcham o'rnatish uchun yoki $ mount_msdosfs /dev/ad## /mnt har qanday turdagi FAT uchun (jumladan, FAT32).Biroq bu mount buyrug'iga -t file_system_type opsiyasini belgilash orqali bilvosita ham amalga oshirilishi mumkin.Shunday qilib, buyruq $ mount -t ext2fs /dev/ad## /mnt/linux mounts fayli Linux tizimi(agar tegishli xususiyat yadroga kiritilgan bo'lsa). Bunday holda, BSD bo'limlari uchun standart o'rnatish ext2fs bo'limlarini o'rnatish uchun mo'ljallangan /mount_ext2fs buyrug'i bilan almashtiriladi (va ext3fs ham - lekin, albatta, hech qanday jurnal funksiyasisiz). Ya'ni, shakl $ mount -t fstype ...... buyrug'ining to'liq ekvivalenti bo'ladi $mount_fstype ...... FreeBSD-da fayl tizimlarini (jumladan, olinadigan muhitda) o'rnatish bo'yicha barcha operatsiyalar superfoydalanuvchi huquqlarini talab qiladi. Bu erda -o parametrining qiymatlari, mount buyrug'ining Linux versiyasidan farqli o'laroq, oddiy foydalanuvchilarga o'rnatish imkonini beruvchi -o foydalanuvchi parametrini o'z ichiga olmaydi. To'g'ri, maxsus eslatmada muhokama qilinganidek, buni hal qilishning bir necha yo'li bor. Avtomatik o'rnatishni sozlashBiroq, amalda qo'lda o'rnatish faqat kamdan-kam ishlatiladigan fayl tizimlari uchun qo'llaniladi. FreeBSD-ning ishlashi uchun muhim bo'lgan barcha fayl tizimlari tizim ishga tushganda avtomatik ravishda o'rnatiladi va tez-tez ishlatiladiganlari yarim avtomatik rejimda o'rnatiladi. Avtomatik o'rnatish uchun jarayon davomida o'rnatish dasturi ishga tushiriladi. bootstrap ishga tushirish skriptlaridan. U o'zining konfiguratsiya faylini qidiradi - /etc/fstab va unda topilgan hamma narsani o'rnatadi, ayrim istisnolardan tashqari (quyida muhokama qilinadi). /etc/fstab faylining o'zi FreeBSD o'rnatilganda avtomatik ravishda yaratiladi, shu jumladan hayotni qo'llab-quvvatlash uchun zarur bo'lgan barcha fayl tizimlari. Biroq, kelajakda uni o'rnatish uchun yangi qurilmalar yoki allaqachon yoqilgan qurilmalar uchun qo'shimcha imkoniyatlar qo'shish uchun uni qo'lda tahrirlash mumkin. /etc/fstab fayli oddiy ma'lumotlar bazasi matn formati(bo'shliqlar yoki yorliqlar bilan ajratilgan maydonlar), shu jumladan quyidagi maydonlar:
Yangi o'rnatilgan FreeBSD-da /etc/fstab majburiy ravishda quyidagi yozuvlarni o'z ichiga oladi (1-IDE kanalidagi Master diskning 1-bo'limiga misol): # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1a / ufs rw 1 1 /dev/ad0s1b hech biri almashtirilmaydi 0 0 Agar siz aqlli odamlarning maslahatiga (va sysinstall-ning standart sozlamalariga) amal qilsangiz va ildizdan fayl tizimining ba'zi filiallarini tanlasangiz, quyidagi kabi yozuvlar mavjud. /dev/ad0s1d /var ufs rw 0 0 /dev/ad0s1e /usr ufs rw 0 0 /dev/ad0s1f /tmp ufs rw 0 0 /dev/ad0s1g /home ufs rw 0 0 foydalanuvchi uy kataloglari bilan fayl tizimi uchun javobgar. Shubhasiz, "Options" maydoniga siz -o parametrining har qanday mavjud (va oqilona) qiymatlarini (vergul bilan ajratilgan holda, bo'sh joysiz) qo'shishingiz mumkin, masalan, barcha fayl tizimlari uchun noatime va /tmp uchun - async , chunki ushbu katalogning mazmuni qayta ishga tushirilgandan keyin saqlanmasligi kerak. Yuqoridagilar ishga tushirilganda avtomatik ravishda o'rnatiladigan fayl tizimlari uchun amal qiladi. Biroq, vaqti-vaqti bilan ulangan tizimlar uchun /etc/fstab-ga kirishlarni hech kim sizni bezovta qilmaydi - bu holda ular soddalashtirilgan sxema bo'yicha o'rnatilishi mumkin (bu men yuqorida yarim avtomatik rejimni nazarda tutgan edim). Shunday qilib, CD drayveri uchun qator qo'shishingiz mumkin (aslida, CD sysinstall-da o'rnatish manbai sifatida tanlangan bo'lsa, u /etc/fstab faylini yaratishda avtomatik ravishda paydo bo'ladi) /dev/acd0 /cdrom cd9660 ro, noauto 0 0 unda variantlar, siz taxmin qilganingizdek, ishga tushirishda (noauto) va faqat o'qish rejimida (ro) o'rnatishdan bosh tortishni belgilaydi. Shundan so'ng, CDni o'rnatish uchun faqat o'rnatish nuqtasini ko'rsatish kifoya qiladi - $mount/cdrom yoki. aksincha, qurilma fayl nomi $ mount /dev/acd0 Shunga o'xshash yozuvlar barcha olinadigan drayvlar (Zip, USB drayvlar, hatto floppi disklar) va BSD bo'lmagan bo'limlar (FAT yoki Ext2fs) uchun ham amalga oshirilishi mumkin. Aytgancha, /etc/fstab-ga o'zgartirishlar kiritilgandan so'ng, mashinaning qayta ishga tushishini kutmasdan darhol soddalashtirilgan sxema yordamida fayl tizimlarini o'rnatishingiz mumkin. O'chirishQuvvatni o'chirish yoki mashinani qayta ishga tushirishdan oldin barcha tegishli fayl tizimlari o'chirilishi kerak. Yaxshi o'chirilgandan so'ng, bu avtomatik ravishda amalga oshiriladi, natijada har bir yoziladigan fayl tizimi o'zining superblokida yozilgan toza o'chirish bitini oladi. Ushbu bitning mavjudligi fsck yordam dasturini keyingi safar tizim ishga tushirilganda fayl tizimlarining izchilligini tekshirishga to'sqinlik qiladi. Biroq, bir qator hollarda (masalan, Soft Updates mexanizmini ulashda yoki uzishda yoki yaxlitlikni tekshirishda) umount buyrug'i qo'llaniladigan fayl tizimlarini qo'lda o'chirish (va qayta o'rnatish) kerak bo'ladi. Bu bitta argumentni talab qiladi - katalog daraxtidan "olib tashlangan" fayl tizimining o'rnatish nuqtasini ko'rsatish, masalan: $umount/tmp yoki yarim avtomatik o'rnatishda bo'lgani kabi, "o'chirish" qurilmasining fayl nomi: $ umount /dev/ad#s#? Bir qator bilan bir nechta fayl tizimlarini uzishingiz mumkin: $ umount /usr /var /home Yoki mumkin - barcha o'rnatilgan fayl tizimlari yoki /etc/fstab faylida ro'yxatlangan barcha fayl tizimlari (rootdan tashqari), buning uchun variantlar kerak bo'ladi. $umount -A $umount -a mos ravishda. Bundan tashqari, -t parametrining qiymatlarini ko'rsatish orqali ma'lum turdagi fayl tizimlarini o'chirish mumkin. Ha, jamoa $ umount -t ufs CD va tizimdagi barcha narsalarga ta'sir qilmasdan, faqat BSD bo'limlarini o'chirib qo'yadi. O'chirish vaqtida fayl tizimlari ishlatilmasligi kerak, ya'ni ularda joylashgan fayllarga kirish imkoni bo'lmasligi kerak. Shunday qilib, fayl tizimining istalgan katalogida bo'lish uni o'chirishni rad etish uchun etarli sababdir (qurilma bandligi kabi xabar bilan), shuning uchun yuqorida sanab o'tilgan buyruqlarning hech biri ildiz fayl tizimini o'chira olmaydi. O'chirishni rad etishning sababi har qanday dastur tomonidan ma'lumotlar faylini o'qish bo'ladi - faylni o'chirishda bo'lgani kabi, har qanday jarayon tomonidan ochilgan fayl identifikatori bunga yo'l qo'ymaydi. Shu bilan birga, siz foydalanayotgan fayl tizimini ham o'chirib qo'yishingiz mumkin - buning uchun -f opsiyasi bilan umount buyrug'ini berishingiz kerak bo'ladi (majburiydan - ya'ni kuch bilan). To'g'ri, bu xatolarga olib kelishi mumkin, shuning uchun juda zarur bo'lmasa, unga murojaat qilmaslik yaxshiroqdir. Va majburiy o'chirish opsiyasi ildiz fayl tizimiga hech qanday ta'sir qilmaydi. Ommaviy o'rnatishFayl tizimlarida past darajadagi operatsiyalarni bajargandan so'ng ishlashni davom ettirish uchun ularni orqaga o'rnatish kerak bo'ladi. Buni nafaqat qayta yuklamasdan, balki zerikarli individual o'rnatishsiz ham qilish mumkin. Faqat -a opsiyasidan foydalaning: $mount -a u orqali /etc/fstab-da yozuvlar mavjud bo'lgan barcha fayl tizimlari o'rnatiladi. Bunday holda, noauto bayrog'i bilan belgilanganlarni o'rnatishga harakat qilinadi. Bunga yo'l qo'ymaslik uchun fayl tizimi turini qo'shimcha ravishda belgilashingiz mumkin. Ya'ni, jamoa $ mount -a -t ufs CD yoki flesh-disklarga tajovuz qilmasdan faqat BSD bo'limlarini o'rnatadi. Yoki, aksincha, global o'rnatish jarayonidan /etc/fstab ro'yxatidagi ba'zi fayl tizimlarini, masalan, hozirda keraksiz FATlarni chiqarib tashlashingiz mumkin: $ mount -a -t nomsdosfs Xulosa o'rniga muqaddimaAytgancha, variantlar va argumentlarsiz mount buyrug'i (va bu shaklda, yuqorida ko'rib chiqilgan barcha holatlardan farqli o'laroq, uni oddiy foydalanuvchi berishi mumkin) hozirda o'rnatilgan fayl tizimlari ro'yxatini ko'rsatadi, unda o'rnatish nuqtasi, uning shartlari va. ish rejimi. Masalan, ushbu satrlar yozilgan mashina uchun uning chiqishi quyidagicha ko'rinadi: /dev/ad0s1a yoqilgan / (ufs, local, noatime, soft-updates) devfs on /dev (devfs, local) /dev/ccd0e on /var (ufs, local, noatime, soft-updates) /dev/ccd1e on / usr (ufs, local, noatime, soft-yangilanishlar) /dev/ccd2e on /home (ufs, local, noatime, soft-yangilanishlar) /dev/md0 on /tmp (ufs, local, noatime, async) Chiqishning birinchi qatori shuni ko'rsatadiki, /dev/ad0s1a bo'limi bizning asosiy katalogimizga o'rnatilgan, UFS fayl tizimi (ayniqsa, bu holda - UFS2, lekin mount buyrug'ining chiqishida ular farq qilmaydi) Soft Updates bilan. mexanizm yoqilgan, mahalliy (ya'ni, ushbu mashinaning diskida joylashgan - tarmoq drayverlari mount buyrug'i bilan ham o'rnatiladi) va atime atributini yangilash shart emas. $ ko'proq /etc/fstab /dev/ad0s1b hech qanday almashtirish sw 0 0 /dev/ar0s1b hech qanday almashtirish sw 0 0 /dev/ad0s1a / ufs rw,noatime 1 1 /dev/ccd0e /var ufs rw,noatime 2 2 /dev/ ccd1e /usr ufs rw,noatime 2 2 /dev/ccd2e /home ufs rw,noatime 2 2 /dev/acd0 /cdrom cd9660 ro,noauto 0 0 /dev/da0s1 /mnt/usb ext2fs rwa0to,noau, dev/md0 /tmp mfs rw,noatime,async,-s32m 2 0 keyin biz chiqish liniyalaridan biri ekanligini ko'ramiz Devfs on /dev (devfs, mahalliy) Uning yozuvlari orasida yozishmalar umuman yo'q. Ushbu qurilmalar va fayl tizimlari nima? Buyruqlar yordamida siz kirish huquqlarini va fayllar va kataloglar egasini o'zgartirishingiz mumkin chmod Va chown. Huquqlarni o'rnatish uchun niqob yaratilgan fayllar, global miqyosda o'zgartirilishi mumkin /etc/profile Linux uchun va /etc/login.conf FreeBSD uchun. Odatda, standart niqob 022 . Ma'nosi umask dan ayiriladi 777 , shuning uchun ruxsatlar muhim bo'ladi 755 . ijrochi - bajarishga ruxsat berilgan o'qish - o'qish ruxsati yozish - yozish ruxsati SUID bit - fayl atributi bajariladigan fayl atributi bilan birgalikda faylni faylni ishga tushiruvchi emas, balki fayl egasining samarali UID bilan bajarishga imkon beradi. 1 --x bajarish # Ruxsatlar 764 = exec/o'qish/yozish | o'qish/yozish | o'qing 2 -w- yozish # Uchun: |-- Egasi --| |-Guruh-| |Oth| 4 r-- ugo=a ni o‘qing u = foydalanuvchi, g = guruh, o = boshqalar, a = hamma# chmod MODE[,MODE] FILE # REJIM shaklga ega: *([-+=]()) # chmod 640 /var/log/maillog # Ruxsatlarni teng qilib belgilang -rw-r----- # chmod u=rw,g=r,o= /var/log/maillog # Yuqoridagi bilan bir xil # chmod -R o-r /home/* # Ruxsatlarni rekursiv ravishda o'zgartiring, o'qishga ruxsat bermang Boshqa # chmod u+s /path/to/prog # O'rnatish SUID bajariladigan fayl uchun bit (bu erda ehtiyot bo'ling, nima qilayotganingizni tushunishingiz kerak)# find / -perm -u+s -chop etish # O'rnatilgan barcha dasturlarni toping SUID bit# chown foydalanuvchisi: guruh /yo'l/to/fayl # Foydalanuvchi va guruhni fayl egasi sifatida belgilang# chgrp guruhi /yo'l/to/fayl # Faylga ega bo'lgan guruhni o'zgartiring# chmod 640 `topish ./ -turi f -print` # Ruxsatlarni o'zgartiring 640 barcha fayllar uchun# chmod 751 `toping ./ -turi d -print` # Ruxsatlarni o'zgartiring 751 barcha kataloglar uchun Disk haqida ma'lumot# diskinfo -v /dev/ad2 # Disk ma'lumotlarini ko'rish ( sektor/hajm) FreeBSD# hdparm -I /dev/sda # Haqida ma'lumot IDE/ATA disk (Linux)# fdisk /dev/ad2 # Disk bo'limlarini o'zgartirishni ko'rsatish# smartctl -a /dev/ad2 #Ko'rsatuv SMART disk ma'lumotlariYuklanmoqdaFreeBSDFavqulodda vaziyatda eski yadroni yuklash uchun, masalan, muvaffaqiyatsiz qurish va yangisini o'rnatishdan so'ng, buyruq qatoriga o'tish uchun orqaga hisoblash paytida 6 tugmasini bosib yuklab olishni to'xtating. # tushirish # kernel.old # yuklashO'rnatish nuqtalari, diskdan foydalanish#tog' | ustun - t # O'rnatilgan fayl tizimlarini ko'rsatish#df # Bo'sh joy va o'rnatilgan qurilmalar miqdorini ko'rsating# mushuk / proc / bo'limlar # Barcha ro'yxatdan o'tgan bo'limlarni ko'rsatish (Linux)Katalog ma'lumotlari# du -sh * # Katalog o'lchamlari ro'yxat sifatida# du -csh # Joriy katalogning umumiy hajmi# du -ks * | sort -n -r # Kilobayt o'lchamiga ko'ra saralangan kataloglar ro'yxati# ls -lSr # Kataloglar ro'yxati, teskari saralashKim qaysi fayllarni ochdiBa'zan buyruqni keltirib chiqaradigan bo'limni qaysi fayl bloklaganligini aniqlash kerak miqdori tegishli xatoni beradi. # umount /home/ umount: /home-ni ajratish # Ungacha bo'limni ajratib bo'lmaydi /uy bloklangan muvaffaqiyatsiz: qurilma bandFreeBSD va ko'pchilik Unix-ga o'xshash tizimlar# fstat -f / uy # o'rnatish nuqtasi uchun# fstat -p PID # PID bilan dastur uchun# fstat -u foydalanuvchisi # foydalanuvchi nomi uchun Toping faylni oching Uchun Xorg: # ps ax | grep Xorg | awk "($1 chop)" 1252 # fstat -p 1252 FOYDALANUVCHI CMD PID FD MOUNT INUM MODE SZ|DV R/W ildiz Xorg 1252 root / 2 drwxr-xr-x 512 r root Xorg 1252 matn /usr 216016 -rws- x--x 1679848 r root Xorg 1252 0 /var 212042 -rw-r--r-- 56987 w Faylni toping inum 212042 katalogda /var buni qilishingiz mumkin: # find -x /var -inum 212042 /var/log/Xorg.0.logLinuxyordamida katalogdagi ochiq faylni toping termoyadroviy qurilma yoki lsof: # fuser -m /home # Kirish mumkin bo'lgan jarayonlar ro'yxati /uy # lsof /home BUYRUQ PID FOYDALANIShI FD TURI QURILMA HAZMASI TUGUN NOMI tcsh 29029 eedcoba cwd DIR 0,18 12288 1048587 /home/eedcoba (guam:/home) lsof 29140 eedcoba D8182. /home/eed coba (guam: /home) tomonidan toping PID ilovalar: ps ax | grep Xorg | awk "(chop etish $1)" 3324 # lsof -p 3324 BUYRUQ PID FOYDALANUVCHI FD TURI QURILMA O'lchami tugun nomi Xorg 3324 root 0w REG 8.6 56296 12492 /var/log/Xorg.0.logof /var fayl nomi bo'yicha: #logs /Xorg.0.log BUYRUQ PID FOYDALANUVCHI FD TURI QURILMA O'lchami tugun nomi Xorg 3324 root 0w REG 8.6 56296 12492 /var/log/Xorg.0.logFayl tizimlarini o'rnatish/qayta o'rnatishMasalan cdrom, roʻyxatdan oʻtgan /etc/fstab: # mount /cdrom Yoki qurilmani ichidan topishingiz mumkin /dev yoki chiqishda dmesgFreeBSD# mount -v -t cd9660 /dev/cd0c /mnt # Diskni o'rnatish CDrom(birinchi usul)# mount_cd9660 /dev/wcd0c /cdrom # Diskni o'rnatish CDrom(ikkinchi usul)# mount -v -t msdos /dev/fd0c /mnt # floppi diskga yozish /etc/fstab: # Device Mountpoint FStype Options Dump Pass# /dev/acd0 /cdrom cd9660 ro,noauto 0 0 Foydalanuvchilarga disklarni o'rnatishga ruxsat bering: # sysctl vfs.usermount=1 # Yoki qatorni kiriting "vfs.usermount=1" /etc/sysctl.confLinux# mount -t auto /dev/cdrom /mnt/cdrom # Diskni o'rnatish uchun odatiy buyruq cdrom # mount /dev/hdc -t iso9660 -r /cdrom # Diskni o'rnatish IDE # mount /dev/scd0 -t iso9660 -r /cdrom # Diskni o'rnatish SCSI cdrom# mount /dev/sdc0 -t ntfs-3g /windows # Diskni o'rnatish SCSI Roʻyxatdan oʻtish /etc/fstab: /dev/cdrom /media/cdrom subfs noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec 0 0Linux bilan FreeBSD bo'limini o'rnatishBo'lim raqamiga qarang fdisk, odatda bu ildiz bo'limi, lekin u boshqasida bo'lishi mumkin BSD tilim. Agar FreeBSD bo'limida ko'plab bo'laklar bo'lsa, ular orqali ko'rinmaydi fdisk, lekin ularni topish mumkin dev/sda* yoki /dev/hda*. # fdisk /dev/sda # FreeBSD bo'limini toping/dev/sda3 * 5357 7905 20474842+ a5 FreeBSD # mount -t ufs -o ufstype=ufs2,ro /dev/sda3 /mnt /dev/sda10 = /tmp; /dev/sda11 /usr # Yana bir bo'lakQayta ulashQurilmani avval ajratmasdan qayta o'rnating, masalan fsck# mount -o remount,ro / # Linux # mount -o ro / # FreeBSD Ma'lumotlar oqimidan nusxa ko'chiring CDROM"va faylga ISO tasviri. # dd if=/dev/cd0c of=file.isoTezda almashtirish bo'limini yaratishAytaylik, siz almashtirish bo'limini oshirishingiz kerak, deylik 2 gigabayt, /swap2gb(Linux uchun) # dd if=/dev/zero of=/swap2gb bs=1024k count=2000 # mkswap /swap2gb # Swap yaratish # swapon /swap2gb # Swapni yoqing, endi undan foydalanish mumkin# swapoff /swap2gb # Swapni o'chirish # rm /swap2gbSMB bo'limini o'rnatishCIFS- Umumiy Internet fayl tizimi SMB- server xabar bloki Aytaylik, siz umumiy foydalanishga kirishingiz kerak SMB Bo'lim myshare serverda smbserver, terilgan manzil Windows mashinasi bo'ladi \\smbserver\myshare\. Biz uni o'rnatamiz /mnt/smbshare. uchun unutmang cifs IP manzili yoki domen nomi talab qilinadi.Linux# smbclient -U user -I 192.168.16.229 -L //smbshare/ # Aksiyalar ro'yxati # mount -t smbfs -o username=winuser //smbserver/myshare /mnt/smbshare # mount -t cifs -o username=winuser, password=winpwd //192.168.16.229/myshare /mnt/share Qo'shimcha paket mount.cifs masalan, faylda imtiyozlarni saqlash imkonini beradi /home/user/.smb: username=winuser password=winpwd Va endi biz o'rnatamiz: # mount -t cifs -o credentials=/home/user/.smb //192.168.16.229/myshare /mnt/smbshareFreeBSDKalitdan foydalaning -I IP manzilini o'rnatish uchun (yoki DNS); smbserver, bu Windows nomi. # smbutil view -I 192.168.16.229 //winuser@smbserver # Umumiy manbalar ro'yxati# mount_smbfs -I 192.168.16.229 //winuser@smbserver/myshare /mnt/smbshareTasvirni o'rnatishLinux orqaga qaytish# mount -t iso9660 -o loop file.iso /mnt # CD tasvirini o'rnatish# mount -t ext3 -o loop file.img /mnt # Tasvirni fayl tizimi bilan o'rnatish ext3FreeBSDFoydalanish md- xotira qurilmasi (agar kerak bo'lsa, qiling kldload md.ko): # mdconfig -a -t vnode -f file.iso -u 0 # mount -t cd9660 /dev/md0 /mnt # umount /mnt; mdconfig -d -u 0 # Xotira qurilmasini tozalash Yoki psevdo qurilmadan foydalanish( VN, Virtual tugun): # vnconfig /dev/vn0c file.iso; mount -t cd9660 /dev/vn0c /mnt # umount /mnt; vnconfig -u /dev/vn0c # Pseudo qurilmani tozalangISO tasvirini yaratish va yoqishBiz CD yoki DVD sektorini sektorlar bo'yicha nusxalaymiz. # dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc Foydalanish mkisofs katalogdagi fayldan rasm yaratish uchun. Fayl nomi cheklovlarini yengish uchun opsiyadan foydalaning -r, shu jumladan kengaytma RockRidge, uchun asosiy narsa UNIX tizimlari, -J o'z ichiga oladi Joliet, Microsoft tomonidan qo'llaniladi, -L imkon beradi ISO9660 nuqta bilan boshlanadigan ismlar. # mkisofs -J -L -r -V TITLE -o imagefile.iso /path/to/dir FreeBSD-da, mkisofs/usr/ports/sysutils/cdrtools dan o'rnatilishi mumkin.CD/DVD ISO tasvirlarini yozishFreeBSDFreeBSD o'rnatilmaydi DMA yoqilgan ATAPI qurilmalar, bu o'zgaruvchi orqali amalga oshirilishi mumkin sysctl yoki faylda /boot/loader.conf, quyidagi yozuvlar. hw.ata.ata_dma="1" hw.ata.atapi_dma="1" Foydalanish burncd ATAPI qurilmalari uchun ( burncd, standart dastur, asosiy tizimning bir qismi) va cdrecord(dan /usr/ports/sysutils/cdrtools) SCSI qurilmalari uchun. # burncd -f /dev/acd0 data imagefile.iso fixate # ATAPI qurilmalari uchun# cdrecord -scanbus # Yozuvchini toping # cdrecord dev=1,0,0 imagefile.isoLinuxXuddi shu tarzda foydalaning cdrecord, yuqorida tavsiflanganidek. Bundan tashqari, siz mahalliy ATAPI interfeysidan foydalanishingiz mumkin: # cdrecord dev=ATAPI -scanbus Record yuqorida tavsiflanganidek.dvd+rw vositalaridvd+rw-tools to'plami (FreeBSD: ports/sysutils/dvd+rw-tools) DVD disklari bilan ishlash uchun zarur bo'lgan barcha funksiyalarga ega. o'simtalar, CD yoki DVD yozish uchun. Misollar bilan hujjatlarni FreeBSD qoʻllanmasining 18.7-bobida topish mumkin # -dvd-compat diskni yopadi# growisofs -dvd-compat -Z /dev/dvd=imagefile.iso # Mavjudni yozing iso tasvir # growisofs -dvd-compat -Z /dev/dvd -J -R /p/to/data # To'g'ridan-to'g'ri yozingTasvirni Nero .nrg faylidan .iso fayliga aylantiringNeron tasvirga 300 kb sarlavha qo'shadi, uni yordamida kesish mumkin dd. # dd bs=1k if=imagefile.nrg of=imagefile.iso skip=300Bin/kue tasvirini .iso ga aylantiringBuni kichik dastur, bchunk yordamida amalga oshirish mumkin. FreeBSD-da uni portlarda topish mumkin /usr/ports/sysutils/bchunk. # bchunk imagefile.bin imagefile.cue imagefile.isoFayldan rasm yaratishMasalan, 1 Gb bo'lim fayldan foydalanadi /usr/vdisk.img. Bunday holda biz kalitdan foydalanamiz -u 0, lekin raqam har qanday bo'lishi mumkin.FreeBSD# dd if=/dev/random of=/usr/vdisk.img bs=1K count=1M # mdconfig -a -t vnode -f /usr/vdisk.img -u 0 # Qurilma yarating /dev/md1 # bsdlabel -w /dev/md0 # newfs /dev/md0c # mount /dev/md0c /mnt # umount /mnt; mdconfig -d -u 0; rm /usr/vdisk.img # Tozalash md Fayldan yaratilgan tasvir tizimni yuklash vaqtida qator yozish orqali o'rnatilishi mumkin /etc/rc.conf Va /etc/fstab. Buyruq yordamida sozlamalaringiz to'g'ri yoki yo'qligini tekshirishingiz mumkin /etc/rc.d/mdconfig boshlang(qurilmani olib tashlaganingizdan keyin md0 buyrug'i yordamida # mdconfig -d -u 0). Yodda tutingki, rasmni avtomatik o'rnatish faqat skript tufayli rasm fayli ildiz bo'limida bo'lmasa ishlaydi. /etc/rc.d/mdconfig yuklashning dastlabki bosqichida, ildiz bo'limi hali yozilmaganda amalga oshiriladi. Ildiz bo'limidan tashqarida joylashgan tasvirlar keyinchalik skript tomonidan o'rnatiladi /etc/rc.d/mdconfig2./boot/loader.conf: md_load="YES" /etc/rc.conf: mdconfig_md0="-t vnode -f /usr/vdisk.img" # /usr ildiz bo'limida emas/etc/fstab: (oxirida 0 0, juda muhim, bu ko'rsatadi fsck qurilma tekshiruvini e'tiborsiz qoldiring, chunki u hali mavjud emas) /dev/md0 /usr/vdisk ufs rw 0 0Bundan tashqari, siz keyinchalik tasvir hajmini, masalan, 300 MB ga oshirishingiz mumkin. #umount/mnt; mdconfig -d -u 0 # dd if=/dev/zero bs=1m count=300 >> /usr/vdisk.img # mdconfig -a -t vnode -f /usr/vdisk.img -u 0 # growfs /dev /md0 # o'rnatish /dev/md0c /mnt #Hozir fayl bo'limi 300 MB ko'proq Linux# dd if=/dev/zero of=/usr/vdisk.img bs=1024k count=1024 # mkfs.ext3 /usr/vdisk.img # mount -o loop /usr/vdisk.img /mnt # umount /mnt; rm /usr/vdisk.img # TozalashLinux va yo'qotish/dev/nol nisbatan ancha tezroq urandom, lekin shifrlash uchun xavfsizroq. # dd if=/dev/urandom of=/usr/vdisk.img bs=1024k soni=1024 # losttup /dev/loop0 /usr/vdisk.img # Yaratmoq /dev/loop0 # mkfs.ext3 /dev/loop0 # mount /dev/loop0 /mnt # losttup -a # Tekshiring # umount /mnt # losttup -d /dev/loop0 # Ulanishni # rm /usr/vdisk.imgXotira ichidagi fayl tizimini yaratishFayl tizimi xotirada juda tez, uni yuqori diskli IO bo'lgan ilovalar uchun ishlatish mantiqiy. Keling, 64 MB hajmdagi bo'lim yaratamiz va uni o'rnatamiz /memdisk:FreeBSD# mount_mfs -o rw -s 64M md /memdisk # umount /memdisk; mdconfig -d -u 0 # Aniq md qurilma md /memdisk mfs rw,-s64M 0 0 #ga yozing /etc/fstabLinux# mount -t tmpfs -osize = 64m tmpfs /memdiskDiskning ishlashiO'qish va yozish 1 GB fayl bo'limida ad4s3c (/uy) # vaqt dd if=/dev/ad4s3c of=/dev/null bs=1024k count=1000 # time dd if=/dev/zero bs=1024k count=1000 of=/home/1Gb.file # hdparm -tT / dev/hda # faqat LinuxMen "qidiruvdan qanday foydalanishni va ahmoqona savollar berishni bilmaganlar uchun" mini-qo'llanmalar seriyasini ochyapman. Bugungi mavzu FreeBSD-da disklarni o'rnatish va demontaj qilishdir. Shunday qilib, biz qo'shimcha qattiq disk yoki flesh-diskdagi ma'lumotlarga kirishni xohlaymiz. Buning uchun biz uni bo'sh katalogga ulashimiz (ulashimiz), shundan so'ng biz yaratgan/ilgari mavjud bo'lgan papkada ushbu diskdagi ma'lumotlarga kirish imkoniyatiga ega bo'lamiz. (MUHIM: diskni allaqachon egallab olingan kataloglarga o'rnatmang, siz diskingiz tarkibini olasiz, masalan, konfiguratsiya fayllari uchun papkaning mazmuni o'rniga, o'zingiz uchun oqibatlari haqida o'ylab ko'ring;)) Birinchidan, bo'sh papka yarating. Tasavvur qilaylik, shitus foydalanuvchisi diskni pron deb nomlangan yangi katalogga ulashni xohlaydi. Buning uchun u uy katalogida yangi papka yaratadi (ehtimol, eng xavfsiz joy). Mkdir /home/shitus/pron Keyingi qadam ulanishdir qattiq disk o'rnatish nuqtasiga (biz hozirgina papka yaratdik). Siz tizimingizdagi barcha qurilmalarni /dev/ jildida topishingiz mumkin. Menimcha, men /dev/da2 qurilmamni /home/shitus/pron jildiga ulamoqchiman. Mount /dev/da2 /home/shitus/pron Endi siz diskingiz tarkibini yuqoridagi katalogda ko'rishingiz mumkin. BSD bo'lmagan boshqa fayl tizimlarini qanday ulash mumkinMening holatimda, bizda Fat32 fayl tizimiga ega USB drayv mavjud. Shunday qilib, BSD-ga o'rnatishda siz ishlatiladigan fayl tizimining turini aniq ko'rsatishingiz kerak. Mount -t msdosfs /dev/da2s1 /home/shitus/pron/ Boshqa fayl tizimlari uchun siz FreeBSD hujjatlariga murojaat qilishingiz mumkin, men havola bermayman, chunki Google hamma narsa. Fayl tizimini qanday ajratish/o'chirishAytaylik, siz ulangan fayl qurilmasini o'chirish/o'chirishni xohlaysiz. Buning sabablari juda ko'p bo'lishi mumkin, asosan, bu diskni o'chirish yoki uni boshqa o'rnatish nuqtasiga qayta ulashni xohlasangiz amalga oshiriladi. Buyruq juda oddiy - Umount /home/shitus/pron/ Ushbu buyruqni bajarayotganda siz ushbu papka ichida emasligingizga ishonch hosil qiling, aks holda natija nolga teng bo'ladi. Agar siz tizim ishga tushganda diskni o'rnatmoqchi bo'lsangiz, uni /etc/fstab faylida ro'yxatdan o'tganlar kabi ro'yxatdan o'tkazishingiz kerak. Siz bu haqda ko'proq hujjatlarda o'qishingiz mumkin, yoki bir kun kelib men bu haqda yuzinchi marta yozaman. Ularni o'rnatish kerak va barcha kerakli harakatlar tugagach, ularni o'chirish kerak. Odatda mount (8) / umount (8) buyruqlari o'rnatish/ajratish uchun ishlatiladi va hech kim bu operatsiyalarni avtomatlashtirish haqida o'ylamaydi. Menimcha, bu eng maqbul yondashuv emas, ayniqsa kompozitsiyani hisobga olgan holda operatsion tizim FreeBSD maxsus avtomatik o'rnatish demonini o'z ichiga oladi. Muammoni shakllantirishFreeBSD amd(8) operatsion tizimining automount demoni mutlaqo har qanday fayl tizimlarini ularda joylashgan fayl va papkalarga kirishda shaffof tarzda oʻrnatish, shuningdek, agar maʼlum muddat davomida faollik boʻlmasa, ushbu fayl tizimlarini keyinchalik oʻchirish uchun moʻljallangan. vaqt. Ushbu maqola NFS serverlari tomonidan eksport qilinadigan fayl tizimlari va SMB serverlari tomonidan taqdim etilgan umumiy papkalarni avtomatik ravishda o'rnatish uchun amd ni sozlash haqida. Bundan tashqari, u amq (8) yordam dasturi yordamida amd diagnostikasi va o'z jurnalini ajratishni tavsiflaydi. muntazam mablag'lar syslogd (8) va newsyslog (8) jurnallarini boshqarish. Dastlabki ma'lumotlarKo'rib chiqilayotgan muammoni hal qilish uchun qo'shimcha dasturiy ta'minot, ammo, siz root foydalanuvchiga parol kiritmasdan SMB serverlari tomonidan taqdim etilgan tanlangan aktsiyalarni o'rnatish imkonini beruvchi birini yaratishingiz kerak bo'ladi. NFS fayl tizimlarini avtomatik o'rnatishNFS fayl tizimlarining avtomatik o'rnatilishini ta'minlash uchun /etc/rc.conf fayliga quyidagi qatorni qo'shing: Amd_enable="HA" va /etc/rc.d/amd start buyrug'i bilan amd ni ishga tushiring. Odatiy bo'lib, amd muqobil /.amd_mnt jildidan foydalanadi, uning holatini syslogning demon bo'limiga xabar qiladi va NFS fayl tizimlarini /etc/amd o'rnatish xaritasiga muvofiq mahalliy fayl tizimi papkalariga /host va /netga o'rnatilishiga ruxsat beradi. .map (bu oʻrnatish xaritasi FreeBSD operatsion tizimiga kiritilgan va NFS fayl tizimlarini Network Host fayl tizimi yordamida qanday qilib oʻrnatilishi va oʻchirilishini tartibga soluvchi qoidalarni oʻz ichiga oladi). Agar biz aytilganlarni inson tiliga tarjima qilsak, amd-ni ishga tushirgandan so'ng darhol NFS serveri nfsserver tomonidan eksport qilinadigan umumiy fayl tizimiga /host/nfsserver/share yoki /net/nfsserver/ nomli oddiy mahalliy papka sifatida kirishingiz mumkin bo'ladi. baham ko'ring. Har qanday bunday kirish uchun va kerakli fayl tizimi o'rnatilgan fayl tizimlari ro'yxatida bo'lmasa, amd /.amd_mnt/nfsserver/host/share o'rnatish nuqtasini yaratadi, unga umumiy fayl tizimini o'rnatadi, /host/nfsserver papkasini yaratadi. yoki /net/nfsserver va unga yuqoridagi ulanish nuqtasiga ramziy havola qo'shing. Agar /host/nfsserver/share yoki /net/nfsserver/share 5 daqiqa davomida ishlatilmasa, amd almashish fayl tizimini o'chiradi va keyin mavjud faylni o'chiradi. keraksiz papkalar va ramziy havola. SMBFS fayl tizimlarini avtomatik o'rnatishSMBFS fayl tizimlarini avtomatik o'rnatishni yoqish uchun siz bir yoki bir nechta qo'shimcha o'rnatish xaritalarini yaratishingiz kerak bo'ladi, ularning har biri Dastur fayl tizimidan foydalanishga asoslangan qoidalarni o'z ichiga olishi kerak. /smbfs/smbserver/share kabi shablon nomlari yordamida umumiy papkalarga kirish imkoniyatiga ega bo'lish uchun har bir SMB serveri uchun alohida o'rnatish kartasini ajratish kerak. Masalan, SMB server smbserver tomonidan taqdim etilgan share1 va share2 umumiy papkalari uchun oʻrnatish qoidalarini belgilash uchun siz /etc/amd.map-smbserver nomli oʻrnatish xaritasini yaratishingiz mumkin (oʻzgartirishingiz mumkin) ismi o'z didingizga ko'ra) va unga qatorlarni qo'shing: Share1 type:=program;fs:=$(autodir)/$(path);mount:="/sbin/mount mount -t smbfs \\\/\\\/user@smbserver/share1 $(fs)"; share2 type:=program;fs:=$(autodir)/$(yo'l);mount:="/sbin/mount mount -t smbfs \\\/\\\/user@smbserver/share2 $(fs)"; Belgilangan qoidalar amd-ni umumiy papkalarni $(autodir) o'rnatish nuqtasiga (o'zgaruvchisi $(autodir) muqobil jild nomini o'z ichiga oladi) /sbin/mount -t smbfs //user@smbserver/share buyruqlari bilan o'rnatishga majbur qiladi. ... . Umount yoki unmount opsiyalarining yo‘qligi sukut bo‘yicha umount $(fs) o‘chirish buyruqlaridan foydalanishni talab qiladi ($(fs) o‘zgaruvchisi o‘rnatish nuqtasi nomini o‘z ichiga oladi). Amd_flags="$amd_flags /smbfs/smbserver /etc/amd.map-smbserver" va /etc/rc.d/amd restart buyrug'i bilan amd ni qayta ishga tushiring. Ushbu amallarni bajarganingizdan so'ng, siz odatdagidek SMB server smbserver tomonidan taqdim etilgan share1 va share2 umumiy papkalariga kirishingiz mumkin bo'ladi. mahalliy papkalar/smbfs/smbserver/share1 va /smbfs/smbserver/share2 . Amq yordam dasturi yordamida amd holatini tahlil qilishAmd ning joriy holatini tezda bilish uchun siz amq -m buyrug'idan foydalanishingiz mumkin, bu o'rnatilgan fayl tizimlari ro'yxatini, shu jumladan ularning har biriga havolalar sonini va o'rnatish xatolari haqida ma'lumotni o'z ichiga olgan shunga o'xshash narsalarni ko'rsatish uchun mo'ljallangan. : "root" root 1 localhost ishladi /etc/amd.map /host toplvl 1 localhost ishladi /etc/amd.map /net toplvl 1 localhost ishladi /etc/amd.map-smbserver /smbfs/smbserver toplvl 1 localhost yuqoriga nfsserver:/host/nfsserver /.amd_mnt/nfsserver xost 1 nfsserver ishga tushdi -t smbfs //user@smbserver/share1 ... /.amd_mnt/smbfs/smbserver/share1 dasturi 1 ta localhost ishlay boshladi Ushbu jadvalning birinchi ustunida o'rnatish nuqtalari uchun o'rnatish xaritasi nomi yoki o'rnatilgan fayl tizimlari uchun o'rnatish opsiyalari, ikkinchisi - o'rnatish nuqtasi nomi, uchinchisi - amd fayl tizimining turi, to'rtinchisi - havolalar soni o'rnatish nuqtasi yoki fayl tizimiga, beshinchisi - fayl tizimi joylashgan kompyuterning nomi, oltinchisi - o'rnatish nuqtasi yoki fayl tizimining holati, ettinchisi - o'rnatish xatosi haqida xabarlar (agar xato bo'lmasa, ettinchi ustun ko'rsatilmaydi). Amd va rpcbind(8) TCP Wrappers-ni qo'llab-quvvatlaganligi sababli, amq -m buyrug'ini ishga tushirish quyidagi kabi xato xabarlariga olib kelishi mumkin: Amq: localhost: RPC: Port mapper xatosi - RPC: Autentifikatsiya xatosi amq: localhost: RPC: Autentifikatsiya xatosi; nima uchun = Muvaffaqiyatsiz (aniqlanmagan xato) Ushbu xatolarni bartaraf qilish uchun /etc/hosts.allow fayliga amd va rpcbind-ga localhost-dan kirishga ruxsat beruvchi qoidalarni qo'shishingiz kerak: Amd: 127.0.0.1: ruxsat berish amd: ALL: rad etish rpcbind: 127.0.0.1: ruxsat berish rpcbind: ALL: rad etish Amd ni o'z jurnali bilan ta'minlash/etc/defaults/rc.conf-dagi sukut bo'yicha ishga tushirish opsiyalari amd o'z holatini syslogning daemon bo'limiga xabar qilishiga sabab bo'ladi. Agar siz amd-ni /var/log/amd.log deb nomlangan alohida jurnal bilan ta'minlamoqchi bo'lsangiz, ushbu xabarlarni boshqa syslog bo'limiga (mening holimda local6) yo'naltirishingiz va shunga mos ravishda syslogd dasturi konfiguratsiyasini o'zgartirishingiz kerak bo'ladi. Amd_flags="-a /.amd_mnt -l syslog:local6 /host /etc/amd.map /net /etc/amd.map /smbfs/smbserver1 /etc/amd.map-smbserver1" va amd ni /etc/rc.d/amd restart buyrug'i bilan qayta ishga tushiring va ikkinchidan, /etc/syslog.conf fayliga qatorni qo'shing: Local6.* /var/log/amd.log touch /var/log/amd.log buyrug'i bilan bo'sh jurnal yarating va /etc/rc.d/syslogd restart buyrug'i bilan syslogd-ni qayta ishga tushiring. /var/log/amd.log 644 7 * @T00 JC XulosaUshbu maqolada tasvirlangan amallarni bajarganingizdan so'ng, NFS va SMBFS fayl tizimlarini o'rnatish va o'chirish haqida tashvishlanishingiz shart emas. Umid qilamanki, siz ushbu imkoniyatni foydali deb topasiz va amd ga e'tibor qarating. danFHS standarti dastlab ko'plab Linux distributivlarining katalog tuzilishini tashkil qilish uchun ishlab chiqilgan. Va faqat keyinroq u boshqa Unix-ga o'xshash tizimlar uchun moslashtirildi (shu jumladan BSD klan). Biroq, aynan FreeBSD katalog ierarxiyasi FHS ruhiga namunali sodiqlik uchun namuna bo'la oladi. Va undagi harfdan tom ma'noda individual og'ishlar har doim funktsional jihatdan aniqlanadi. FHS standarti ikkita asosiy tamoyilga tayanadi: bir tomondan, umumiy va umumiy bo'lmagan kataloglarning fayl ierarxiyasida aniq ajratish, ikkinchi tomondan, o'zgarmas va o'zgaruvchan. Birgalikda va umumiy bo'lmagan kataloglar o'rtasidagi farq umuman Unix va xususan FreeBSD ning o'ziga xos tarmoq tabiati bilan bog'liq. Ya'ni, mahalliy mashina bilan bog'liq ma'lumotlar (masalan, uning qurilmalari uchun konfiguratsiya fayllari) mahalliy yoki global tarmoqdagi boshqa mashinalardan ma'lumotlarga kirish mumkin bo'lgan kataloglardan alohida kataloglarda joylashgan bo'lishi kerak (buning misoli nafaqat foydalanuvchi. ma'lumotlar, balki dasturlar). O'zgarmas va o'zgaruvchan kataloglar o'rtasidagi kontrastning mohiyatini misol bilan osongina tushuntirish mumkin. Shunday qilib, bir xil foydalanuvchi dasturlari o'z tabiatiga ko'ra o'zgarmas bo'lishi kerak (aniqrog'i, o'zgartirish faqat tizim ma'muri uchun mavjud, lekin o'z ishida ulardan foydalanadigan foydalanuvchining o'zi uchun emas). Shu bilan birga, ushbu dasturlar o'z faoliyati davomida nafaqat ma'lumotlar fayllarini, aytaylik, matnlar yoki tasvirlarni (ularning o'zgaruvchan tabiati izohsiz aniq), balki barcha turdagi xizmat ma'lumotlarini, masalan, log fayllari, vaqtinchalik fayllar va kabi). Ularni ishga tushirish uchun zarur bo'lgan dasturlar, kutubxonalar, konfiguratsiya fayllari va boshqalarning haqiqiy bajariladigan fayllaridan ajratilgan kataloglarda guruhlash kerak. Birgalikda va umumiy bo'lmagan, o'zgarmas va o'zgarmas kataloglarni bir-biridan ajratish kontseptsiyasiga qat'iy rioya qilish, bitta daraxtga o'xshash fayl ierarxiyasi doirasida uning alohida filiallarini jismoniy, ya'ni mustaqil fayl tizimlari shaklida ajratish imkonini beradi. ajratilgan qurilmalar (disklar, disk bo'laklari, bo'limlar; umumiy holatda va masofaviy, tarmoqqa ulangan muhitda, lekin bu hozir muhokama qilinmaydi). Buning ko'plab sabablari bor - tezlikni oshirish, ishonchlilikni oshirish va oddiygina qulaylik haqida fikr yuritish, ammo biz hozir ular haqida gapirmaymiz. Chunki endi biz uchun muhim bo'lgan narsa shundaki, fayl daraxtining bu shoxlari umumiy fayl tizimiga kiritilishi kerak. Oldingi eslatmada aytilishicha, har bir fayl (shu jumladan katalog) tizim tomonidan uning nomi bilan emas, balki uning inodes jadvalidagi yozuvining noyob identifikatori tomonidan tan olinadi. Ushbu fayl identifikatorlarini ko'rish uchun vositalar mavjud. Ulardan biri i variantiga ega ls buyrug'i bo'lib, u har bir nomlangan faylning identifikatorlarini chop etadi. Ildiz katalog uchun berilgan - $ ls -i u bizga biroz kutilmagan rasmni ko'rsatadi (oddiylik uchun oddiy fayllar va ildizdagi ramziy havolalar haqidagi ma'lumotlar chiqishdan chiqarib tashlanadi va qolgan kataloglar ularning identifikatorlari bo'yicha tartiblanadi) 2 ../ 2 ./ 2 dev/ 2 uy / 2 tmp/ 2 usr/ 2 var/ 3 cdrom/ 4 mnt/ 5 root/ 8257 dist/ 8258 bin/ 8294 proc/ 8295 sbin/ 16512 stend/ 24768 va boshqalar/ 24776 yuklash/ Ushbu misoldan (bu satrlar yozilgan mashinaning fayl tizimiga taalluqli) ko'rinib turibdiki, 7 ta katalogda bir xil raqamli identifikatorlar mavjud bo'lib, ular 2 ga teng. Savol tug'iladi, bu erda o'ziga xoslik nimada? Ro'yxatning dastlabki ikkita elementini tushunish oson: ./ joriy katalogni (bu holda ildiz) va ../ joriy katalogning asosiy katalogini ko'rsatadi; va ta'rifga ko'ra, fayl ierarxiyasida ildizdan yuqori hech narsa yo'qligi sababli, u o'zini anglatadi. Shuning uchun ./ va ../ bir xil identifikatorga ega bo'lishi ajablanarli emas - bular bir xil ildiz katalogi uchun turli xil belgilar (qattiq havolalar yoki boshqa takroriy nomlar). Lekin xuddi shunday, birinchi qarashda ko'rinadigandek, /dev, /home, /tmp, /usr, /var kataloglari uchun identifikatorning ma'nosi tushuntirishni talab qiladi. Biroq, hamma narsa oddiy: bularning barchasi alohida qurilmalarda joylashgan mustaqil fayl tizimlari o'rnatilgan kataloglar - disk bo'limlari, masalan, /home, /usr, /var kataloglari yoki virtual fayl tizimlari. har qanday haqiqiy disk qurilmasi (qurilma fayl tizimiga ega /dev katalogi va bu holda, RAMdagi fayl tizimi o'rnatilgan /tmp katalogi, bu haqda keyinroq muhokama qilinadi). Va har bir fayl tizimi uchun inodelar jadvali har xil bo'lganligi sababli, ularning har birining ildizi 2 raqami bilan aniqlanganligi ajablanarli emas, ulardagi inodelar o'zlarining mos yozuvlar tizimida raqamlangan. Shunday qilib, o'rnatish - bu tizimdan faylni ildiz tizimida mavjud bo'lgan har qanday katalogga kiritish (to'g'ridan-to'g'ri ildizda bo'lishi shart emas, u quyida tasvirlangan har qanday darajadagi joylashtirish bo'lishi mumkin). Busiz, bunday o'rnatilgan tizimning kataloglari va fayllariga kirish imkoni bo'lmaydi. Buni "/usr fayl tizimini yaratish" kabi iboralarga duch kelganingizda tushunish muhimdir. Yuqoridagilardan ko'rinib turibdiki, yaratilayotgan narsa (newfs buyrug'i bilan) shunchaki ma'lum bir mavhum fayl tizimi bo'lib, u o'z "nomini" uni belgilangan katalogga o'rnatish vaqtida oladi. Qizig'i shundaki, o'rnatish uchun katalog identifikatori (o'rnatish nuqtasi deb ham ataladi) faqat o'rnatish vaqtida topiladi. Buni tekshirish uchun oddiy tajriba o'tkazamiz. Vaqtinchalik o'rnatilgan fayl tizimlarini o'rnatish uchun mo'ljallangan /mnt katalogida siz uchta kichik katalogni ko'rishingiz mumkin /mnt/disk, mnt/iso, /mnt/usb (bu mening tizimimda, men ularni o'zim uchun yaratganman; dastlab FreeBSD-dagi /mnt katalogi bo'sh). Tizim ishga tushganda, ularda hech narsa o'rnatilmaydi va ularning normal holati bo'sh bo'lishi kerak. Agar siz ularning identifikatorlariga qarasangiz, quyidagini ko'rishingiz mumkin: $ ls -i1 /mnt 16:46 ttyp0 18 disk/ 24 iso/ 19 usb/ Keling, USB interfeysi bilan flesh-diskni olib, /mnt/usb-ga o'rnatamiz (men aynan shu maqsadda mo'ljallangan) va ko'rishni takrorlaymiz. Va biz ko'ramiz: 18 disk/ 24 iso/ 2 usb/ Ya'ni bo'sh qolgan kataloglarning identifikatorlari (/mnt/disk va /mnt/iso) o'zgarmadi, lekin katalog identifikatori /mnt/usb sehrli tarzda 2 ga o'zgardi. Chunki o'rnatish vaqtida u uchun ildizga aylandi o'zining fayl tizimi va unda yozilgan barcha fayllarning inodelarini hisoblash uchun mos yozuvlar nuqtasi. Keling, biroz chetga chiqamiz va qattiq havolalar haqida eslaylik, ular orqali bir xil inode va unga tegishli ma'lumotlar bloklari turli nomlar bilan belgilanishi mumkin. Endi nima uchun bunday dublikatlarning barchasi bitta fayl tizimida joylashishi kerakligi aniq bo'ldi: axir, har xil fayl tizimlarining o'ziga xos, mos kelmaydigan, inodelar raqamlanishi bor va ularni raqamlar bo'yicha aniqlash mumkin emas (aks holda tizim qanday bo'ladi? /usr va /var kataloglarini bizning misolimizdan ajrating, axir u fayl nomlariga ahamiyat bermaydi). Ular joylashgan fayl tizimining mos yozuvlar tizimida raqamlangan o'z identifikatorlari bilan o'z inodelariga ega bo'lgan ramziy havolalar uchun (aslida va ulardan boshqa hech narsa yo'q) bunday cheklov yo'q. Va ramziy havolalar har qanday joyda joylashgan bo'lishi mumkin (shu jumladan, boshqa bo'limda emas, balki masofaviy kompyuterda). Biroq, ildiz katalogimiz misoliga qaytaylik. Ko'rib chiqilgan hamma narsadan ko'rinib turibdiki, uning bir qator filiallari alohida bo'limlarda yotadi va o'zlarining fayl tizimlarini tashkil qiladi (aslida biz ikkalasini ham aynan shuning uchun yaratdik). Va shuning uchun ularning barchasi o'rnatilishi kerak.9. O'rnatish amaliyoti O'rnatish maqsadlari tizimni yuklash paytida avtomatik ravishda yoki buyruq satridan qo'lda bajariladigan o'rnatish buyrug'i bilan xizmat qiladi. Aslida, to'liq ma'noda, har qanday holatda faqat ildiz fayl tizimi avtomatik ravishda o'rnatiladi. U diskda bo'lishi shart emas, qutqaruv kompakt diski yoki boshqa xavfsizlik vositalaridan ishga tushirilganda, u RAMdagi virtual diskda joylashgan bo'lishi mumkin. Однако процесс монтирования корневой файловой системы столь же неизбежен, как победа социализма в мировом масштабе: также, как социализм, не победив в мировом масштабе, просто утрачивает способность к существованию (что мы не так давно и наблюдали), так и ОС без корневой системы существовать bo'lishi mumkin emas. Linuxda bu yadro vahima rejimiga olib keladi, taxminan, bizning rahbarlarimiz 20 yil oldin tushgan holatga o'xshaydi. To'g'ri, ular Linuxga qaraganda kuchliroq bo'lib chiqdi va juda tez tiklandi, shuning uchun ular hali ham bizni qayta ishga tushirishmoqda (yoki qayta ishga tushirishdami? lekin biz kuchayib bormoqdamiz :)). Biroq, bu men hozir sizga taqdim etishga harakat qiladigan o'rnatish masalasiga taalluqli emas. Shunday qilib, ildiz tizimidan tashqari barcha fayl tizimlarini o'rnatish uchun siz ba'zi qadamlarni bajarishingiz kerak. Avval biz ularni qo'lda qanday qilishni va keyin ularni tegishli konfiguratsiya fayllarida qanday abadiylashtirishni ko'rib chiqamiz. Shunday qilib, o'rnatish buyrug'i. Aslida, bu dasturlarning butun oilasi bo'lib, ularning har biri ma'lum turdagi fayl tizimlarini o'rnatish uchun mo'ljallangan - nafaqat UFS, balki FreeBSD tomonidan qo'llab-quvvatlanadigan har qanday. Ularning ro'yxati juda keng; siz /sbin katalogiga qarab, bu haqda tasavvurga ega bo'lishingiz mumkin: $ ls /sbin/mount* Bu bizga javob beradi /sbin/mount /sbin/mount_msdosfs /sbin/mount_smbfs /sbin/mount_cd9660 /sbin/mount_nfs /sbin/mount_std /sbin/mount_devfs /sbin/mount_ntfs /sbin/mount_udf /sbin/mount_msdosfs/sbin/mount_ext2s/ / sbin/mount_umapfs /sbin/mount_fdescfs /sbin/mount_nwfs /sbin/mount_unionfs /sbin/mount_linprocfs /sbin/mount_portalfs /sbin/mount_mfs /sbin/mount_procfs Ushbu ro'yxatdagi har bir buyruq fayl tizimining boshqa turi uchun javobgardir, ularning ba'zilariga keyinroq qaytamiz. Hozircha, faqat UFS va UFS2 bilan ishlash uchun mo'ljallangan /sbin/mount o'zini ta'kidlaymiz. Buyruqlar qatoridan chaqirilganda, u ikkita argumentni talab qiladi: o'rnatiladigan qurilmaning nomi va o'rnatish nuqtasi (ya'ni, asosiy fayl tizimi o'rnatilishi kerak bo'lgan katalog). Qurilma nomi UFS2 fayl tizimi (UFS) bilan mavjud BSD bo'limida allaqachon xaritalangan patrisiyani ko'rsatishi kerak, masalan, $ mount /dev/ads0d /usr fayl tizimini fayl daraxti ildizining /usr katalogidagi belgilangan bo'limga o'rnatadi. Agar qurilmadagi fayl tizimi yaratilmagan bo'lsa yoki 4.2BSD dan boshqa turdagi bo'lsa, noto'g'ri super blokni ko'rsatuvchi xato xabari paydo bo'ladi: xuddi shu nomdagi Linux yordam dasturidan farqli o'laroq, FreeBSD o'rnatish buyrug'ining o'zi fayl tizimini taniy olmaydi. turi. O'rnatish nuqtasiga quyidagi talablar qo'yiladi: a) o'rnatish vaqtida bir xil nomdagi katalog mavjud bo'lishi kerak va b) iloji boricha bo'sh bo'lishi kerak. Birinchisi majburiy, ikkinchisi esa mutlaqo kerak emas. Har qanday fayllar bilan katalogga o'rnatish muammosiz davom etadi (men eslayman, Linuxda bu yaqinda tizimning ishdan chiqishiga sabab bo'lgan), lekin uning barcha mazmuni o'chirilmaguncha mavjud bo'lmaydi. Va agar undagi fayllar har qanday quyi tizim uchun muhim rol o'ynasa, bu har qanday yomon oqibatlarga olib kelishi mumkin. Misol uchun, agar X oyna tizimi ishlayotgan vaqtda fayl tizimini o'rnatish orqali /tmp katalogining mazmuni bloklangan bo'lsa, natijada X serverining ishdan chiqishi bo'lishi mumkin. Yaxshiyamki, agar kerak bo'lsa, siz birlashtirilgan o'rnatishni amalga oshirishingiz mumkin (pastga qarang). Belgilangan shaklda o'rnatish ba'zi bir standart xususiyatlar bilan amalga oshiriladi: fayl tizimi deb ataladigan rejimda o'qiladi / yoziladi. noasync (metama'lumotlar operatsiyalari sinxron tarzda amalga oshiriladigan va ma'lumotlar operatsiyalari asinxron tarzda amalga oshiriladi). Bu pozitsiyani -o opsiyasi yordamida o'zgartirish mumkin. Ularning bir nechtasi bor, ammo amalda biz uchun ushbu bosqichda asosiylari:
O'rnatilgan fayl tizimiga ma'lum turdagi fayllarni, masalan, bajariladigan fayllar (-o noexec), qurilma fayllari (-o nodev) yoki shunga o'xshash fayllarni joylashtirishni taqiqlovchi -o parametrining yana bir qancha qiymatlari mavjud. - chaqirdi. bit (-o nosuid), lekin ular asosan server ma'murlari uchun amaliy ahamiyatga ega va xavfsizlik maqsadlarida xizmat qiladi. Ish stoli mashinasida o'rnatishning odatiy shakli quyidagicha bo'ladi: $ mount -o noatime /dev/ads0d /usr; $ mount -o noatime /dev/ads0e /var; $ mount -o noatime /dev/ads0f /home Yuqoridagilarning barchasi faqat FreeBSD fayl tizimlarini o'rnatish uchun amal qiladi. Biroq, amalda ko'pincha boshqa turdagi fayl tizimlarini uning katalog daraxtiga kiritish zarurati tug'iladi. Bu, ayniqsa, ISO9660 (Mac-dan tashqari barcha CD-lar uchun odatiy fayl tizimi) va har xil turdagi FATlar uchun talab qilinadi. Bunday holda, tegishli o'rnatish buyrug'i aniq chaqirilishi kerak, masalan, $ mount_cd9660 /dev/acd0 /cdrom kompaktni o'rnatish uchun yoki $ mount_msdosfs /dev/ad## /mnt har qanday turdagi FAT uchun (jumladan, FAT32) Lekin buni bilvosita -t file_system_type opsiyasini o'rnatish buyrug'iga ko'rsatish orqali amalga oshirish mumkin.Shunday qilib, $ mount -t ext2fs /dev/ad## /mnt/linux buyrug'i. Linux fayl tizimini o'rnatadi (agar tegishli xususiyat yadroga kiritilgan bo'lsa). Bunday holda, BSD bo'limlari uchun standart o'rnatish ext2fs bo'limlarini o'rnatish uchun mo'ljallangan /mount_ext2fs buyrug'i bilan almashtiriladi (va ext3fs ham, lekin, albatta, hech qanday jurnal funksiyalarisiz). Ya'ni, $mount -t fstype shakli ... ... $mount_fstype buyrug'ining aniq ekvivalenti bo'ladi... ... FreeBSD-da fayl tizimlarini (jumladan, olinadigan muhitda) o'rnatish bo'yicha barcha operatsiyalar superfoydalanuvchi huquqlarini talab qiladi. Bu erda -o parametrining qiymatlari, o'rnatish buyrug'ining Linux versiyasidan farqli o'laroq, oddiy foydalanuvchilarga o'rnatishga imkon beruvchi foydalanuvchi parametrini o'z ichiga olmaydi. To‘g‘ri, buni hal qilishning bir necha yo‘li bor, lekin hozir ular haqida gapirish o‘rinli emas.Avtomatik o‘rnatishni sozlash Biroq, amalda qo'lda o'rnatish faqat kamdan-kam ishlatiladigan fayl tizimlari uchun qo'llaniladi. FreeBSD-ning ishlashi uchun muhim bo'lgan barcha fayl tizimlari tizim ishga tushganda avtomatik ravishda o'rnatiladi va tez-tez ishlatiladiganlari yarim avtomatik rejimda o'rnatiladi. Avtomatik o'rnatish uchun o'rnatish dasturi ishga tushirish skriptlaridan yuklash jarayonida ishga tushiriladi. U /etc/fstab konfiguratsiya faylini qidiradi va unda topilgan hamma narsani o'rnatadi, ba'zi istisnolardan tashqari (quyida muhokama qilinadi). /etc/fstab faylining o'zi FreeBSD o'rnatilganda avtomatik ravishda yaratiladi, shu jumladan hayotni qo'llab-quvvatlash uchun zarur bo'lgan barcha fayl tizimlari. Biroq, kelajakda uni o'rnatish uchun yangi qurilmalar yoki allaqachon yoqilgan qurilmalar uchun qo'shimcha imkoniyatlar qo'shish uchun uni qo'lda tahrirlash mumkin. /etc/fstab fayli matn formatidagi oddiy ma'lumotlar bazasi (bo'shliqlar yoki yorliqlar bilan ajratilgan maydonlar), shu jumladan quyidagi maydonlar:
Yangi o'rnatilgan FreeBSD-da /etc/fstab quyidagi yozuvlarni o'z ichiga olishi kerak (1-IDE kanalidagi asosiy diskning 1-bo'limiga misol): # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1a / ufs rw 1 1 / dev/ad0s1b hech qanday almashtirish 0 0 Agar siz aqlli odamlarning maslahatiga (va sysinstall-ning standart sozlamalariga) amal qilsangiz va ildizdan fayl tizimining ba'zi filiallarini tanlasangiz, /dev/ad0s1d /var ufs rw 0 0 /dev/ad0s1e / kabi yozuvlar ro'yxatdagilarga qo'shiladi. (sysinstall orqali tilimni avtomatik belgilashda) usr ufs rw 0 0 /dev/ad0s1f /tmp ufs rw 0 0 foydalanuvchi uy kataloglari bilan fayl tizimi uchun javobgar. Shubhasiz, Options maydoniga siz -o parametrining har qanday mavjud (va oqilona) qiymatlarini qo'shishingiz mumkin (vergul bilan ajratilgan, bo'sh joysiz), masalan, barcha fayl tizimlari uchun noatime va /tmp uchun ham asinxron, chunki qayta ishga tushirilgandan so'ng ushbu katalogning mazmuni saqlanishi kutilmaydi. Yuqoridagilar ishga tushirilganda avtomatik ravishda o'rnatiladigan fayl tizimlari uchun amal qiladi. Biroq, vaqti-vaqti bilan ulangan tizimlar uchun /etcfstab-ga kirishlarni hech kim sizni bezovta qilmaydi - bu holda ular soddalashtirilgan sxema bo'yicha o'rnatilishi mumkin (bu men yuqorida yarim avtomatik rejimni nazarda tutgan edim). Shunday qilib, CD disk uchun qatorni qo'shishingiz mumkin (aslida, u /etc/fstab fayli yaratilganda avtomatik ravishda paydo bo'ladi) /dev/acd0 /cdrom cd9660 ro,noauto 0 0 Bunda variantlar, siz taxmin qilganingizdek, ishga tushirishda (noauto) va faqat o'qish rejimida (ro) o'rnatishdan bosh tortishni talab qiladi. Shundan so'ng, CDni o'rnatish uchun faqat o'rnatish nuqtasini ko'rsatish kifoya qiladi - $ mount / cdrom Shunga o'xshash yozuvlar barcha olinadigan drayvlar (Zip, USB drayvlar, hatto floppi disklar) va BSD bo'lmagan bo'limlar (FAT yoki Ext2fs) uchun ham amalga oshirilishi mumkin. Aytgancha, fayl tizimlarini /etc/fstab-ga o'zgartirishlar kiritilgandan so'ng, mashinaning qayta ishga tushishini kutmasdan darhol soddalashtirilgan sxema yordamida o'rnatishingiz mumkin. Quvvatni o'chirish yoki mashinani qayta ishga tushirishdan oldin barcha tegishli fayl tizimlari o'chirilishi kerak. To'g'ri o'chirilgandan so'ng, bu avtomatik ravishda amalga oshiriladi, buning natijasida har bir yoziladigan fayl tizimlari (aniqrog'i, uni tashuvchi bo'lim) o'zining superblokida toza o'chirish bitini oladi. Biroq, bir qator hollarda (masalan, Soft Updates mexanizmini ulashda yoki uzishda yoki yaxlitlikni tekshirishda) umount buyrug'i qo'llaniladigan fayl tizimlarini qo'lda o'chirish (va qayta o'rnatish) kerak bo'ladi. Bu bitta argumentni talab qiladi: fayl tizimining o'rnatish nuqtasi katalog daraxtidan olib tashlanadi, masalan: $ umount /tmp Siz bir qatorda bir nechta fayl tizimlarini uzishingiz mumkin: $ umount /usr /var /home Yoki $ umount -A opsiyalarini talab qiladigan /etc/fstab faylida (ildizdan tashqari) sanab o'tilgan barcha o'rnatilgan fayl tizimlari yoki barcha fayl tizimlari ham mumkin. yoki $umount -a mos ravishda. Bundan tashqari, -t parametrining qiymatlarini ko'rsatish orqali ma'lum turdagi fayl tizimlarini o'chirish mumkin. Shunday qilib, $ umount -t ufs buyrug'i CD va tizimdagi barcha narsalarga ta'sir qilmasdan, faqat BSD bo'limlarini o'chirib qo'yadi. O'chirish vaqtida fayl tizimlari ishlatilmasligi kerak, ya'ni ularda joylashgan fayllarga kirish imkoni bo'lmasligi kerak. Shunday qilib, fayl tizimining istalgan katalogida bo'lish uni o'chirishni rad etish uchun etarli sababdir (qurilma bandligi kabi xabar bilan), shuning uchun yuqorida sanab o'tilgan buyruqlarning hech biri ildiz fayl tizimini o'chira olmaydi. Ammo har qanday dastur tomonidan ma'lumotlar faylini o'qish ushbu faylni joylashtiradigan tizimni o'chirishni rad etish uchun sabab emas (axir, umuman olganda, xotiradagi fayl va diskdagi fayl o'rtasidagi aloqa faqat o'zgarishlarni yozib olish vaqtida sodir bo'ladi. Shu bilan birga, siz foydalanayotgan fayl tizimini ham uzishingiz mumkin; buning uchun -f opsiyasi bilan umount buyrug'ini berishingiz kerak bo'ladi. To'g'ri, bu xatolarga olib kelishi mumkin, shuning uchun juda zarur bo'lmasa, unga murojaat qilmaslik yaxshiroqdir. Majburiy o'chirish opsiyasi esa ildiz fayl tizimiga hech qanday ta'sir ko'rsatmaydi Ommaviy o'rnatish Fayl tizimlarida past darajadagi operatsiyalarni bajargandan so'ng ishlashni davom ettirish uchun ularni orqaga o'rnatish kerak bo'ladi. Buni nafaqat qayta yuklamasdan, balki zerikarli individual o'rnatishsiz ham qilish mumkin. Faqat -a opsiyasidan foydalaning: $ mount -a u orqali /etc/fstab-da yozuvlar mavjud bo'lgan barcha fayl tizimlari o'rnatiladi. Bunday holda, noauto bayrog'i bilan belgilanganlarni o'rnatishga harakat qilinadi. Bunga yo'l qo'ymaslik uchun fayl tizimi turini qo'shimcha ravishda belgilashingiz mumkin. Ya'ni $ mount -a -t ufs buyrug'i CD yoki flesh-disklarga tajovuz qilmasdan faqat BSD bo'limlarini o'rnatadi. Yoki, aksincha, global o'rnatish jarayonidan /etc/fstab ro'yxatidagi ba'zi fayl tizimlarini chiqarib tashlashingiz mumkin, masalan, hozirda keraksiz FATlar: Xulosa o'rniga $ mount -a -t nomsdosfs Preambula Aytgancha, variantlar va argumentlarsiz mount buyrug'i (va bu shaklda, yuqorida ko'rib chiqilgan barcha holatlardan farqli o'laroq, uni oddiy foydalanuvchi berishi mumkin) hozirda o'rnatilgan fayl tizimlari ro'yxatini ko'rsatadi, unda o'rnatish nuqtasi, uning shartlari va. ish rejimi. Masalan, ushbu satrlar yozilgan mashina uchun chiqish quyidagicha bo'ladi: /dev/ad0s1a on / (ufs, local, noatime, soft-updates) devfs on /dev (devfs, local) /dev/ccd0e /var (ufs, local, noatime, soft-yangilanishlar) /dev/ccd1e on /usr (ufs, local, noatime, soft-yangilanishlar) /dev/ccd2e on /home (ufs, local, noatime, soft-yangilanishlar) /dev/ md0 /tmp (ufs, mahalliy, noatime, async) Chiqishning birinchi qatori shuni ko'rsatadiki, /dev/ad0s1a bo'limi bizning asosiy katalogimizga o'rnatilgan, UFS fayl tizimi (ayniqsa, bu holda, UFS2, lekin mount buyrug'ining chiqishida ular farq qilmaydi) Soft Updates bilan. mexanizm yoqilgan, mahalliy (ya'ni, ushbu mashinaning diskida joylashgan; tarmoq drayverlari ham mount buyrug'i bilan o'rnatiladi) va atime atributini yangilashga tobe emas. Ammo keyin oldingi hikoyalarda muhokama qilinmagan qurilmalar va fayl tizimlari uchun chiziqlar mavjud. Bundan tashqari, joriy konfiguratsiyaga mos keladigan /etc/fstab faylini ko'rib chiqsak: $ more /etc/fstab /dev/ad0s1b none swap sw 0 0 /dev/ar0s1b none swap sw 0 0 /dev/ad0s1a / ufs rw, noatime 1 1 /dev/ccd0e /var ufs rw,noatime 2 2 /dev/ccd1e /usr ufs rw,noatime 2 2 /dev/ccd2e /home ufs rw,noatime 2 2 /dev/acd0 /cdrom ro,cdno60 0 / dev/da0s1 /mnt/usb ext2fs rw,noauto,noatime 0 0 /dev/md0 /tmp mfs rw,noatime,async,-s32m 2 0 keyin biz chiqish satrlaridan biri (devfs on /dev (devfs, local) uning yozuvlari orasida umuman mos kelmasligini ko'ramiz. Bular qanday qurilmalar va fayl tizimlari? /dev/ccd0 kabi qurilmalar haqida? Men hozircha aytamanki, bular dasturiy ta'minot RAID massivlari (keyinroq ular haqida batafsilroq gaplashamiz). Ammo devfs va mfs virtual fayl tizimlari bo'lib, ular keyingi eslatmada to'g'ridan-to'g'ri muhokama qilinadi. |
Mashhur:
Yangi
- Windows ro'yxatga olish kitobi muharririni ochishning uchta usuli Qidiruv yordamida ro'yxatga olish kitobini ochish
- Qattiq diskni qanday qismlarga bo'lish kerak
- Biz qattiq diskni bo'limlarga ajratamiz
- Kompyuter yoqilganda signal beradi
- Windows-da fayl kengaytmalarini to'g'ri o'zgartirish Arxiv kengaytmasini qanday o'zgartirish mumkin
- YouTube YouTube-da reklamalarni reklamasiz bloklash
- TeamViewer - kompyuterni masofadan boshqarish Boshqa kompyuter bilan bog'lanish uchun dasturni yuklab oling
- Windows-da kompyuteringizning xususiyatlarini qanday aniqlash mumkin: tizim usullari va maxsus dasturlar
- Biz turli xil qurilmalarda brauzerlarni yangilaymiz: kompyuter, planshet, smartfon Yangilangan brauzerni qayerda va qanday qilib o'rnating
- Protsessor, video karta, quvvat manbai va kompyuter sovutgichini qanday moylash kerak