6. İşletim Sistemine Özgü Ek

Bu bölüm, yalnızca belirli bir işletim sistemi için geçerli olan ek gereksinimler ve öneriler içindir. Bu bölümdeki kurallar asla temel standartla çelişmemelidir.

6.1. Linux

Bu ek, Linux işletim sistemi içindir.

6.1.1. / (kök dizin)

Linux sistemlerde, çekirdek / konumunda bulunuyorsa, son Linux çekirdek kaynak paketlerinde kullanılmış olan vmlinux veya vmlinuz adlarını kullanmanızı öneririz.

6.1.2. /bin

Bunları gerektiren Linux sistemleri bu ek dosyaları /bin içine yerleştirir:

  • setserial

6.1.3. /dev

Aşağıdaki aygıtlar /dev içinde mevcut olmalıdır.

/dev/null

Bu aygıta yazılan tüm veriler atılır. Bu aygıttan yapılan her okuma, EOF durumu döndürür.

/dev/zero

Bu aygıt sıfırlarla doldurmak için veri kaynağıdır. Bu aygıta yazılan tüm veriler atılır. Bu aygıttan yapılan her okuma, istenen sayıda sıfır değerli bayt döndürür.

/dev/tty

Bu aygıt, bir sürecin denetim uçbirimi ile eşanlamlıdır. Bu aygıt açıldığında, tüm okuma ve yazma işlemleri, gerçek denetim uçbirimi aygıtı açılmış gibi davranacaktır.

Gerekçe

FHS'nin önceki sürümlerinde /dev için daha katı gereksinimler vardı. /dev içinde başka aygıtlar da bulunabilir. Aygıt adları, /dev'de veya /dev'in alt dizinlerinde bulunan diğer aygıt düğümlerine sembolik bağ olarak var olabilir. Aygıtların büyük/küçük numaraları ile ilgili herhangi bir gereklilik yoktur.

6.1.4. /etc

Bunları gerektiren Linux sistemleri bu ek dosyaları /etc dizinine yerleştirir.

  • lilo.conf

6.1.5. /proc

proc dosya sistemi, /dev/kmem ve diğer benzer yöntemlerden ziyade süreç ve sistem bilgilerini işlemek için fiilen standartlaşmış bir Linux yöntemidir. Süreç bilgilerinin yanı sıra diğer çekirdek ve bellek bilgilerinin saklanması ve alınması için bunu şiddetle öneriyoruz.

6.1.6. /sbin

Linux sistemleri, dosya sistemi bakımı ve önyükleyici yönetimi ile ilgili komutları /sbin'e yerleştirir.

/sbin için seçimlik dosyalar:

Duruk ikiller:
  • ldconfig

  • sln

  • ssync

Duruk ln (sln) ve duruk sync (ssync), işler ters gittiğinde kullanışlıdır. sln'nin birincil kullanımı (kötü düzenlenmiş bir yükseltmeden sonra /lib'deki hatalı sembolik bağları onarmak için), artık ldconfig (genellikle /usr/sbin'de bulunur) var olduğu ve dinamik kütüphanelerin güncellemesinde yol gösterici bir el olarak hareket edebildiği için artık önemli bir endişe kaynağı değildir. Duruk sync, bazı acil durumlarda kullanışlıdır. Standart ln ve sync'in duruk ilintili s ürümlerinin olması gerekmediği, ancak olabileceği unutulmamalıdır.

Bir kurulum ldconfig'i yalnızca paylaşılan kitaplıkları yükseltirken değil, önyükleme sırasında çalıştırmayı seçebileceğinden, ldconfig ikilinin /sbin içinde bulunması isteğe bağlıdır. (Her önyüklemede ldconfig çalıştırmanın getirileri olup olmadığı açık değildir.) Yine de, bazıları aşağıdaki (çok yaygın) durum için ldconfig'i sever:

  1. /lib/<dosya> dosyasını demin sildim.

  2. Kütüphanenin adını bulamıyorum çünkü ls devingen olarak ilintili, yerleşik ls komutu olmayan bir kabuk kullanıyorum ve bunun yerine "echo *" kullanmayı bilmiyorum.

  3. Bende duruk sln var, ancak ilintili olanın ismini bilmiyorum.

Çeşitli:

Bazı klavyelerin kullanılamayacak kadar yüksek tekrarlama oranlarıyla başa çıkabilmek için bazı sistemlerde kbdrate /sbin içine kurulabilir.

Ctrl-Alt-Del tuş birleşimi için çekirdekteki öntanımlı eylem anında kesin bir yeniden başlatma olduğundan, genellikle kök dosya sistemini oku-yaz kipinde bağlamadan önce bu davranışın devre dışı bırakılması önerilir. Bazı init türevleri Ctrl-Alt-Del'i devre dışı bırakabilir, ancak bazıları da /sbin'e kurulabilen ctrlaltdel komutunu gerektirebilir.

6.1.7. /sys

/sys dosya sistemi, aygıtlar, sürücüler ve bazı çekirdek özellikleri hakkındaki bilgilerin açığa çıktığı konumdur. Temel yapısı, kullanılmakta olan Linux çekirdeği tarafından belirlenir, aksi takdirde belirsizdir.

6.1.8. /usr/include

Bu sembolik bağlar, bir C veya C++ derleyicisi kuruluysa ve yalnızca glibc tabanlı olmayan sistemler için gereklidir.

/usr/include/asm -> /usr/src/linux/include/asm-<mimari>
/usr/include/linux -> /usr/src/linux/include/linux

6.1.9. /usr/src

glibc'ye dayalı sistemlerde, bu dizin için özel yönergeler yoktur. glibc'den önceki Linux libc sürümlerine dayalı sistemlerde aşağıdaki yönergeler ve gerekçeler geçerlidir:

Belirli bir konuma yerleştirilmesi gereken tek kaynak kodu, Linux çekirdeği kaynak kodu olup /usr/src/linux konumunda bulunur.

Bir C veya C++ derleyici kuruluysa, ancak Linux çekirdeği kaynak kodunun tamamı kurulmamışsa, çekirdek kaynak kodundaki başlık dosyaları şu dizinlerde bulunmalıdır:

/usr/src/linux/include/asm-<mimari>
/usr/src/linux/include/linux

<mimari> sistem mimarisinin adıdır.

Bilginize

/usr/src/linux çekirdek kaynak kodu ağacına sembolik bağ olabilir.

Gerekçe

Çekirdek başlık dosyalarının /usr/include içinde değil /usr/src/linux konumunda olması önemlidir, bu nedenle sistem yöneticileri çekirdek sürümlerini ilk kez yükselttiklerinde sorun çıkmaz.

6.1.10. /var/spool/cron

Bu dizin, cron ve at komutları için değişken verileri içerir.