web-dev-qa-db-ja.com

lsblk partuuidが認識されないコマンド

私はUSBを使用してパーティションがどこから始まるのかを見つけようとしています

lsblk -o name,label,partuuid

次の出力が得られます。

lsblk: unknown column: partuuid

「partuuid」はUbuntuで許可されたコマンドではないと思います。この情報を見つける方法についてのアイデアはありますか?

2
CoolDude

UUIDを見つける方法は、最初に起動したいUSBのパーティションを特定することでした。

lsblk

開発ツリーが提供されたため、SDB1、SDB2、およびSDB3の概要を説明しました。これはルートファイルシステムであるため、SDB2から起動したいと思っていました。

/ dev/sdbを変数として渡す小さなスクリプトを作成しました。

#!/bin/sh
Sudo dd if=/dev/$1 bs=4 skip=110 count=1 | hexdump

PARTUUIDを間違ったエンディアン形式で提供してくれたので、交換しました。したがって、SDB2のUUIDはxxxxxxxx-02です。

2
CoolDude

目標が「partuuid」(実際にはGUID)を介してパーティションを識別することである場合、GPT fdisk(gdisksgdisk、またはcgdisk)を介してパーティション固有のGUIDを取得できます。スクリプトまたは1行のコマンドで必要な場合は、sgdiskが最適です。あなたは次のようなことをするでしょう:

$ Sudo sgdisk -i 2 /dev/sda | grep unique
Partition unique GUID: 4D72D277-2E94-4760-8B38-8A487615E2E3

この例では、パーティションの一意のGUID( "partuuid")をパーティション2(-i 2上の/dev/sda-つまり、/dev/sda2から取得します。この例では、出力をパイプ処理します。 grepは、単に関連する1行を分離するためのものです。この特定のsgdiskコマンドは、パーティションに関するさまざまなタイプの情報を含む7行の出力を返します。

GUIDを既知の値に一致させるには、すべてのパーティションをループして、出力に対してさらに処理を行う必要があります。これは/dev/disk/by-partuuid/のコンテンツを表示するようなものと比較すると厄介になる可能性がありますが、より広い目標に応じて、役立つか必要な場合があります。たとえば、partitions(ただしnotに含まれるファイルシステム)でさまざまなデータを収集しようとしている場合、sgdiskは単なるパーティションのGUID-私が言ったように、-iオプションからの7行の出力があります。

$ Sudo sgdisk -i 2 /dev/sda
Partition GUID code: 0FC63DAF-8483-4772-8E79-3D69D8477DE4 (Linux filesystem)
Partition unique GUID: 4D72D277-2E94-4760-8B38-8A487615E2E3
First sector: 1128448 (at 551.0 MiB)
Last sector: 2664447 (at 1.3 GiB)
Partition size: 1536000 sectors (750.0 MiB)
Attribute flags: 0000000000000000
Partition name: 'Unused /boot'

要約データをすべて表示する場合、またはその3行または4行だけを表示する場合は、他のソースからまとめようとするよりもsgdiskを使用した方がよい場合があります。

2
Rod Smith

PARTUUIDはUbuntu 14.04では機能しません

OP質問の下のコメントによると、Ubuntu 14.04はPARTUUIDフラグをサポートしていません。

PARTUUIDはUbuntu 16.04で動作し、USBドライブを表示します

ご覧のとおり、PARTUUIDはUbuntu 16.04で正常に動作し、USBサムドライブ/フラッシュドライブのUUIDを表示します。

$ lsblk -o NAME,FSTYPE,LABEL,PARTUUID,MOUNTPOINT,SIZE,MODEL
NAME        FSTYPE LABEL            PARTUUID                             MOUNTPOINT   SIZE MODEL
sdb                                                                                   7.6G USB Flash Disk  
└─sdb1      vfat   LIVE_USB         bb958812-01                          /media/ric   7.6G 
sda                                                                                 931.5G HGST HTS721010A9
├─sda4      ntfs   WINRETOOLS       c8cd5c7e-48fc-4aac-8c57-abcf6819b3ce              450M 
├─sda2                              0e4d96d3-5164-4d2f-9786-5e7b5066034e              128M 
├─sda5      ntfs   Image            b929ccc6-7ceb-4c50-a14c-8e41bf9d401f             11.4G 
├─sda3      ntfs   HGST_Win10       8778bdd3-e557-4f16-8fd6-9d44dcfe0c0a /mnt/d       919G 
└─sda1      vfat   ESP              edde67a5-6d32-425b-8e4e-6343b3e3f6f1              500M 
nvme0n1                                                                               477G Samsung SSD 960 PRO
├─nvme0n1p5 ext4   NVMe_Ubuntu_16.0 f1f35cf5-1b79-4d43-84e3-9b10ea3f9e3c /           44.6G 
├─nvme0n1p3                         6471dce0-3ba5-49b9-bd13-667ad8f72b10               16M 
├─nvme0n1p1 ntfs                    f5872f63-c0c7-4136-b65d-b89becdfc138              450M 
├─nvme0n1p6 swap   Linux Swap       4aeb7d53-7ad5-41b2-99f3-cae583bca6b7 [SWAP]       7.9G 
├─nvme0n1p4 ntfs   NVMe_Win10       f354f364-9819-4209-955a-297505eebfd0 /mnt/c     414.9G 
├─nvme0n1p2 vfat                    5a989e57-3bb3-4821-907f-5822bb14a635 /boot/efi     99M 
└─nvme0n1p7 ntfs   Shared_WSL+Linux 1ca41115-5e65-4ade-8825-b9a2807ae51c /mnt/e         9G 
1

マニュアルページから(ターミナルタイプman lsblk):

-o、--output listどの出力列を印刷するかを指定します。 --helpを使用して、サポートされているすべての列のリストを取得します。

したがって、lsblk --helpは、とりわけ、サポートされているコラムのリストを提供する必要があります。

パーティションuuidをリストするには、blkidの代わりにlsblkコマンドを使用します。

現在、Ubuntuマシンで確認するために来ていませんが、試してみてください。

0
Soren A

UUID and PARTUUIDを表示するには、lsを使用します。

  • ls -l /dev/disk/by-partuuid/は、すべてのパーティションのpartuuidを表示します

  • ls -l /dev/disk/by-partuuid/は、すべてのパーティションのuuidを表示します


UUIDの正しいラベルは単なるuuidなので、コマンドの「partuuid」を「uuid」に置き換えます。

lsblk -o name,label,uuid

UUIDを読み取るには、おそらくSudoも必要になるでしょう。


しかし、実際にSBのパーティションがどこから始まるのかを調べようとしている場合おそらく、fdiskcfdiskparted、またはおそらく最適なgpartedのような他の何かを使用したいでしょう。

0
Xen2050