私はfindmnt
の出力に似ているが、マウントポイントではなくボリュームを使用して何かを見つけようとしています(例):
TARGET TYPE FSTYPE
sda
├─sda1 Primary ext4
│ └─/
├─sda2 Primary NTFS
├─sda3 Primary ext4
│ └─/boot
└─sda4 Extended
├─sda5 Logical ext4
│ └─/home
└─sda6 Logical ext4
└─/var
TYPEとFSTYPEの表示はオプションですが、ツリーレイアウトに興味があります。
lsblk
の出力は、プライマリパーティション、拡張パーティション、論理パーティションの違いを示していないため、多少不完全です。 (私はここでうるさいことを知っています):
lsblk -a
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 186.3G 0 disk
├─sda1 8:1 0 106.6G 0 part
├─sda2 8:2 0 52.8G 0 part /media/F66E431C6E42D551
├─sda3 8:3 0 1023M 0 part [SWAP]
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 953M 0 part /boot
├─sda6 8:6 0 487M 0 part [SWAP]
├─sda7 8:7 0 14G 0 part /
└─sda8 8:8 0 10.5G 0 part /home
sda4
拡張パーティションにsda5
、sda6
、sda7
、sda8
論理パーティションが含まれていることは知っています。しかし、他の誰かの出力を見ていたら、私にはわかりません。 part
とdisk
の代わりにpri
log
とext
が良い代替手段になるとしたら、少なくとも私は関係を知っています。しかし、すべてがpart
sなので...良くありません。
Sudo fdisk -l
出力:
Disk /dev/sda: 200.0 GB, 200049647616 bytes
255 heads, 63 sectors/track, 24321 cylinders, total 390721968 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1549f232
Device Boot Start End Blocks Id System
/dev/sda1 * 63 223629311 111814624+ 7 HPFS/NTFS/exFAT
/dev/sda2 225724416 336437306 55356445+ 7 HPFS/NTFS/exFAT
/dev/sda3 223629312 225724415 1047552 82 Linux swap / Solaris
/dev/sda4 336439294 390721535 27141121 5 Extended
/dev/sda5 336439296 338391039 975872 83 Linux
/dev/sda6 338393088 339390463 498688 82 Linux swap / Solaris
/dev/sda7 339392512 368687103 14647296 83 Linux
/dev/sda8 368689152 390721535 11016192 83 Linux
Partition table entries are not in disk order
必要なのがプライマリ/論理パーティションを示すlsblk
だけである場合、fdisk
と解析の組み合わせでこれを行うことができるはずです。 fdisk -l
rootとして実行すると、すべてのパーティションが一覧表示され、拡張パーティションにExt'd
:
# fdisk -l | grep dev
Disk /dev/sda: 500.1 GB, 500107862016 bytes
/dev/sda1 63 80324 40131 de Dell Utility
/dev/sda2 * 81920 30801919 15360000 7 HPFS/NTFS/exFAT
/dev/sda3 30801920 194643539 81920810 7 HPFS/NTFS/exFAT
/dev/sda4 194643601 976773119 391064759+ f W95 Ext'd (LBA)
/dev/sda5 194643603 198836504 2096451 c W95 FAT32 (LBA)
/dev/sda6 342951936 960387071 308717568 83 Linux
/dev/sda7 198840320 342949887 72054784 83 Linux
/dev/sda8 960389120 976773119 8192000 82 Linux swap / Solaris
次に、これを小さな解析と組み合わせて、必要な出力を取得できます。
$ lsblk -a | Perl -lpe 'BEGIN{open(A,"Sudo fdisk -l |");
while(<A>){next unless /Ext/;
$k{$1}++ if /^.*?(...\d)\s/; }}
@a=split(/\s+/);
$a[0]=~s/\W+//;
s/$a[5]/Extended/ if defined($k{$a[0]});'
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 39.2M 0 part
├─sda2 8:2 0 14.7G 0 part
├─sda3 8:3 0 78.1G 0 part /winblows
├─sda4 8:4 0 1K 0 Extended
├─sda5 8:5 0 2G 0 part
├─sda6 8:6 0 294.4G 0 part /home
├─sda7 8:7 0 68.7G 0 part /
└─sda8 8:8 0 7.8G 0 part [SWAP]
findmnt
は拡張パーティションをマウントしないため、拡張パーティションを表示しないので、これが最善の方法だと思います。それ以外の場合は、同じ方法で解析できます。
コマンドblkid
を使用して、これらの行に沿って何かを表示できます。
$ blkid
/dev/sda1: LABEL="SYSTEM_DRV" UUID="XXXXXX" TYPE="ntfs"
/dev/sda2: LABEL="Windows7_OS" UUID="XXXXX" TYPE="ntfs"
/dev/sda3: LABEL="Lenovo_Recovery" UUID="XXXX" TYPE="ntfs"
/dev/sda5: UUID="XXXX" TYPE="ext4"
/dev/sda6: UUID="XXXX" TYPE="LVM2_member"
/dev/mapper/vg_grinchy-lv_root: UUID="XXXX" TYPE="ext4"
/dev/mapper/vg_grinchy-lv_swap: UUID="XXXX" TYPE="swap"
/dev/mapper/vg_grinchy-lv_home: UUID="XXXX" TYPE="ext4"
上からUUIDを削除してXに置き換えました。別の出力が必要な場合は、コマンドblkid
も引数を取ることができます。
例えば:
$ blkid -o list
device fs_type label mount point UUID
----------------------------------------------------------------------------------------------------------------------------------
/dev/sda1 ntfs SYSTEM_DRV (not mounted) XXXX
/dev/sda2 ntfs Windows7_OS (not mounted) XXXX
blkid
の代替ツールはlsblk
です。次のオプションを使用して、すべてのブロックデバイスを一覧表示できます。
$ lsblk -a
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 0 loop
loop1 7:1 0 0 loop
loop2 7:2 0 0 loop
loop3 7:3 0 0 loop
loop4 7:4 0 0 loop
loop5 7:5 0 0 loop
loop6 7:6 0 0 loop
loop7 7:7 0 0 loop
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 465.3G 0 part
├─vg_totoro-lv_root (dm-0) 253:0 0 431.5G 0 lvm /
├─vg_totoro-lv_swap (dm-1) 253:1 0 13.8G 0 lvm [SWAP]
└─vg_totoro-lv_home (dm-2) 253:2 0 20G 0 lvm /home
sr0 11:0 1 1024M 0 rom
使い方を確認してください。追加のオプションが必要です。
parted
でパーティションのタイプを一覧表示できます:
$ Sudo parted /dev/sda print
Model: ATA ST3320613AS (scsi)
Dysk /dev/sda: 320GB
Rozmiar sektora (logiczny/fizyczny): 512B/512B
Tablica partycji: msdos
Numer Początek Koniec Rozmiar Typ System plików Flaga
1 1049kB 318GB 318GB primary ext4 ładowalna
2 318GB 320GB 2145MB extended
5 318GB 319GB 1074MB logical linux-swap(v1)
6 319GB 320GB 1071MB logical ext2
木はありませんが、あなたが述べたように、少なくとも関係を知ることは良いことなので、それは役立つかもしれません。 GUIを使用したい場合は、GParted
で試すことができます。