LoginSignup
4

More than 3 years have passed since last update.

xfs_adminコマンドの使い方

Last updated at Posted at 2019-05-14

1 xfs_admin コマンドとは?

XFSファイルシステムのパラメータを変更するコマンドです。

2 検証環境

VMware Workstation 14 Player上の仮想マシンを使いました。
仮想マシンは、「最小限のインストール」->「開発ツール」を選択して作成しました。

OS版数
[root@server ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

[root@server ~]# uname -r
3.10.0-693.el7.x86_64
コマンド版数
[root@server ~]# xfs_admin -V
xfs_admin version 4.5.0

3 オプション一覧

[root@server ~]# xfs_admin
Usage: xfs_admin [-efjlpuV] [-c 0|1] [-L label] [-U uuid] device

4 事前準備(テスト用のXFSファイルシステム作成)

ループデバイスに使用するファイルを作成します。
ここでは1Gのファイルを作成してみます。
fallocateコマンドの使い方は、ここ(すぐ忘れてしまう、仕事で使う技)を参照してください。

ファイルの作成
[root@server ~]# fallocate -l 1G disk.img

作成したファイルを確認します。

ファイルの確認
[root@server ~]# ls -l disk.img
-rw-r--r--. 1 root root 1073741824  5月 14 18:04 disk.img

作成したファイルをループデバイスとして登録します。
losetupコマンドの使い方は、ここ(losetupコマンドの使い方)を参照してください。

ループデバイスの作成
[root@server ~]# losetup -f /root/disk.img
[root@server ~]# lsblk -fip
NAME        FSTYPE  LABEL           UUID                                 MOUNTPOINT
/dev/sda
|-/dev/sda1 xfs                     7bd0c5ce-21ab-4964-871d-61d04a09cc8c /boot
|-/dev/sda2 swap                    708d5fef-16c1-4e0b-86ae-06e09153b155 [SWAP]
`-/dev/sda3 xfs                     a4951ce9-0d6e-4550-9460-dfbae7ea82c7 /
/dev/sr0    iso9660 CentOS 7 x86_64 2017-09-06-10-51-00-00
/dev/loop0

ループデバイスにxfsファイルシステムを作成します。

ファイルシステム作成
[root@server ~]# mkfs.xfs /dev/loop0
meta-data=/dev/loop0             isize=512    agcount=4, agsize=65536 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

ループデバイスの状態を確認してみます。
xfsファイルシステムが作成されていることがわかります。
ラベルには何も設定されていません。
UUIDには61346701-c369-407a-8b39-eb6cc68ce311が設定されていることがわかります。
また、マウントされていないことがわかります。

デバイスの確認
[root@server ~]# lsblk -fip
NAME        FSTYPE  LABEL           UUID                                 MOUNTPOINT
/dev/sda
|-/dev/sda1 xfs                     7bd0c5ce-21ab-4964-871d-61d04a09cc8c /boot
|-/dev/sda2 swap                    708d5fef-16c1-4e0b-86ae-06e09153b155 [SWAP]
`-/dev/sda3 xfs                     a4951ce9-0d6e-4550-9460-dfbae7ea82c7 /
/dev/sr0    iso9660 CentOS 7 x86_64 2017-09-06-10-51-00-00
/dev/loop0  xfs                     61346701-c369-407a-8b39-eb6cc68ce311

5 ファイルシステムのUUIDを表示/設定する方法

5.1 UUIDの表示方法(-u)

UUIDを表示してみます。

UUIDの表示
[root@server ~]# xfs_admin -u /dev/loop0
UUID = 61346701-c369-407a-8b39-eb6cc68ce311

5.2 UUIDの設定方法(-U)

uuidgenを使って、UUIDを作成します。

UUIDの作成
[root@server ~]# uuidgen
a91baacc-4452-438f-bf90-2dd482780d1d

新たに作成したUUIDをxfsファイルシステムに設定してみます。

UUIDの設定
[root@server ~]# xfs_admin -U a91baacc-4452-438f-bf90-2dd482780d1d /dev/loop0
Clearing log and setting UUID
writing all SBs
new UUID = a91baacc-4452-438f-bf90-2dd482780d1d

UUIDを確認してみます。新しいUUIDが設定されていることがわかります。

UUIDの表示
[root@server ~]# xfs_admin -u /dev/loop0
UUID = a91baacc-4452-438f-bf90-2dd482780d1d

5.3 UUIDをクリアする方法

UUIDの設定
[root@server ~]# xfs_admin -U nil /dev/loop0
Clearing log and setting UUID
writing all SBs
new UUID = 00000000-0000-0000-0000-000000000000
UUIDの表示
[root@server ~]# xfs_admin -u /dev/loop0
UUID = 00000000-0000-0000-0000-000000000000

5.4 その他

以下のようにして、UUIDを設定することもできます。

UUIDの設定
[root@server ~]# xfs_admin -U `uuidgen` /dev/loop0
Clearing log and setting UUID
writing all SBs
new UUID = bbd2ddd3-dee3-4b7d-a8fb-d6b92542a937
UUIDの表示
[root@server ~]# xfs_admin -u /dev/loop0
UUID = bbd2ddd3-dee3-4b7d-a8fb-d6b92542a937

6 ファイルシステムのラベルを表示/設定する方法

6.1 ラベルの表示方法(-l)

ラベルを表示してみます。何も設定されていないことがわかります。

ラベルの表示
[root@server ~]# xfs_admin -l /dev/loop0
label = ""

6.2 ラベルの設定方法(-L)

ラベルをxfsファイルシステムに設定してみます。
ラベルは12文字までの制限があるようです。

ラベルの設定
[root@server ~]# xfs_admin -L new-label /dev/loop0
writing all SBs
new label = "new-label"
ラベルの表示
[root@server ~]# xfs_admin -l /dev/loop0
label = "new-label"

Z 参考情報

【 xfs_admin 】コマンド――XFSファイルシステムのパラメータを変更する
How to use “xfs_admin” command to change parameters of an XFS filesystem
xfs_admin command examples
RHEL: XFS basic operations
Linux教科書 LPICレベル2 Version 4.5対応

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4