Freebsd disk montajı. MiniHowTo: FreeBSD disk montajı

NTFS - “yerel” dosya Windows sistemi. Bu nedenle, flash sürücüleri, sabit sürücüleri veya bizim bilmediğimiz diğer şeyleri bağlamanız yeterli çıkarılabilir medya işe yaramayacak (gerçekte işe yarayacak, ancak sorunlar olacak). Bu nedenle bu konuyla ilgili kapsamlı kılavuzumuzu yayınlıyoruz.


  1. Her zaman olduğu gibi her şey onunla başlıyor. NTFS sürücüsünü yükleyin: #cd /usr/ports/sysutils/fusefs-ntfs #make install clean
  2. FreeBSD 10'dan itibaren Fuse, çekirdeğin bir parçasıdır. Sistem modülleri ile yüklenmesini sağlıyoruz #nano /boot/loader.conf sigorta_load="YES"

    Bu, yeniden başlatmanın ardından çalışacaktır. Mevcut oturumda bu modülü manuel olarak yükleyeceğiz

    #kldyük sigortası

    Komut ile modülün yüklü olup olmadığını kontrol edebilirsiniz.

    #kldstat

    Liste şunları içeriyorsa sigorta.ko, bu her şeyin yolunda olduğu anlamına gelir.

    #kldstat Kimlik Referanslar Adres Boyut Adı 1 3 0xffffffff80200000 1fa7c38 çekirdek 2 1 0xffffffff821a9000 1a7c8 sigorta.ko

  3. Daha sonra sistemin bir flash sürücüyü veya harici sabit sürücüyü nasıl göreceğine karar vermeliyiz: #dmesg | grep da

    Çıktı şöyle bir şey olacak:

    Umass-sim0 veriyolunda Da0 0 scbus1 hedefi 0 ay 0 da0: s/n 00H79BHRYGX22JBN ayrıldı (da0:umass-sim0:0:0:0): Periph umass-sim0 veri yolundaki da0'ı yok etti 0 scbus1 hedefi 0 lun 0 da0: Çıkarılabilir Doğrudan Erişimli SPC-4 SCSI cihazı da0: Seri Numarası 00H79BHRYGX22JBN da0: 40.000MB/s aktarımlar da0: 14870MB (30453760 512 bayt sektörler) da0: tuhaflıklar=0x12 umass-sim1 veriyolunda da1 scbus2 hedefi 0 ay 0 da1: s/n 8968888304C9BB52 ayrıldı (da1:umass-sim1:1:0:0): Çevre birimi umass-sim1 veriyolu 1 scbus2 hedefinde da1'i yok etti 0 ay 0 da1: Çıkarılabilir Doğrudan Erişimli SCSI-2 cihazı da1: Seri Numarası 8968888306C9BB52 da1: 40.000MB/s aktarımlar da1: 1999MB (4093952 512 bayt sektör) da1: tuhaflıklar=0x2

    Sistemde tanımlayıcılara sahip iki flash sürücümüz olduğunu görüyoruz. da0 Ve da1. Örneğimizde yalnızca bir flash sürücü kullanacağız da0.

  4. Aşağıdaki komutla mount ediyoruz: ntfs-3g /dev/da0 /mnt

    /dev/da0- bu bizim flash sürücümüz, bunu 3. maddede bulduk.
    /mnt montaj noktasıdır. O herhangi biri olabilir.

    Bir hata görünürse, flash sürücü bölümünü bağlayın. Girdikten sonra

    Ntfs-3g /dev/da0

    TAB tuşuna basın ve flash sürücünün bölümlerini görün

    Da0 da0s1

    Ve bu bölümü monte ediyoruz

    Ntfs-3g /dev/da0s1 /mnt

  5. Flash sürücüyü taktığımız dizine gidiyoruz ve içeriğini orada görüyoruz: #cd /mnt #ll toplam 13 drwxrwxrwx 1 kök tekerlek 0 4 Kasım. 17:23 Sistem Birimi Bilgisi/ -rwxrwxrwx 1 kök tekerlek 9 Kasım 4 18:05 xxx.xxx* -rwxrwxrwx 1 kök tekerlek 22 Kasım 4 18:04 ZIP arşivi - WinRAR.zip* -rwxrwxrwx 1 kök tekerlek 9904 4 Kasım 18:04 Yaprak Microsoft Ofisi Excel.xlsx*

    Artık dosyaları flash sürücüye yazabilir ve buradan okuyabilirsiniz.

  6. Flash belleğin bağlantısını kaldırmak için öncelikle takılı olduğu dizinden çıkıyoruz. Örneğin, #cd /

    Daha sonra şu komutu kullanalım

    #umount /mnt

    dikkat Tartışma bir flash sürücü değil, onun montaj noktasıdır!
    ÖNEMLİ: Komutu girdikten hemen sonra flash sürücüyü çıkarmayın! Sadece birkaç saniye sonra terminalde giriş istemi tekrar göründüğünde çıkarılabilir!

FHS standardı, başlangıçta birden fazla dizin yapılarını düzene koymak için geliştirildi. Linux dağıtımları. Ve ancak daha sonra diğer Unix benzeri sistemlere (BSD klanı dahil) uyarlandı. Bununla birlikte, FHS'nin ruhuna örnek teşkil edecek bir bağlılık örneği olarak hizmet edebilecek şey FreeBSD dizin hiyerarşisidir. Ve kelimenin tam anlamıyla mektubundan bireysel sapmalar her zaman işlevsel olarak belirlenir.

FHS standardı iki temel prensibe dayanmaktadır: bir yanda paylaşılan ve paylaşılmayan dizinlerin dosya hiyerarşisinde net bir ayrım, diğer yanda değişmez ve değiştirilebilir.

Paylaşılan ve paylaşılmayan dizinler arasındaki fark, genel olarak Unix'in ve özel olarak FreeBSD'nin doğasında olan ağ doğasından kaynaklanmaktadır. Yani, yerel makineyle ilgili veriler (örneğin, aygıtlarının yapılandırma dosyaları), verilerine ağdaki yerel veya global diğer makinelerden erişilebilen dizinlerden ayrı dizinlerde bulunmalıdır (bunun bir örneği yalnızca kullanıcı verileri değildir). veriler, aynı zamanda programlar).

Değişmez ve değiştirilebilir dizinler arasındaki karşıtlığın özü bir örnekle kolayca açıklanabilir. Bu nedenle, aynı kullanıcı programlarının doğası gereği değiştirilemez olması gerekir (veya daha doğrusu, bunları çalışmalarında kullanan kullanıcının kendisi için değil, yalnızca sistem yöneticisi tarafından değiştirilmeye açık olmalıdır). Aynı zamanda, bu programlar, çalışmaları sırasında yalnızca veri dosyaları, örneğin metinler veya görüntüler değil (değişken yapıları yorum yapılmadan açıktır), aynı zamanda günlük dosyaları, geçici dosyalar ve beğenmek). Başlatılmaları için gerekli olan programların, kitaplıkların, yapılandırma dosyalarının vb. gerçek yürütülebilir dosyalarından ayrılmış dizinlerde gruplandırılmalıdır.

Paylaşılan ve paylaşılmayan, değişmez ve değişmez dizinleri birbirinden ayırma kavramına sıkı sıkıya bağlı kalmak, tek bir ağaç benzeri dosya hiyerarşisi içinde, bireysel dallarını fiziksel olarak - yani, üzerinde bulunan bağımsız dosya sistemleri biçiminde - izole etmeye olanak tanır. yalıtılmış aygıtlar (diskler, disk dilimleri, bölümler; V genel durum ve uzak, ağa bağlı ortamlarda, ancak bu şimdi tartışılmayacaktır). Bunun pek çok nedeni var; hızın artması, güvenilirliğin artması ve yalnızca kolaylık kaygıları, ancak şimdi bunlardan bahsetmeyeceğiz. Çünkü artık bizim için önemli olan tek şey, dosya ağacının bu dallarının genel dosya sistemine dahil edilmesi gerektiğidir.

Önceki notta, her dosyanın (bir dizin dahil) sistem tarafından adıyla değil, inodes tablosundaki girişinin benzersiz tanımlayıcısıyla tanındığı söylenmişti. Bu dosya kimliklerini görüntülemek için araçlar vardır. Bunlardan biri, adlandırılmış her dosyanın kimliğini yazdıracak olan i seçeneğiyle ls komutudur. Kök dizin için verilmiştir - $ ls -i

bize biraz beklenmedik bir resim gösterecek (basitlik açısından, kökteki sıradan dosyalar ve sembolik bağlantılar hakkındaki bilgiler çıktının dışında bırakılır ve geri kalan dizinler tanımlayıcılarına göre sıralanır) 2 ../ 2 ./ 2 dev/ 2 home / 2 tmp/ 2 usr/ 2 var/ 3 cdrom/ 4 mnt/ 5 root/ 8257 dist/ 8258 bin/ 8294 proc/ 8295 sbin/ 16512 stand/ 24768 vb/ 24776 önyükleme/

Bu örnekten (bu satırların yazıldığı makinenin dosya sistemiyle ilgili olarak), 7 kadar dizinin aynı dijital tanımlayıcıya (2'ye eşit) sahip olduğu açıktır. Soru şu: buradaki benzersizlik nedir?

Listenin ilk iki öğesinin anlaşılması kolaydır: ./ geçerli dizini (bu durumda kök) temsil eder ve ../ geçerli dizinin üst dizinini temsil eder; ve tanım gereği dosya hiyerarşisinde kökün üstünde hiçbir şey olmadığından, kendisini belirtir. Dolayısıyla ./ ve ../'nin aynı tanımlayıcıya sahip olması şaşırtıcı değildir; bunlar aynı kök dizin için farklı tanımlamalardır (sabit bağlantılar veya başka şekilde yinelenen adlar).

Ancak aynı şekilde, ilk bakışta göründüğü gibi, /dev, /home, /tmp, /usr, /var dizinleri için tanımlayıcının anlamı açıklama gerektirir. Ancak basittir: bunların tümü bağımsız dosya sistemlerinin monte edildiği veya üzerinde yer aldığı dizinlerdir. bireysel cihazlar/home, /usr, /var dizinleri veya herhangi bir gerçek disk aygıtı üzerine kurulmayan sanal dosya sistemleri gibi disk bölümleri (aygıt dosya sistemini içeren /dev dizini ve bu durumda, içindeki /tmp dizini). dosya sisteminin hangi sisteme monte edildiği Veri deposu hala tartışılması gereken bir konu). Ve inode tablosu her dosya sistemi için farklı olduğundan, her birinin kökünün 2 sayısıyla tanımlanması şaşırtıcı değildir; içlerindeki inode'lar kendi referans sistemlerinde numaralandırılmıştır.

Dolayısıyla montaj, sistemdeki bir dosyanın kök sistemde mevcut olan herhangi bir dizine dahil edilmesidir (doğrudan kökte olması gerekmez, aşağıda gösterildiği gibi herhangi bir yuvalama derecesinde olabilir). Bu olmadan, böyle bir monte edilmiş sistemin dizinlerine ve dosyalarına erişilemez. "/usr dosya sistemini oluştur" gibi ifadelerle karşılaştığınızda bunu anlamanız önemlidir. Yukarıdakilerden, (newfs komutu tarafından) oluşturulan şeyin sadece bir tür soyut dosya sistemi olduğu ve "adını" yalnızca belirtilen dizine montaj sırasında aldığı açıktır.

Montaj için dizin tanımlayıcısının (bağlama noktası olarak da adlandırılır) yalnızca montaj sırasında bulunması ilginçtir. Bunu doğrulamak için basit bir deney yapalım. Özellikle geçici olarak bağlanan dosya sistemlerini bağlamak için tasarlanan /mnt dizininde, /mnt/disk, mnt/iso, /mnt/usb olmak üzere üç alt dizin görebilirsiniz (bu benim sistemimdedir, bunları kendi rahatlığım için oluşturdum; başlangıçta /mnt dizini FreeBSD'deydi boş). Sistem başlatıldığında içlerine hiçbir şey monte edilmemiştir ve normal durumları boştur. Tanımlayıcılarına bakarsanız şunun gibi bir şey görebilirsiniz: $ ls -i1 /mnt 16:46 ttyp0 18 disk/ 24 iso/ 19 usb/

Şimdi USB arayüzlü bir flash sürücüyü /mnt/usb'ye bağlayalım (tam olarak bunu amaçladım) ve görüntülemeyi tekrarlayalım. Ve şunu görüyoruz: 18 disk/ 24 iso/ 2 usb/

Yani boş kalan dizinlerin tanımlayıcıları (/mnt/disk ve /mnt/iso) değişmedi ancak dizin tanımlayıcısı /mnt/usb sihirli bir şekilde 2 olarak değişti. Çünkü montaj anında kök haline geldi. kendi dosya sistemi ve üzerinde kayıtlı tüm dosyaların düğümlerini hesaplamak için referans noktası.

Konudan biraz uzaklaşalım ve aynı inode'a ve onunla ilgili veri bloklarına farklı adlar verilebildiği sabit bağlantıları hatırlayalım. Artık tüm bu tür yinelenen dosyaların neden aynı dosya sisteminde bulunması gerektiği açıktır: sonuçta, farklı dosya sistemlerinin kendilerine ait, eşleşmeyen inode numaralandırmaları vardır ve bunları sayılarla tanımlamak imkansızdır (aksi takdirde sistem nasıl olurdu) sonuçta /usr ve /var dizinlerini örneğimizden ayırt edin, dosya adlarını umursamıyor). Kendi tanımlayıcılarına sahip, kendi inode'larına (aslında ve onlar dışında hiçbir şey olmayan) sahip, bulundukları dosya sisteminin referans sisteminde numaralandırılmış sembolik bağlantılar için böyle bir kısıtlama yoktur. Ve sembolik bağlantılar herhangi bir yere yerleştirilebilir (yalnızca başka bir bölüm değil, uzaktaki bir makine de dahil).

Ancak kök dizinimizin örneğine dönelim. Dikkate alınan her şeyden, bazı dallarının ayrı bölümlerde yer aldığı ve kendi dosya sistemlerini oluşturduğu açıktır (aslında her ikisini de tam olarak bu yüzden yarattık). Bu nedenle hepsinin monte edilmesi gerekmektedir.9. Montaj uygulaması

Montaj amaçları, sistem önyüklemesi sırasında otomatik olarak veya manuel olarak yürütülen mount komutuyla gerçekleştirilir. komut satırı. Aslında tam anlamıyla her durumda yalnızca kök dosya sistemi otomatik olarak bağlanır. Bir kurtarma CD'sinden veya başka bir güvenlik ortamından başlatılırken mutlaka diskte bulunması gerekmez; sanal disk RAM'de. Bununla birlikte, kök dosya sistemini kurma süreci, sosyalizmin küresel ölçekteki zaferi kadar kaçınılmazdır: tıpkı sosyalizmin küresel ölçekte kazanmadan var olma yeteneğini kaybetmesi gibi (ki bunu yakın zamanda gözlemledik), bir sosyalizmin de küresel ölçekte kazanamaması gibi. İşletim sistemi kök sistemi olmadan var olamaz. Linux'ta bu, liderlerimizin 20 yıl önce düştüğü durumla ilgili olarak çekirdek paniği moduna neden oluyor. Doğru, Linux'tan daha güçlü oldukları ortaya çıktı ve oldukça hızlı bir şekilde toparlandılar, bu yüzden bizi hala yeniden başlatıyorlar (veya yeniden başlatıyorlar mı? ama biz güçleniyoruz :)). Ancak bu, şimdi size sunmaya çalışacağım kurulum süreci için geçerli değil.

Bu nedenle, kök sistem dışındaki tüm dosya sistemlerini monte etmek için bazı adımlar atmanız gerekir. Öncelikle bunları manuel olarak nasıl yapacağımıza, ardından bunları uygun yapılandırma dosyalarında nasıl ölümsüzleştireceğimize bakacağız.

Yani, mount komutu. Aslında bu, her biri belirli türdeki dosya sistemlerini - yalnızca UFS'yi değil, aynı zamanda FreeBSD tarafından desteklenenlerden herhangi birini - monte etmek için tasarlanmış bir program ailesidir. Bunların listesi oldukça geniştir; /sbin dizinine bakarak bu konuda fikir sahibi olabilirsiniz: $ ls /sbin/mount*

bu bize yanıtı verecektir /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_ext2fs /sbin/mount_nullfs / sbin/mount_umapfs /sbin/mount_fdescfs /sbin/mount_nwfs /sbin/mount_unionfs /sbin/mount_linprocfs /sbin/mount_portalfs /sbin/mount_mfs /sbin/mount_procfs

Bu listedeki her komut, bazılarına daha sonra döneceğimiz farklı türde bir dosya sisteminden sorumludur. Şimdilik sadece UFS ve UFS2 ile çalışacak şekilde tasarlanan /sbin/mount'un kendisini not edelim.

Komut satırından çağrıldığında iki bağımsız değişken gerektirir: bağlanacak aygıtın adı ve bağlama noktası (yani, temel dosya sisteminin bağlanacağı dizin). Cihaz adı, üzerinde UFS2 dosya sistemi (UFS) oluşturulmuş mevcut bir BSD diliminde önceden eşlenmiş bir patricia'yı belirtmelidir; örneğin, $ mount /dev/ads0d /usr

dosya sistemini, dosya ağacının kökünün /usr dizininde belirtilen bölüme bağlar. Aygıttaki dosya sistemi oluşturulmamışsa veya 4.2BSD dışında bir türdeyse, yanlış süper bloğu belirten bir hata mesajı görünecektir: aynı adı taşıyanın aksine Linux yardımcı programları FreeBSD'deki mount komutu dosya sisteminin türünü tanıyamaz.

Bağlama noktasına aşağıdaki gereksinimler uygulanır: a) bağlama sırasında aynı adda bir dizin mevcut olmalıdır ve b) mümkün olduğu kadar boş olmalıdır. Birincisi zorunludur, ancak ikincisi tamamen gerekli değildir. Herhangi bir dosya içeren bir dizine bağlanma sorunsuz bir şekilde gerçekleşecektir (Linux'ta bunun çok uzun zaman önce bir sistem çökmesine neden olduğunu hatırlıyorum), ancak tüm içeriğine bağlantısı kesilene kadar erişilemez hale gelecektir. Ve içerdiği dosyalar herhangi bir alt sistem için önemli bir rol oynuyorsa, bu her türlü kötü sonuca neden olabilir. Örneğin, /tmp dizininin içeriği, X pencere sistemi çalışırken buraya bir dosya sistemi monte edilerek engellendiyse, sonuç muhtemelen X sunucusunun çökmesi olacaktır. Neyse ki, gerekirse kombine bir montaj gerçekleştirebilirsiniz (aşağıya bakın).

Belirtilen biçimde, montaj bazı varsayılan özelliklerle gerçekleştirilecektir: dosya sistemi sözde modda okuma/yazma olacaktır. noasync (meta veri işlemlerinin eşzamanlı olarak gerçekleştirildiği ve veri işlemlerinin eşzamansız olarak gerçekleştirildiği aynı). Bu konum -o seçeneği kullanılarak değiştirilebilir. Bunlardan epeyce var, ancak pratikte bu aşamada bizim için ana olanlar şunlar olacak:

  • async tamamen asenkron bir mod sağlayacak (önceki yazılardaki vahim uyarılara rağmen bunun haklı gösterilebileceği bir durumdan daha sonra bahsedeceğim);
  • tam tersine senkronizasyon, tamamen senkronize bir modun etkinleştirilmesi (ancak bunun pratikte neden gerekli olduğunu gerçekten anlamıyorum);
  • hiçbir zaman çok kullanışlı seçenek, son erişim zamanı özniteliğinin dosyaları güncellemesini önleyen ve performansı büyük ölçüde artıran;
  • rdonly dosya sistemini salt okunur modda bağlar (bazen bu gereklidir);
  • birleştirme noktası dizininin önceki içeriğinin görünür kaldığı bir birleştirme bağlaması gerçekleştirmenize olanak tanıyan aynı seçenek; bazı kısıtlamalarla doğrudur bkz. adam (8) bineği.

-o seçeneğinin belirli dosya türlerinin bağlı dosya sistemine yerleştirilmesini yasaklayan başka birkaç değeri vardır; örneğin yürütülebilir dosyalar (-o noexec), aygıt dosyaları (-o nodev) veya bu tür dosyalar -isminde. bit (-o nosuid), ancak bunlar esas olarak sunucu yöneticileri için pratik öneme sahiptir ve güvenlik amaçlarına hizmet eder. Bir masaüstü makinede olağan montaj şekli şöyle olacaktır: $ mount -o noatime /dev/ads0d /usr; $ mount -o noatime /dev/ads0e /var; $ mount -o noatime /dev/ads0f /home

Yukarıdakilerin tümü yalnızca FreeBSD dosya sistemlerinin montajı için geçerlidir. Ancak pratikte genellikle diğer dosya sistemi türlerinin dizin ağacına dahil edilmesine ihtiyaç duyulur. Bu, özellikle ISO9660 (Mac'ler dışındaki tüm CD'ler için olağan dosya sistemi) ve çeşitli FAT'ler için sıklıkla gereklidir. Bu durumda uygun mount komutunun açıkça çağrılması gerekir; örneğin $ mount_cd9660 /dev/acd0 /cdrom

kompaktı monte etmek için veya $ mount_msdosfs /dev/ad## /mnt

her türlü FAT için (FAT32 dahil). Ancak bu, mount komutuna -t filesystem_type seçeneği belirtilerek dolaylı olarak da yapılabilir. Böylece, $ mount -t ext2fs /dev/ad## /mnt/linux komutu kullanılır.

dosya bağlar Linux sistemi(ilgili özellik çekirdeğe dahil edilmişse). Bu durumda, BSD bölümleri için standart bağlama, ext2fs bölümlerini (ve ext3fs'yi de, ancak elbette herhangi bir günlük kaydı işlevi olmadan) bağlamak için tasarlanmış /mount_ext2fs komutuyla değiştirilir. Yani, $mount -t fstype formu ... ...

$mount_fstype komutunun tam eşdeğeri olacak... ...

Dosya sistemlerinin montajıyla ilgili tüm işlemler (bunlar dahil) çıkarılabilir medya) FreeBSD'de süper kullanıcı hakları gerektirir. Buradaki -o seçeneğinin değerleri, mount komutunun Linux sürümünden farklı olarak sıradan kullanıcılara montaj yapılmasına olanak sağlayan bir kullanıcı parametresi içermez. Doğru, bunu aşmanın birkaç yolu var, ancak şimdi bunlar hakkında konuşmak uygun değil. Otomatik montajın ayarlanması.

Ancak pratikte manuel montaja yalnızca nadiren kullanılan dosya sistemleri için başvurulur. FreeBSD'nin çalışması için temel olarak önemli olan tüm dosya sistemleri sistem başlangıcında otomatik olarak bağlanır ve sık kullanılanlar tabiri caizse yarı otomatik modda bağlanır.

Otomatik montaj için, montaj programı, önyükleme işlemi sırasında başlatma komut dosyalarından çalıştırılır. Kendi yapılandırma dosyası olan /etc/fstab'ı arar ve bazı istisnalar dışında (aşağıda ele alınmıştır) bulduğu her şeyi bu dosyaya bağlar.

/etc/fstab dosyasının kendisi, yaşamı desteklemek için gerekli tüm dosya sistemleri de dahil olmak üzere FreeBSD kurulduğunda otomatik olarak oluşturulur. Ancak gelecekte montaj için yeni cihazlar veya halihazırda etkinleştirilmiş cihazlar için ek seçenekler eklemek amacıyla manuel olarak düzenlenebilir.

/etc/fstab dosyası, aşağıdaki alanları içeren, metin biçiminde (boşluk veya sekmelerle ayrılmış alanlar) basit bir veritabanıdır:

  • Cihaz, manuel olarak kullanıldığında mount komutunun ilk argümanına benzer şekilde, dosya sisteminin bulunduğu cihazın dosya adıdır;
  • Bağlama noktası bağlama noktası (bağlama komutunun ikinci argümanına karşılık gelir);
  • -t seçeneğinin değeri olarak da belirtilen FStype dosya sistemi türü;
  • -o seçeneğinin değerlerine benzer ek montaj seçenekleri;
  • Döküm yürütme koşulları yedekleme dosya sistemi yardımcı programı dökümü yardımcı programı;
  • Dosya sistemini fsck yardımcı programıyla kontrol etmek için Pass# koşulları.

Yeni yüklenen bir FreeBSD'de /etc/fstab mutlaka aşağıdaki girişleri içerecektir (1. IDE kanalındaki Ana diskin 1. dilimi için örnek): # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1a / ufs rw 1 1 / dev/ad0s1b hiçbiri takas sw 0 0

Makul kişilerin tavsiyelerine (ve sysinstall'ın varsayılanlarına) uyarsanız ve kökten dosya sisteminin bazı dallarını seçerseniz, /dev/ad0s1d /var ufs rw 0 0 /dev/ad0s1e / gibi girişler listelenenlere eklenecektir. (sysinstall aracılığıyla dilim otomatik olarak işaretlendiğinde) usr ufs rw 0 0 /dev/ad0s1f /tmp ufs rw 0 0

Kullanıcı ana dizinlerini içeren dosya sisteminden sorumludur.

Açıkçası, Seçenekler alanına -o seçeneğinin mevcut (ve makul) herhangi bir değerini (virgülle ayrılmış, boşluksuz) ekleyebilirsiniz, örneğin tüm dosya sistemleri için noatime ve /tmp için de eşzamansız, çünkü Bu dizinin içeriğinin yeniden başlatmanın ardından kaydedilmesi beklenmiyor.

Yukarıdakiler başlangıçta otomatik olarak bağlanan dosya sistemleri için geçerlidir. Ancak, zaman zaman bağlanan sistemler için kimse sizi /etcfstab dosyasına giriş yapmaktan rahatsız etmez - bu durumda basitleştirilmiş bir şemaya göre monte edilebilirler (yukarıda yarı otomatik modla kastettiğim buydu). Böylece, bir CD sürücüsü için şu satırı ekleyebilirsiniz (aslında, /etc/fstab dosyası oluşturulduğunda otomatik olarak görünür) /dev/acd0 /cdrom cd9660 ro,noauto 0 0

burada seçenekler, tahmin edebileceğiniz gibi, başlangıçta (noauto) ve salt okunur modda (ro) montajın reddedilmesini gerektirir. Bundan sonra, bir CD takmak için yalnızca bağlama noktasını belirtmeniz yeterli olacaktır - $ mount /cdrom

Tüm çıkarılabilir sürücüler (Zip, USB sürücüler, hatta disketler) ve BSD olmayan bölümler (FAT veya Ext2fs) için benzer girişler yapılabilir. Bu arada, /etc/fstab dosyasında değişiklik yaptıktan hemen sonra, makinenin yeniden başlatılmasını beklemeden, basitleştirilmiş şemayı kullanarak dosya sistemlerini bağlayabilirsiniz.

Gücü kapatmadan veya makineyi yeniden başlatmadan önce ilgili tüm dosya sistemlerinin bağlantısı kesilmelidir. Doğru kapatmanın ardından, bu otomatik olarak yapılır ve bunun sonucunda yazılabilir dosya sistemlerinin her biri (veya daha doğrusu onu taşıyan bölüm) süper bloğunda temiz bir ayırma biti alır.

Ancak bazı durumlarda (örneğin, Yazılım Güncellemeleri mekanizmasını bağlarken veya bağlantısını keserken veya bir bütünlük kontrolü gerçekleştirmek için), umount komutunun kullanıldığı dosya sistemlerinin bağlantısını manuel olarak kaldırmak (ve yeniden bağlamak) gerekli hale gelir. Tek bir argüman gerektirir: dizin ağacından kaldırılacak dosya sisteminin bağlama noktası, örneğin: $ umount /tmp

Tek bir satırla birden fazla dosya sisteminin bağlantısını kesebilirsiniz: $ umount /usr /var /home

Veya $ umount -A seçeneklerini gerektiren tüm bağlı dosya sistemlerini veya /etc/fstab dosyasında listelenen tüm dosya sistemlerini (kök hariç) yapabilirsiniz.

veya $tumount -a

sırasıyla. -t seçeneğinin değerlerini belirterek belirli dosya sistemi türlerinin bağlantısını kaldırmak da mümkündür. Yani, $ umount -t ufs komutu

CD'yi ve sistemde yer alan diğer her şeyi etkilemeden yalnızca BSD bölümlerinin bağlantısını kesecektir.

Çıkarma sırasında dosya sistemleri kullanımda olmamalıdır, yani üzerinde bulunan dosyalara erişim olmamalıdır. Dolayısıyla, bir dosya sisteminin herhangi bir dizininde olmak, bağlantısını kesmeyi reddetmek için yeterli bir nedendir (aygıt meşgul gibi bir mesajla), bu nedenle yukarıda listelenen komutların hiçbiri kök dosya sisteminin bağlantısını kesemez. Ancak bir veri dosyasını herhangi bir program tarafından okumak, bu dosyayı barındıran sistemin bağlantısını kesmeyi reddetmek için bir neden değildir (sonuçta, genel durumda, bellekteki bir dosya ile diskteki bir dosya arasındaki iletişim yalnızca değişikliklerin kaydedildiği sırada gerçekleşir.

Ancak kullandığınız dosya sisteminin bağlantısını da kaldırabilirsiniz; bunun için -f seçeneğiyle umount komutunu vermeniz gerekecektir. Doğru, bu hatalara yol açabilir, bu nedenle kesinlikle gerekli olmadıkça buna başvurmamak daha iyidir. Ve zorla bağlantıyı kesme seçeneğinin toplu bağlama üzerinde herhangi bir etkisi olmayacaktır.

Dosya sistemlerinde düşük seviyeli işlemler gerçekleştirdikten sonra çalışmaya devam etmek için bunların tekrar monte edilmesi gerekecektir. Bu yalnızca yeniden başlatma olmadan değil, aynı zamanda sıkıcı bireysel montaj olmadan da yapılabilir. Sadece -a seçeneğini kullanın: $ mount -a

/etc/fstab dosyasında giriş bulunan tüm dosya sistemlerinin bağlanacağı sistem. Bu durumda noauto bayrağıyla işaretlenmiş olanlar monte edilmeye çalışılacaktır. Bunu önlemek için dosya sistemi türünü daha ayrıntılı olarak tanımlayabilirsiniz. Yani, $ mount -a -t ufs komutu

CD'lere veya flash sürücülere zarar vermeden yalnızca BSD bölümlerini bağlayacaktır. Veya tam tersine, /etc/fstab dosyasında listelenen bazı dosya sistemlerini, örneğin içinde gereksiz olanları, genel montaj sürecinin dışında bırakabilirsiniz. şu anda FAT'ler: $ mount -a -t nomsdosfs Sonuç yerine giriş

Bu arada, seçenekler ve argümanlar olmadan mount komutu (ve bu formda, yukarıda tartışılan tüm durumların aksine, sıradan bir kullanıcı tarafından verilebilir), şu anda monte edilmiş dosya sistemlerinin, bağlama noktasını, koşullarını ve koşullarını gösteren bir listesini görüntüleyecektir. çalışma modu. Örneğin, bu satırların yazıldığı makine için çıktı şu şekilde görünecektir: /dev/ad0s1a on / (ufs, local, noatime, soft-updates) devfs on /dev (devfs, local) /dev/ccd0e /var (ufs, yerel, noatime, yazılım güncellemeleri) üzerinde /dev/ccd1e /usr üzerinde (ufs, yerel, noatime, yazılım güncellemeleri) /dev/ccd2e /home (ufs, yerel, noatime, yazılım güncellemeleri) üzerinde /dev/ md0 üzerinde /tmp (ufs, yerel, noatime, eşzamansız)

Çıktının ilk satırı, /dev/ad0s1a bölümünün kök dizinimize monte edildiğini, Yazılım Güncellemeleri ile bir UFS dosya sistemi taşıdığını (özellikle bu durumda UFS2, ancak mount komutunun çıktısında farklı olmadıklarını) gösterir. mekanizma etkin, yerel (yani bu makinenin diskinde bulunuyor) ağ sürücüleri Ayrıca mount komutuyla da bağlanmıştır) ve atime niteliğinin güncellenmesine tabi değildir.

Ancak daha önceki hikayelerde tartışılmayan cihazlar ve dosya sistemlerine yönelik satırlar da var. Ayrıca mevcut konfigürasyona karşılık gelen /etc/fstab dosyasına bakarsak: $ 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 cd9660 ro,noauto 0 0 / dev/da0s1 /mnt/usb ext2fs rw,noauto,noatime 0 0 /dev/md0 /tmp mfs rw,noatime,async,-s32m 2 0

daha sonra çıktı satırlarından birinin (devfs on /dev (devfs, local) girişleri arasında hiç eşleşme olmadığını göreceğiz. Bunlar ne tür cihazlar ve dosya sistemleri?

/dev/ccd0 gibi cihazlarla ilgili mi? Şimdilik bunların yazılımsal RAID dizileri olduğunu söyleyeceğim (onlardan daha sonra daha detaylı bahsedeceğiz). Ancak devf'ler ve mf'ler, bir sonraki notta doğrudan tartışılacak olan sanal dosya sistemleridir.

Basit soruların internette genellikle yeterince ele alınmadığına sık sık dikkat çekiyorum. Bunun nedeni muhtemelen tüm guruların kimsenin bu kadar aptalca sorular sormayacağından emin olmasıdır, çünkü bunu herkes biliyor. Ancak benim pratiğim, yalnızca yeni başlayanlar arasında değil, aynı zamanda bununla uğraşmak zorunda kalmayan ciddi yöneticiler arasında da en yaygın olanın tam da bu küçük basit sorular olduğunu gösterdi. Ciddi yöneticiler bile bunu her gün yapmazlar, ancak unutmamak için kimseye itiraf etmeden kendilerine bir tür kopya kağıdı saklarlar. Her şeyi düzeltelim. Artık 5 dakikada nasıl ekleneceğini öğreneceksiniz sabit disk FreeBSD'de. Bu yüzden. İlk olarak, süreci anlamak için tüm talimatlar verilecek ve sonunda, kısa bir kopya sayfası olarak yalnızca komutların bir listesini içeren kısa bir eylemler listesi olacaktır.

Açıklamalarla birlikte ayrıntılı talimatlar

Bir sabit sürücü adı seçme

Öncelikle yeni eklediğimiz cihazın adını belirlememiz gerekiyor. Aşağıdaki komut bu konuda bize yardımcı olacaktır:

Geom disk listesi

Veya bu komut:

Camcontrol geliştirici listesi

Gerçek bir sistemde bu komutlar daha fazlasını gösterecektir. faydalı bilgiler yani: cihazların adları ve seri numaraları.

Yeni cihazı kurmadan önce sistemimizin ada0 üzerine kurulu olduğunu biliyorduk, bu da mantıksal olarak bizim yeni disk ada1. Bunu yeni cihazın adına göre belirleyebilirsiniz. seri numarası veya hacim.

Şimdi yeni diskimizde işaretleme olup olmadığını kontrol edelim

Gpart gösterisi ada1

Diskte herhangi bir işaret yoktur.

Mevcut işaretlemeyi kaldırma

Disk zaten kullanılmışsa ve üzerindeki işaretleri kaldırmaya ihtiyaç varsa, şunu çalıştırmanız yeterlidir:

Gpart yok et -F ada1

GPT işaretlemesi oluşturma

Öncelikle bir disk bölümü oluşturmalıyız. MBR'yi unutmanızı ve yeni, daha kullanışlı ve işlevsel bir GPT'ye geçmenizi şiddetle tavsiye ederim.

Diskte GPT işaretlemesi oluşturuyoruz ve ardından ne olduğunu kontrol ediyoruz:

Gpart create -s gpt /dev/ada1 gpart ada1'i göster

Artık diskimizde GPT işaretlemesi var. Çıktıdan, LBA 34'ten başlayıp LBA 8388541 ile biten diskin tamamen boş olduğunu görebilirsiniz. LBA 0−33 - sistem tarafından bölüm tablosu için ayrılmıştır.

Diyelim ki bu diskte iki bölüm oluşturmamız gerekiyor:

  • takas- bölümü değiştir
  • veri- ihtiyacımız olan verileri depolamak için ufs tipinin bir bölümü.

Bölümler (dilimler) oluşturma

Kurulum modern bir ortamda gerçekleştiriliyorsa sabit sürücüler sektör boyutu = 4 KB olan, bölümler (bölümler) oluştururken hizalamayı kullanmak gerekir. Bunu iki şekilde yapabilirsiniz: 1) bölüm parametrelerini bloklar halinde belirtirsek, blok numarasını 8'in katı olarak girin, örneğin: -b 40; 2) bölüm boyutunu bayt cinsinden belirtirsek veya başlangıcı ve boyutu hiç belirtmezsek, parametreyi kullanın -4K bölümün başlangıcını ve sonunu 4 kb boyutunda sektörlere göre ayarlayacak. İçinde bulunduğumuzdan beri bu örnekte Sanal bir sabit diskte test kurulumu yapıyorsak, bu gerekli olmayabilir. Her durumda, bölümler oluşturmadan önce sürücünüzün sektör boyutunu tam olarak bilmeniz gerekir, aksi takdirde korkunç iş yavaşlamalarına neden olur.

Şimdi bölümleri oluşturalım. Bunun için gpart add komutu var çeşitli parametreler. İlk parametre -T- oluşturulmakta olan dosya sisteminin türünü belirtir. Bizim durumumuzda iki tür kullanılacaktır: freebsd-swap ve freebsd-ufs. Sonraki iki isteğe bağlı parametredir: -B- bölümün oluşturulması gereken LBA numarasını belirtir. Bu parametreyi belirtmezseniz bölüm, ilk ücretsiz LBA'dan otomatik olarak oluşturulacaktır. -S- LBA'daki bölümün boyutunu belirtir. Bir LBA bloğunun boyutu = 512 bayt. LBA bloklarının sayısının belirtilmesi tavsiye edilir, ancak kilo/mega/giga/... bayt (k/M/G son eki) cinsinden de mümkündür. Bu parametreyi belirtmezseniz bölüm, boş alan içerisinde mümkün olan maksimum LBA'ya göre oluşturulacaktır. Bölüm etiketini parametre olarak da belirleyebilirsiniz, örneğin: -l takas1- bu durumda, bölüme daha rahat erişmek için kullanılabilecek /dev/gpt/swap1 etiketi oluşturulacaktır. Gerekli son parametre diskin yoludur. Bizim durumumuzda: /dev/ada1.

İki bölüm oluşturalım ve sonra elimizde ne olduğuna bakalım. İlk bölümü, başlangıç ​​LBA'sını belirtmeden, ancak 1 GB (2097152 blok) boyutunu belirterek oluşturacağız. İkinci bölümü, ilk LBA'yı belirtmeden ve boyutunu belirtmeden oluşturacağız - böylece boş alanın tamamında oluşturulacaktır.

Gpart add -t freebsd-swap -s 2097152 /dev/ada1 gpart add -t freebsd-ufs /dev/ada1 gpart show ada1

Boyut bloklar yerine bayt cinsinden belirtilebilir. Çok daha kullanışlı. Tek olumsuzluk, sistemin blok sayısını her zaman doğru şekilde hesaplayamamasıdır. Bayt cinsinden bölüm boyutunu belirtirken diskte belirli sayıda bloğun boş kalacağı durumlar olabilir.

Dosya sistemi oluşturma (biçimlendirme)

Takas bölümlerini biçimlendirmeye gerek yoktur. Ancak ufs gibi bölümlerin kullanımdan önce biçimlendirilmesi gerekir. Söylemek daha doğru olur: üzerlerinde bir dosya sistemi oluşturulmalıdır.

İkinci bölümde bir dosya sistemi oluşturmak için aşağıdaki komutu çalıştırmanız yeterlidir:

Newfs -U /dev/ada1p2

Bu durumda -U parametresi kullanıldı - bu dosya sisteminde Yazılım Güncellemeleri mekanizmasının kullanılması gerektiğini gösterir. Bu mekanizmanın etkinleştirilmesini önlemek için bu seçeneği atlayabilirsiniz.

Montaj

Bir sonraki adım bölümleri monte etmektir. Öncelikle unutmamak adına yeni bölümlerimizi /etc/fstab dizinine ekleyelim. Düzenlemeden sonra dosyam şöyle görünüyor:

Tüm bölümleri /etc/fstab dosyasına göre yeniden bağlamak için şu komutu çalıştırmanız yeterlidir:

-a Dağı

Çıktıdan görebileceğiniz gibi /dev/ada1p2 bölümü monte edilmiştir. Şimdi SWAP kısmına ne olduğuna bakalım. Komutu çalıştıralım:

Gördüğünüz gibi yeni SWAP bölümü kurulmadı. SWAP'ın kurulabilmesi için özel bir komutla etkinleştirmeniz gerekir:

Takas /dev/ada1p1

Aynı şekilde swapoff komutunu kullanarak üzerinde herhangi bir işlem yapmadan önce SWAP bölümünü devre dışı bırakmanız gerekir.

Yeni bir tane eklemek için hepsi bu sabit disk sisteme girişi tamamlanmıştır.

Kısa talimatlar

Verilen: sabit disk /dev/ada1

Hedef: silmek mevcut işaretleme, yeni bir GPT bölümü oluşturun, iki bölüm oluşturun: takas ve veri ve bunları çalışma sistemine bağlayın.

Her eylemden sonra şunları yapın: gpart gösterisi sonucu gözlemlemek için. Eylem sırası:

  1. Mevcut bölümü kaldır: gpart destroy -F ada1
  2. Yeni bir bölüm oluşturun: gpart create -s gpt /dev/ada1
  3. İki bölüm oluşturun: takas ve veri: gpart add -t freebsd-swap -s 2097152 /dev/ada1 gpart add -t freebsd-ufs /dev/ada1
  4. Bir dosya sistemi oluşturun UFSv2 ikinci bölümde: newfs -U /dev/ada1p2
  5. Önyükleme sırasında otomatik bağlama için /etc/fstab dosyasına satır ekleyin: /dev/ada1p1 none swap sw 0 0 /dev/ada1p2 /mnt ufs rw 2 2
  6. Yeni bir bölüm ekleyin (komut, /etc/fstab dosyasındaki tüm bölümleri bağlar): mount -a
  7. Yeni takas bölümünü şu komutla etkinleştirin: swapon /dev/ada1p1

Bu, kurulumu tamamlar.

Komutları kullanarak dosya ve dizinlerin erişim haklarını ve sahiplerini değiştirebilirsiniz. mod Ve yenilmiş. Hakları ayarlamak için maske oluşturulan dosyalar, genel olarak değiştirilebilir /etc/profil Linux için ve /etc/login.conf FreeBSD için. Genellikle varsayılan maske 022 . Anlam umask den çıkarıldı 777 yani izinler önemli olacak 755 . yönetici - yürütmeye izin verildi okuma - okuma izni yazma - yazma izni SUID biti - dosya özniteliği, yürütülebilir dosya özniteliğiyle birlikte yürütülecek dosyanın, dosyayı çalıştıran UID yerine dosya sahibinin etkin UID'siyle yürütülmesine olanak tanır 1 --x yürüt 2 # İzinler 764 = yürütme/okuma/yazma | okuma/yazma | Okumak -w- yaz# İçin: |-- Sahip --| |-Grup-| |Diğer| 4 r-- ugo=a'yı oku u=kullanıcı, g=grup, o=diğerleri, a=herkes # # chmod MODE[,MODE] DOSYASI MOD *([-+=]()) şu forma sahiptir: # chmod 640 /var/log/maillog # İzinleri eşit olarak ayarla -rw-r----- # chmod u=rw,g=r,o= /var/log/maillog # Yukarıdakiyle aynı # chmod -R o-r /home/* # İzinleri tekrar tekrar değiştirin, okumaya izin vermeyin Diğer # chmod u+s /yol/giden/prog # Düzenlemek SUID yürütülebilir dosya başına bit (burada dikkatli olun, ne yaptığınızı anlamalısınız) # bul / -perm -u+s -print # Düzenlemek# Yüklü olan tüm programları bulun biraz # chown kullanıcısı:grup /yol/dosyaya/dosyaya# Kullanıcıyı ve grubu dosyanın sahibi olarak ayarlayın # chgrp grubu /yol/giden/dosya# Dosyanın sahibi olan grubu değiştirin # chmod 640 `find ./ -type f -print' 640 # İzinleri değiştir tüm dosyalar için # chmod 640 `find ./ -type f -print' 751 # chmod 751 'bul ./ -type d -print'

tüm dizinler için

Disk Bilgileri # Disk bilgilerini görüntüle ( sektör/boyut) ÜcretsizBSD# hdparm -I /dev/sda # Hakkında bilgi IDE/ATA disk (Linux)# fdisk /dev/ad2 # Disk bölümlerini değiştirmeyi göster# smartctl -a /dev/ad2 # Göstermek AKILLI disk bilgisi

Yükleniyor

ÜcretsizBSD

Acil bir durumda eski çekirdeği yüklemek için, örneğin başarısız bir derleme ve yeni bir çekirdeğin kurulumundan sonra, komut satırı istemine ulaşmak için geri sayım sırasında 6'ya basarak indirmeyi durdurun.

# kaldır # kernel.old'u yükle # önyükleme

Bağlantı noktaları, disk kullanımı #bağ | sütun -t# Takılan dosya sistemlerini göster #df # Miktarı göster boş alan ve monte edilmiş cihazlar # cat /proc/bölümler

# Tüm kayıtlı bölümleri göster (Linux)

Dizin bilgileri # du -sh *# Liste halinde dizin boyutları # du -csh# Geçerli dizinin toplam hacmi # du -ks * | sırala -n -r# Kilobayt cinsinden boyuta göre sıralanmış dizinlerin listesi # ls -lSr

# Dizin listesi, ters sıralama

Kim hangi dosyaları açtı Bazen hangi dosyanın bir bölümü kilitlediğini bulmak gerekir, bu da komuta neden olur miktar ilgili hatayı verir. # umount /home/ umount: /home'un bağlantısını kes# Bir bölümün bağlantısını kesmek şu ana kadar mümkün değildir:/Ev

engellendi

başarısız oldu: Cihaz meşgul FreeBSD ve Unix benzeri sistemlerin çoğu# fstat -f /ev #bağlama noktası için# fstat -p PID # PID ile uygulama için# fstat -u kullanıcı # kullanıcı adı için Bulmak dosyayı açİçin Xorg 212042 : # ps balta | grep Xorg | awk "($1 yazdır)" 1252 # fstat -p 1252 KULLANICI CMD PID FD BAĞLANTI INUM MODU SZ|DV R/W root Xorg 1252 root / 2 drwxr-xr-x 512 r root Xorg 1252 text /usr 216016 -rws-- x--x 1679848 r root Xorg 1252 0 /var 212042 -rw-r--r-- 56987 w Şununla dosyayı bul: inum rehberde

/var

şunu yapabilirsiniz: # find -x /var -inum 212042 /var/log/Xorg.0.log Linux Kullanarak bir dizindeki açık bir dosyayı bulun kaynaştırıcı veya of # umount /home/ umount: /home'un bağlantısını kes : # füzer -m /home # Erişimi olan süreçlerin listesi# lsof /home KOMUT PID KULLANICI FD TÜRÜ CİHAZ BOYUTU DÜĞÜM ADI tcsh 29029 eedcoba cwd DIR 0.18 12288 1048587 /home/eedcoba (guam:/home) lsof 29140 eedcoba cwd DIR 0.18 12288 1048587 /home/eedco ba (guam: /ev) Şuna göre bul:

PID

uygulamalar: ps balta | grep Xorg | awk "($1 yazdır)" 3324 # lsof -p 3324 KOMUT PID KULLANICI FD TÜRÜ AYGIT BOYUTU DÜĞÜM ADI Xorg 3324 root 0w REG 8.6 56296 12492 /var/log/Xorg.0.log Dosya adına göre: # lsof /var /log /Xorg.0.log KOMUT PID KULLANICI FD TÜRÜ CİHAZ BOYUTU DÜĞÜM ADI Xorg 3324 root 0w REG 8.6 56296 12492 /var/log/Xorg.0.log Dosya sistemlerini bağlama/yeniden bağlama, kayıtlı /etc/fstab: # mount /cdrom Veya cihazı şurada bulabilirsiniz: /dev veya çıktıda dmesg

ÜcretsizBSD

# mount -v -t cd9660 /dev/cd0c /mnt # Diski bağla CDrom(birinci yöntem)# mount_cd9660 /dev/wcd0c /cdrom # Diski bağla CDrom(ikinci yöntem)# mount -v -t msdos /dev/fd0c /mnt # Disket Yazma yeri /etc/fstab: # Device Mountpoint FStype Options Döküm Geçiş# /dev/acd0 /cdrom cd9660 ro,noauto 0 0 Kullanıcıların diskleri bağlamasına izin ver: # sysctl vfs.usermount=1 # Veya satıra girin /etc/sysctl.conf dosyasında "vfs.usermount=1"

/var

# mount -t auto /dev/cdrom /mnt/cdrom # Tipik disk bağlama komutu Dosya sistemlerini bağlama/yeniden bağlama # montaj /dev/hdc -t iso9660 -r /cdrom # Diski bağla IDE # montaj /dev/scd0 -t iso9660 -r /cdrom # Diski bağla SCSI cdrom# mount /dev/sdc0 -t ntfs-3g /windows # Diski bağla SCSI Kayıt ol /etc/fstab: /dev/cdrom /media/cdrom subfs noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec 0 0

FreeBSD bölümünü Linux ile bağlama

Bölüm numarasına bakın fdisk, genellikle bu kök bölümdür, ancak başka bir bölümde de olabilir BSD dilim. FreeBSD bölümünde çok sayıda dilim varsa bunlar görünür olmayacaktır. fdisk, ancak şurada bulunabilirler: geliştirici/sda* Kullanarak bir dizindeki açık bir dosyayı bulun /dev/hda*. # fdisk /dev/sda# FreeBSD bölümünü bulun

/dev/sda3 * 5357 7905 20474842+ a5 FreeBSD # mount -t ufs -o ufstype=ufs2,ro /dev/sda3 /mnt /dev/sda10 = /tmp; /dev/sda11 /usr # Başka bir dilim

Yeniden kablolama Cihazı ilk önce bağlantısını kesmeden yeniden takın; örneğin fsck # mount -o remount,ro / # Linux # mount -o ro / # FreeBSD Veri akışını şuradan kopyalayın CDROM'u "ve dosyaya ISO görüntüsü

.

# dd if=/dev/cd0c of=file.iso 2 Anında takas bölümü oluşturma Takas bölümünü artırmanız gerektiğini varsayalım. gigabayt, /swap2gb(Linux için) # dd if=/dev/zero of=/swap2gb bs=1024k count=2000 # mkswap /swap2gb # Takas oluştur # swapon /swap2gb

# Değiştirmeyi etkinleştirin, artık kullanılabilir

# swapoff /swap2gb # Takas devre dışı bırak # rm /swap2gb SMB bölümünü monte etme CIFS- Ortak İnternet Dosya Sistemi KOBİ CIFS- sunucu mesaj bloğu Diyelim ki paylaşılan bir bölüm benim paylaşımım sunucuda Smb sunucusu, aranan adres Windows makinesi irade \\smbserver\paylaşımım\. Üzerine monte edeceğiz /mnt/smbshare. şunu unutma

/var

cif'ler IP adresi veya alan adı gerekli.# smbclient -U user -I 192.168.16.229 -L //smbshare/ # Paylaşımları listele # mount -t smbfs -o kullanıcı adı=winuser //smbserver/myshare /mnt/smbshare # mount -t cifs -o kullanıcı adı=winuser, şifre=winpwd //192.168.16.229/myshare /mnt/share Ek olarak paket mount.cifs: kullanıcı adı=winuser şifresi=winpwd Ve şimdi şunu monte ediyoruz: # mount -t cifs -o kimlik bilgileri=/home/user/.smb //192.168.16.229/myshare /mnt/smbshare

ÜcretsizBSD

Anahtarı kullan -BEN IP adresini ayarlamak için (veya DNS); benim paylaşımım, bu bir Windows adıdır. # smbutil görünümü -I 192.168.16.229 //winuser@smbserver# Paylaşılan kaynakların listesi

# mount_smbfs -I 192.168.16.229 //winuser@smbserver/myshare /mnt/smbshare

Görüntüyü bağla

Linux geri döngü # mount -t iso9660 -o döngü dosyası.iso /mnt# CD görüntüsünü bağla # mount -t ext3 -o döngü dosyası.img /mnt # Görüntüyü dosya sistemiyle bağlayın

ÜcretsizBSD

dahili3 Kullanma MD - hafıza cihazı (gerekirse yapın) kldload md.ko ): # mdconfig -a -t vnode -f dosya.iso -u 0 # mount -t cd9660 /dev/md0 /mnt # umount /mnt; mdconfig -d -u 0# Bellek cihazını temizle Veya sahte bir cihaz kullanarak ( VN, Sanal düğüm ): # vnconfig /dev/vn0c dosyası.iso; mount -t cd9660 /dev/vn0c /mnt # umount /mnt; vnconfig -u /dev/vn0c

# Sahte cihazı temizle

ISO Görüntüsü Oluşturma ve Yazma CD'yi kopyalayacağız veya dvd sektörü sektörün arkasındayız.# dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc Kullanım mkisofs Bir dizindeki bir dosyadan görüntü oluşturmak için. Dosya adı kısıtlamalarının üstesinden gelmek için seçeneği kullanın -R Uzantı dahil RockRidge UNIX sistemleri için temel, -J içerir Joliet Microsoft tarafından kullanılan, -L izin verir sektörün arkasındayız. ISO9660

nokta ile başlayan isimler.

ÜcretsizBSD

# mkisofs -J -L -r -V BAŞLIK -o imagefile.iso /path/to/dir FreeBSD'de, /usr/ports/sysutils/cdrtools adresinden kurulabilir. CD/DVD ISO görüntülerini yazma FreeBSD yüklenmiyor DMA Açık ATAPI cihazlarda bu bir değişken aracılığıyla yapılabilir. sistem veya bir dosyada/boot/loader.conf veya bir dosyada, aşağıdaki girişler. hw.ata.ata_dma="1" hw.ata.atapi_dma=1" Kullanım Burncd ATAPI aygıtları için (, standart program, parça temel sistem) Ve cd kaydı(itibaren

/var

/usr/ports/sysutils/cdrtools ATAPI aygıtları için () SCSI aygıtları için.

# burncd -f /dev/acd0 veri imagefile.iso düzeltmesi

# ATAPI cihazları için # cdrecord -scanbus # Kaydediciyi bulun # cdrecord dev=1,0,0 imagefile.iso Aynı şekilde kullanın yukarıda açıklandığı gibi. Ayrıca yerel ATAPI arayüzünü de kullanabilirsiniz: # cdrecord dev=ATAPI -scanbus Yukarıda açıklandığı gibi kayıt yapın. dvd+rw araçları dvd+rw-tools paketi (FreeBSD: ports/sysutils/dvd+rw-tools), DVD'lerle çalışmak için gereken tüm işlevlere sahiptir, ayrıca büyüme sosları # Growisofs -dvd-uyumlu -Z /dev/dvd -J -R /p/to/data # Doğrudan yaz

Görüntüyü Nero .nrg dosyasından .iso dosyasına dönüştürün

Nero, görüntüye kullanılarak kırpılabilen 300 kb'lik bir başlık ekler. gg.

# dd bs=1k if=imagefile.nrg of=imagefile.iso skip=300

Bin/cue görüntüsünü .iso'ya dönüştürün Bu küçük bir program olan bchunk kullanılarak yapılabilir. FreeBSD'de portlarda bulunabilir/usr/ports/sysutils/bchunk

.

# bchunk resim dosyası.bin resim dosyası.cue resim dosyası.iso Dosyadan resim oluşturmaÖrneğin, 1 GB'lık bir bölüm dosyayı kullanır /usr/vdisk.img. Bu durumda anahtarı kullanıyoruz

ÜcretsizBSD

-u 0 , ancak sayı herhangi bir şey olabilir. # dd if=/dev/random of=/usr/vdisk.img bs=1K count=1M # mdconfig -a -t vnode -f /usr/vdisk.img -u 0 # Bir cihaz oluştur Kullanma/dev/md1 # bsdlabel -w /dev/md0 # newfs /dev/md0c # mount /dev/md0c /mnt # umount /mnt; mdconfig -d -u 0; rm /usr/vdisk.img # Temizle Ve /etc/fstab Bir dosyadan oluşturulan bir görüntü, sistem önyüklemesi sırasında bir satır yazılarak eklenebilir. /etc/rc.conf. Komutunu kullanarak ayarlarınızın doğru olup olmadığını kontrol edebilirsiniz. /etc/rc.d/mdconfig başlat(cihazı çıkardıktan sonra md0 komutu kullanarak # mdconfig -d -u 0). Otomatik görüntü bağlamanın, komut dosyası nedeniyle yalnızca görüntü dosyası kök bölümde OLMADIĞINDA çalışacağını unutmayın. /etc/rc.d/mdconfig.
Kök bölüm henüz yazılabilir olmadığında, önyüklemenin erken bir aşamasında gerçekleştirilir. Kök bölümün dışında bulunan görüntüler daha sonra komut dosyası tarafından eklenecektir # /etc/rc.d/mdconfig2/boot/loader.conf: md_load = "EVET" /etc/rc.conf: mdconfig_md0 = "-t vnode -f /usr/vdisk.img"/usr Cihazı ilk önce bağlantısını kesmeden yeniden takın; örneğin kök bölümde değil
/etc/fstab: (sonda 0 0, çok önemli, bu şunu gösterecek: henüz mevcut olmadığından cihaz kontrolünü göz ardı edin) /dev/md0 /usr/vdisk ufs rw 0 0

/var

Ek olarak, daha sonra görüntü boyutunu örneğin 300 MB'a kadar artırabilirsiniz.

#umount/mnt; mdconfig -d -u 0 # dd if=/dev/zero bs=1m sayı=300 >> /usr/vdisk.img # mdconfig -a -t vnode -f /usr/vdisk.img -u 0 # büyümek /dev /md0 # bağlama /dev/md0c /mnt

# Artık dosya bölümü 300 MB daha büyük# 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 # Temizle Linux ve Lostup/dev/sıfır çok daha hızlı rastgelelik # mkfs.ext3 /dev/loop0 # mount /dev/loop0 /mnt # lostup -a # Kontrol edin # umount /mnt # lostup -d /dev/loop0 # Bağlantıyı kes # rm /usr/vdisk.img

Bellek İçi Dosya Sistemi Oluşturma

Dosya sistemi bellekte çok hızlıdır, yüksek disk IO'lu uygulamalar için kullanılması mantıklıdır. 64 MB boyutunda bir partition oluşturalım ve onu mount edelim. /memdisk:

ÜcretsizBSD

# mount_mfs -o rw -s 64M md /memdisk # umount /memdisk; mdconfig -d -u 0 # Temizlemek Kullanma cihaz md /memdisk mfs rw,-s64M 0 0 # yaz /etc/fstab

/var

# mount -t tmpfs -osize=64m tmpfs /memdisk

Disk performansı

Okuyun ve yazın 1GB bölümdeki dosya ad4s3c (# umount /home/ umount: /home'un bağlantısını kes) # zaman 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 # Yalnızca Linux