lsblk komutu: disk ve bölüm yapısı ile UUID kontrolü
lsblk komutu, bir sunucuya bağlı diskleri, bölümleri ve bağlama noktalarını ağaç yapısında gösterir; disk boyutunu, dosya sistemi türünü ve hatta UUID'yi tek seferde görmenizi sağlar. Bir AlmaLinux 9 sunucusunda lsblk çalıştırdığımızda snap paketlerinin oluşturduğu loop aygıtları diskten önce listelendi, bu yüzden onları -e 7 ile ayıkladık. Ardından -f ile kök bölümün xfs dosya sistemini ve UUID'sini kontrol ettik.
Aşağıdaki çıktıdaki disk boyutları ve UUID'ler örnek değerlerdir.
1️⃣ lsblk komutunun temel çıktısını okuma
Programların snap ile kurulduğu bir sunucuda lsblk seçeneksiz çalıştırılırsa her paket sürümü için bağlanmış loop aygıtları diskten önce sıra sıra listelenir. Bu yüzden loop aygıtlarının aygıt numarası olan 7, -e ile belirtilip dışarıda bırakılır.
lsblk -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 80G 0 disk
├─nvme0n1p1 259:1 0 1M 0 part
├─nvme0n1p2 259:2 0 200M 0 part /boot/efi
├─nvme0n1p3 259:3 0 1G 0 part /boot
└─nvme0n1p4 259:4 0 78.8G 0 part /NAME sütunundaki nvme0n1 disktir. Altında [├─] ve [└─] ile bağlanan nvme0n1p1'den nvme0n1p4'e kadarki satırlar, bu diski bölen bölümlerdir. Bir binanın girişindeki kat panosunda, bina adının altında her katta ne olduğunun yazılı olması gibidir.
TYPE sütununda diskler [disk], bölümler [part] olarak görünür; MOUNTPOINTS sütunu ise o bölümün bağlandığı klasörü gösterir. Kontrol ettiğimiz sunucuda kök bölüm nvme0n1p4 / dizinine, nvme0n1p3 ise /boot dizinine bağlıydı. 1M boyutundaki nvme0n1p1, GPT disk üzerinden önyükleme için kullanılan bir BIOS önyükleme bölümü olduğundan bağlama noktası yoktur.
MAJ:MIN, çekirdeğin aygıta verdiği ana ve alt numaralardır; loop aygıtlarında 7'dir, kontrol ettiğimiz NVMe diskte ise 259'du. RM aygıtın çıkarılabilir olup olmadığını, RO ise salt okunur olup olmadığını 1 ve 0 ile gösterir.
SIZE kolayca boş alan sanılabilir, ancak SIZE diskin veya bölümün toplam boyutudur. Dosya sisteminin boş alanı, -f eklendiğinde görünen FSAVAIL sütununda kontrol edilir.
Seçeneğe göre çıktıdaki satırların ve sütunların nasıl değiştiğini aşağıdaki diyagramda adım adım karşılaştırabilirsiniz.
2️⃣ lsblk -f ile dosya sistemi ve UUID kontrolü
Temel çıktıda dosya sistemi türü görünmediği için bir bölümün hangi biçimde biçimlendirildiği -f ile kontrol edilir. -f şu sekiz sütunu gösterir: NAME, FSTYPE, FSVER, LABEL, UUID, FSAVAIL, FSUSE% ve MOUNTPOINTS.
lsblk -f -e 7NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1
├─nvme0n1p2 vfat FAT16 5A1E-3B7C 192.1M 4% /boot/efi
├─nvme0n1p3 xfs 6d2f0c4e-8b1a-4f3d-a7e2-9c5b1d0e4f28 691.4M 28% /boot
└─nvme0n1p4 xfs 2b9e7f41-c3d6-4a85-b0f1-7e4a2c9d6b13 68.5G 13% /Çalıştırdığımızda kök ve /boot bölümleri xfs, /boot/efi ise FAT16 sürümünde vfat çıktı. nvme0n1 diski ile nvme0n1p1'de dosya sistemi olmadığından boş kaldılar. UUID, her dosya sistemine verilen benzersiz bir numaradır; /etc/fstab dosyasında bağlanacak bölümü aygıt adı yerine UUID ile belirtirken kullanılır.
Dosya sistemi bilgisini en doğru şekilde kontrol etmek için blkid komutu kullanılır.
FSAVAIL ve FSUSE%, bağlı bir dosya sisteminin boş alanı ve kullanım oranıdır. Bağlı olmayan bölümlerde değer görünmez. df komutu yalnızca bağlı dosya sistemlerinin boyutunu ve kullanımını gösterir. lsblk ise bağlı olup olmamalarından bağımsız olarak disk ve bölüm yapısını da gösterir.
3️⃣ lsblk -o ile sütun seçimi ve -b ile bayt birimi
-o'dan sonra sütun adlarını virgülle ayırarak yazarsanız yalnızca o sütunlar o sırayla görünür. Kullanılabilecek sütun adları [lsblk --help] çıktısının sonundaki listede yer alır.
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT -e 7NAME SIZE FSTYPE MOUNTPOINT
nvme0n1 80G
├─nvme0n1p1 1M
├─nvme0n1p2 200M vfat /boot/efi
├─nvme0n1p3 1G xfs /boot
└─nvme0n1p4 78.8G xfs /MOUNTPOINT yalnızca tek bir bağlama noktasını, MOUNTPOINTS ise aynı dosya sistemi birden fazla yere bağlıysa hepsini gösterir. Temel sütunların arkasına yalnızca bir sütun eklemek için [-o +UUID] örneğindeki gibi sütun adının önüne + koyun.
-b, boyutları bayt cinsinden tam sayı olarak gösterir. Gözle karşılaştırırken temel birimler daha kolay okunur; bu yüzden -b, boyut hesaplayan veya karşılaştıran betiklere uygundur.
lsblk -b -o NAME,SIZE -e 7NAME SIZE
nvme0n1 85899345920
├─nvme0n1p1 1048576
├─nvme0n1p2 209715200
├─nvme0n1p3 1073741824
└─nvme0n1p4 84613774848Temel çıktıdaki G ve M 1.024'lük birimlerdir; bu yüzden 80G'lik disk 85.899.345.920 bayt olarak görünür.
4️⃣ lsblk -d ile disk listesi ve -p ile tam yol
Birden fazla diski olan bir sunucuda bölüm satırları araya karışıp disk listesini okumayı zorlaştırır; bu yüzden -d ile bölümler çıkarılıp yalnızca disk satırları gösterilir.
lsblk -d -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 80G 0 disk Çıktıda yalnızca nvme0n1 diskinin tek satırı kaldı, altındaki dört bölüm satırı görünmedi.
-p eklenince aygıt adlarının önüne /dev/ gelir ve tam yol olarak görünür. Bu yolları mount gibi başka komutlara doğrudan verebilirsiniz.
lsblk -p -e 7NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
/dev/nvme0n1 259:0 0 80G 0 disk
├─/dev/nvme0n1p1 259:1 0 1M 0 part
├─/dev/nvme0n1p2 259:2 0 200M 0 part /boot/efi
├─/dev/nvme0n1p3 259:3 0 1G 0 part /boot
└─/dev/nvme0n1p4 259:4 0 78.8G 0 part /Yalnızca NAME sütunu /dev/nvme0n1'den /dev/nvme0n1p4'e kadar tam yola dönüşür; diğer sütunlar temel çıktıyla aynıdır.
Bağımsız değişken olarak bir aygıt yolu verirseniz yalnızca o aygıt ve altındaki bölümler gösterilir; bir bölüm yolu verirseniz yalnızca o bölümün satırı görünür.
lsblk /dev/nvme0n1p4NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1p4 259:4 0 78.8G 0 part /Çıktıda yalnızca nvme0n1p4'ün tek satırı görünür, disk satırı ve dal işaretleri eklenmez. Var olmayan bir aygıt yolu verdiğimizde [not a block device] hatası çıktı ve çıkış kodu 32 oldu.
5️⃣ lsblk komutunun betikler için çıktısı ve seçenekleri
Temel çıktıyı betiklerde kesip kullanmak cazip gelebilir, ancak temel çıktının ve -f'nin sütun düzeni ileride değişebilir; bu yüzden betiklerde sütunlar -o ile doğrudan belirtilir.
-n başlık satırını çıkarıp yalnızca değerleri gösterir; bu yüzden tek bir bölümün dosya sistemi türü gibi yalnızca bir değere ihtiyaç duyduğunuzda uygundur.
lsblk -no FSTYPE /dev/nvme0n1p4xfsBaşlık satırı olmadan yalnızca kök bölümün dosya sistemi türü olan xfs kelimesi görünür; böylece doğrudan bir kabuk değişkenine atayabilirsiniz.
-P her sütunu [ad=”değer”] biçiminde tek satırda gösterir. AlmaLinux 9'daki util-linux 2.37 sürümünde yalnızca -P eklemek bile adları kabuk değişkeni olarak kolay okunacak şekilde değiştirir; örneğin MAJ:MIN, MAJ_MIN ve FSUSE%, FSUSE_PCT olur.
lsblk -P -o NAME,FSTYPE,MOUNTPOINT /dev/nvme0n1p4NAME="nvme0n1p4" FSTYPE="xfs" MOUNTPOINT="/"Belirtilen üç sütun NAME, FSTYPE, MOUNTPOINT sırasıyla tek satırda görünür. Tüm değerler çift tırnak içindedir.
-J çıktıyı JSON olarak verir. -d olmadan bölümler diskin altındaki children dizisine girer. -b ile birlikte kullanılırsa yalnızca size sayıya dönüşür, FSAVAIL gibi diğer boyut sütunları dize olarak kalır.
lsblk -J -d -o NAME,SIZE,TYPE -e 7{
"blockdevices": [
{
"name": "nvme0n1",
"size": "80G",
"type": "disk"
}
]
}-d eklenince blockdevices dizisinde yalnızca disk yer alır ve children dizisi görünmez.
🔲 lsblk komutu seçenekleri
| Seçenek | Kopyala | Açıklama |
|---|---|---|
| -e, --exclude | Belirtilen ana numaralı aygıtları dışarıda bırakır. 7 belirtilirse loop aygıtları çıkarılır. | |
| -f, --fs | Dosya sistemi türünü, UUID'yi, boş alanı ve kullanım oranını gösterir. | |
| -o, --output | Yalnızca virgülle belirtilen sütunları sırayla gösterir. | |
| -b, --bytes | SIZE sütununu bayt cinsinden tam sayı olarak gösterir. | |
| -d, --nodeps | Bölüm satırlarını çıkarıp yalnızca disk satırlarını gösterir. | |
| -p, --paths | Aygıt adlarını /dev/ ile başlayan tam yol olarak gösterir. | |
| -n, --noheadings | Başlık satırını çıkarıp yalnızca değerleri gösterir. | |
| -P, --pairs | Sütun adlarını ve değerlerini çiftler hâlinde tek satırda gösterir. | |
| -J, --json | Çıktıyı JSON biçiminde verir. | |
| -a, --all | Boyutu 0 olan boş aygıtları da gösterir. |
| Seçenek | Kopyala | Açıklama |
|---|---|---|
| -I, --include | Yalnızca belirtilen ana numaralı aygıtları gösterir. | |
| -l, --list | Çıktıyı ağaç yerine liste biçiminde verir. | |
| -r, --raw | Çıktıyı sütunları hizalamadan raw biçiminde verir. | |
| -i, --ascii | Ağaç çizgilerini ASCII karakterlerle gösterir. | |
| -s, --inverse | Bağımlılıkları tersine çevirip diskleri bölümlerin altında gösterir. | |
| -S, --scsi | Yalnızca SCSI aygıt bilgilerini gösterir. | |
| -t, --topology | Sektör boyutu ve G/Ç zamanlayıcısı gibi topoloji bilgilerini gösterir. | |
| -m, --perms | Aygıtların sahibini, grubunu ve izinlerini gösterir. | |
| -x, --sort | Belirtilen sütuna göre sıralayıp liste biçiminde gösterir. | |
| -O, --output-all | Kullanılabilen tüm sütunları gösterir. |
🔲 lsblk komutu simülatörü
Aşağıdaki simülatörde şimdiye kadarki komutları kendiniz yazarak çıktının seçeneğe göre nasıl değiştiğini görebilirsiniz.
🔢 SSS & önerilen içerikler
Linux · Takas
Takas belleği (Swap Memory) ayarı
mkswap ve swapon komutlarıyla takas belleğini bölüm ve dosya yöntemiyle oluşturma yolu.
Linux · Disk
Linux dd komutu
Diskleri ve bölümleri kopyalamak ya da imaj dosyası oluşturmak için kullanılan dd komutunun temel kullanımı, seçenekleri ve kullanım örnekleri.
Disk · Kavram
Disk sektörü nedir?
Sabit diskin temel yapısını ve depolama ortamını belirli boyutlarda bölen disk sektörünün ne olduğunu açıklar.
ℹ️ Satış ortaklığı bildirimi
Bu sitenin içeriklerinde satış ortaklığı bağlantıları bulunur. Bir ziyaretçi bu bağlantılar üzerinden ürün veya hizmet satın alırsa bu site satıcıdan komisyon alır. Bu süreçte alıcının ödediği tutar (kampanya indirimlerinde tutar düşer↓) artmaz. Yayımlanan fiyat, indirim ve stok bilgileri yazının yazıldığı zamana aittir ve gerçek durumdan farklı olabilir; bu yüzden satın almadan önce son bilgiyi satıcıdan kontrol etmenizi rica ederiz. Ürünler kendi ölçütlerimize göre seçilir ve değerlendirilir; komisyon alınıp alınmaması tanıtım sırasını veya değerlendirme içeriğini etkilemez.