既知の特定のパーティション名の後にblkid
特定のパーティション名を実行してコピーする必要があります。UUID
次に、既存の設定ファイルに貼り付けて、UUID
()にすでに存在する設定ファイルを置き換える必要がありますparent_device_uuid
。以下の構成例。
初心者が理解できる方法でこれを行う方法を示すことができる人はいますか?
{
"backup_device_uuid" : "cdb09919-39d4-4a17-9fc4-6daa1d38f1e1",
"parent_device_uuid" : "IOe7Qc-fjAK-2ydl-OMk4-SvVu-1P6Y-PJSHzV",
"do_first_run" : "false",
"btrfs_mode" : "false",
"include_btrfs_home_for_backup" : "false",
"include_btrfs_home_for_restore" : "false",
"stop_cron_emails" : "true",
"btrfs_use_qgroup" : "true",
"schedule_monthly" : "true",
"schedule_weekly" : "true",
"schedule_daily" : "true",
"schedule_hourly" : "true",
"schedule_boot" : "true",
"count_monthly" : "1",
"count_weekly" : "2",
"count_daily" : "3",
"count_hourly" : "3",
"count_boot" : "1",
"snapshot_size" : "15837901165",
"snapshot_count" : "292512",
"date_format" : "%Y-%m-%d %H:%M:%S",
"exclude" : [
"/home/test/**",
"/home/test2/**",
"/root/**"
],
"exclude-apps" : []
}
答え1
ファイルを操作している場合は、json
このコマンドを使用できますjq
。
得るためにただ一部のパーティションでは、UUID
次のコマンドを使用できます。
タグ名でblkidを使用する
blkid -s UUID -o value -t 'LABEL=your_label_name'
#If you got: 'command not found' then you can use:
sudo blkid -s UUID -o value -t 'LABEL=your_label_name'
#or
/sbin/blkid -s UUID -o value -t 'LABEL=your_label_name'
your_label_name
希望するデバイスの名前はどこにありますか?
からblkid --help
:
-s
指定されたラベル(この場合はUUID)を表示します。-o
出力形式です(この場合はUUIDタグ値が必要です)。
lsblkを使用する(ラベル名を使用しない)
lsblk /dev/nvme0n1p1 -o UUID -n
からlsblk --help
:
-o
出力列(この場合はUUID列のみが必要です)-n
タイトルを印刷しないでください
解決策
最後に、上記のコマンドのいずれかを使用して取得したUUIDに置き換えるjq
ことができます。parent_device_uuid
jq --arg puuid "$(blkid -s UUID -o value -t 'LABEL=your_label_name')" '.parent_device_uuid = $puuid' < configfile > tmpconfig
mv tmpconfig configfile
mv
または、それを使用する場合(ファイルの移動、名前の変更など)権限がない場合は、次を使用します。
sudo mv tmpconfig configfile
~について構成ファイル、次を含むファイルです。
{
"backup_device_uuid" : "cdb09919-39d4-4a17-9fc4-6daa1d38f1e1",
"parent_device_uuid" : "IOe7Qc-fjAK-2ydl-OMk4-SvVu-1P6Y-PJSHzV",
"do_first_run" : "false",
"btrfs_mode" : "false",
"include_btrfs_home_for_backup" : "false",
"include_btrfs_home_for_restore" : "false",
"stop_cron_emails" : "true",
"btrfs_use_qgroup" : "true",
"schedule_monthly" : "true",
"schedule_weekly" : "true",
"schedule_daily" : "true",
"schedule_hourly" : "true",
"schedule_boot" : "true",
"count_monthly" : "1",
"count_weekly" : "2",
"count_daily" : "3",
"count_hourly" : "3",
"count_boot" : "1",
"snapshot_size" : "15837901165",
"snapshot_count" : "292512",
"date_format" : "%Y-%m-%d %H:%M:%S",
"exclude" : [
"/home/test/**",
"/home/test2/**",
"/root/**"
],
"exclude-apps" : []
}
パラメータ情報jq
:デバイスの値を変数に割り当てる--arg puuid "$(blkid -s UUID -o value -t 'LABEL=your_label_name')"
ために使用されます。 puuidを変更してください(これはデバイスのUUIDです)UUID
puuid
'.parent_device_uuid = $puuid'
"parent_device_uuid" : "IOe7Qc-fjAK-2ydl-OMk4-SvVu-1P6Y-PJSHzV" to what