Düzenleme Sürümü 0.6.0

8.1. Giriş

Bu bölümde Son sistem paketleri inşası için chroot hiyerarşisinin nasıl olacağına bakacağız.

8.2. E2fsprogs-1.40.4

Dosya sistemi biçimlendirmesini sağlayan programları içerir ext2 dışında ext3 desteği de vardır.

  • --enable-elf-shlibs
  • Bu pakette bazı programların kullandığı paylaşılan kütüphaneleri oluşturur.
  • --disable-evms
  • EVMS(Enterprise Volume Management System) ekletisini devredışı bırakır.Daha fazlası için...
  • install-libs
  • Bu komut sadece e2fsprogs kütüphanleri yükleyecek

8.3. Util-linux-ng-2.14

dosya sistemleri, konsollar, bölümler ve mesajlar ile ilgili çeşitli araçları içerir.

8.4. Sanal Çekirdek Dosya Sistemlerini Bağlama

8.5. Chroot Ortamına Giriş:

Son CLFS sistemini inşa etmeye ve yüklemeye başlamak için chroot ortamına girme zamanı.Root olarak aşağıdaki komutları çalıştırılım:

env komutu için verilen -i seçeneği chroot ortamının tüm değişkenlerini temizleyecektir. Sonra HOME,TERM,PS1 ve PATH değişkenleri tekrar ayarlar. TERM=${TERM} yapımı TERM değişkenini CHROOT içine dışındaki gibi ayarlayacak. Bu değişken vim,less benzeri programları düzgün işletmek için ihtiyaç duyar. Bu noktada CLFS değişkenine ihtiyacımız yok çünkü CLFS dosya sisteminde tüm işler kısıtlanmış olacak. Bu bölümün bundan sonraki bölümündeki tüm komutlar ve bundan sonraki konular "Chroot" ortamı içinden çalışacak. Herhangi bir sebepten dolayı(yeniden başlatmak gibi) bu ortamdan ayrılırsan ilk bağlanan "proc" ve "devpts" dosya sistemlerini bağlamayı ve yüklemeye devam etmeden önce chroot girişi yapmayı unutmayın.

8.6. Sahiplik Değişimi

"/tools" ve "/cross-tools" dizinleri clfs kullanıcı tarafından sahiplikleri vardır. sadece konuk sistem üzerinde bir kullanıcı var.

Komutta kullanılan "0:0", "root:root" yerine geçer çünkü chown, passswd oluşturulana kadar "root" çözememektedir.

8.7. Dizinleri Oluşturma

CLFS dosya sisteminde bazı yapıları oluşturma zamanı. Standart dizin ağacını oluşturalım:

Dizinler varsayılan olarak 755 iziniyle oluşturuldu ama bu bütün dizinler için kabul edilebilir birşey değil. O yüzden yukarıdaki komutlarda "root" kullanıcısının ev dizini ve geçici dosyalar için oluşturulan dizininin izinleri değişitirildi.
Birincisinde diğerlerinin "/root" dizinine giriş yapmasını engelliyoruz.İkincisinde ise "/tmp" ve "/var/tmp" dizinleri için her kullanıcıya yazma izni ama sadece kendi dosyalarını silme izni veriyoruz. Bunu da yapışkan bit(sticky bit=1) ile yapıyoruz.

8.7.1. FHS Uyum Notu

FHS(FileSystem Hierarcy Standart) tabanlı dizin ağacıdır.Buna ek olarak yukarıda oluşturduğumuz ağacı için bu standart "/usr/local/games" ve "/usr/local/share" dizinlerinin varolmasını sart koşar. FHS "/usr/local/share alt dizininin yapısı için tam değildir, bu yüzden biz sadece gerekli dizinleri oluşturduk. Bununla birlikte FHS için bunları oluşturabilirsin..."

8.8. Temel Sembolik Bağlantıları Oluşturma

Bazı programlar henüz olmayan programlar için direk yolları kullanırlar.Bu programları memnun edebilmek için daha sonraki bölümlerde gerçek dosyalar ile yer değiştirecek sembolik bağlantıları oluşturacağız.

8.9. Bayrakları İnşa Et

8.10. Parola(passwd),Grup ve günlük dosyalarını oluşturma

"root" olarak "root" adıyla oturum açabilmek için "/etc/passwd" ve "/etc/group" içerisinde ilgili girdilerin olması gerekmektedir.Aşağıdaki komutla "/etc/passwd" dosyasını oluşturalım:

root için gerçek parola daha sonra atanacak.(x burada yertutucu olarak kullanılır.)

Ekleyebileceğin ek kullanıcılar:
  • bin:x:1:1:bin:/bin:/bin/false
  • daemon:x:2:6:daemon:/sbin:/bin/false
  • adm:x:3:16:adm:/var/adm:/bin/false
  • lp:x:10:9:lp:/var/spool/lp:/bin/false
  • mail:x:30:30:mail:/var/mail:/bin/false
  • news:x:31:31:news:/var/spool/news:/bin/false
  • uucp:x:32:32:uucp:/var/spool/uucp:/bin/false
  • operator:x:50:0:operator:/root:/bin/bash
  • postmaster:x:51:30:postmaster:/var/spool/mail:/bin/false
  • nobody:x:65534:65534:nobody:/:/bin/false

Şimdi "/etc/group" oluşturalım:

Ekleyebileceğin ek gruplar:
  • adm:x:16:root,adm,daemon
  • console:x:17:
  • cdrw:x:18:
  • mail:x:30:mail
  • news:x:31:news
  • uucp:x:32:uucp
  • users:x:1000
  • nogroup:x:65533
  • nobody:x:65534

login,agetty ve init programları gibi programlar günlük dosyaları tutarlar. Kimin, ne zaman işlem yaptığı tutan bu dosyalar oluşmamış ise günlükleme yaılamaz. O yüzden günlük dosyalarımızı oluşturalım ve izinlerini verelim:

"/var/run/utmp" dosyası şu anki oturum açan kullanıcıyı kaydeder. "/var/log/wtmp" dosyası tüm oturum açma ve kapama işlemlerini kaydeder. "/var/log/lastlog" dosyası her kullanıcının açtığı en son oturumu kaydeder."/var/log/btmp" dosyası başarışız girişleri kaydeder.

8.11. Çekirdek Dosya Sistemini Bağlama

yeni oluşturulmuş dizinler üzerinde çekrideğe özgü dosya sistemini bağlıyoruz.

  • can't open /etc/fstab: No such file or directory.
  • mount komutundan sonra böyle bir uyarı ile karşılaşırsanız. "/etc/fstab" henüz oluşturulmamış fakat dosya sistemini doğru şekilde oluşturmak için gerekli değildir. Bu yüzden bu uyarıyı içiniz rahat bir şekilde yoksayabilirsiniz.

About

seruhatto