UbuntuをSSDにインストールしたと思いますが、よくわかりません。これを確認したいと思います。しかし、私は方法がわかりませんか?
UbuntuをSSDにインストールしたと思いますが、よくわかりません。これを確認したいと思います。しかし、私は方法がわかりませんか?
回答:
おい、私のルートはどこ?
まず最初に、ルートファイルシステムがどのディスクにあるかを知る必要があります(言い換えれば、Ubuntuを収容しているデバイスdf
。
$ df / -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 110G 58G 48G 55% /
すばらしいです !Ubuntuが/dev/sda
サイズ110 GBのディスクに配置されていることがわかりました(他の10 GBは他の用途に使用されます)。情報が足りない?OK、これはどうですか:
$ sudo lshw -short -C disk
[sudo] password for xieerqi:
H/W path Device Class Description
======================================================
/0/1/0.0.0 /dev/sda disk 120GB Radeon R7
/0/2/0.0.0 /dev/sdb disk 500GB TOSHIBA MQ01ABF0
ああ、Radeon R7!それが私のSSDです!ちょっと待って 。。。
同じサイズで同じメーカーの2つのディスクがある場合はどうなりますか?
まあ、ディスクにはこの非常に興味深い情報があります-どれくらい速く回転するか、そして私たちが知っているようにSSDディスクは回転しません。
$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'
[sudo] password for xieerqi:
Rotation Rate: Solid State Device
よろしいですか?
余談:smartmontools
使用するためにインストールする必要があるかもしれないsmartctl
コマンドを。
詳細については、UnixおよびLinuxスタック交換サイトのこの投稿を参照してください。
ここで説明するように、もう1つの方法があります。各ドライブには/sys/class/block/
、ディレクトリ内に対応するディレクトリがあります。
cat /sys/class/block/DEVICE_NAME/queue/rotational
ハードドライブの場合は1、ssdの場合は0を取得します。このアプローチは、スクリプトでの使用に非常に便利です
実際、それは明らかに以下をlsblk
使用するアプローチと同じです:
$ lsblk -o NAME,ROTA
NAME ROTA
sda 0
└─sda1 0
sdb 1
├─sdb1 1
├─sdb2 1
├─sdb3 1
├─sdb4 1
├─sdb5 1
└─sdb6 1
OSがSSDにインストールされているかどうかを確認する簡単な方法は、というターミナルウィンドウからコマンドを実行することlsblk -o name,rota
です。ROTA
出力の列を見ると、そこに数字が表示されます。A 0
は、回転速度またはSSDドライブがないことを意味します。A 1
は、回転するプラッターを備えたドライブを示します。私の/dev/sdb
ドライブにUbuntuがインストールされているため0
、SSDドライブにインストールされていることを意味することがわかります。この例を使用して、OSを使用してOSがインストールされてdf
いる場所を確認します。
注:ループまたはVMでクライアントとしてインストールされたUbuntuは、ホストOSのインストールに関係なくROTA 1を表示します。また、「ソリッドステートハイブリッドドライブ」とUSBフラッシュドライブにもROTA 1が表示されます。
例:
terrance@terrance-ubuntu:~$ lsblk -o name,rota
NAME ROTA
sda 1
└─sda1 1
sdb 0
├─sdb1 0
├─sdb2 0
└─sdb5 0
sdc 1
└─sdc1 1
sdd 1
└─sdd1 1
sde 0
├─sde1 0
└─sde2 0
sdf 1
└─sdf1 1
sdg 1
└─sdg1 1
sdh 1
└─sdh1 1
sr0 1
sr1 1
または、-d
パーティションを表示しないために使用する1つのライナースクリプトとしてチェックを実行できます。
lsblk -d -o name,rota | awk 'NR>1' | while read CC; do dd=$(echo $CC | awk '{print $2}'); if [ ${dd} -eq 0 ]; then echo $(echo $CC | awk '{print $1}') is a SSD drive; fi; done
例:
terrance@terrance-ubuntu:~$ lsblk -d -o name,rota | awk 'NR>1' | while read CC; do dd=$(echo $CC | awk '{print $2}'); if [ ${dd} -eq 0 ]; then echo $(echo $CC | awk '{print $1}') is a SSD drive; fi; done
sdb is a SSD drive
sde is a SSD drive
インストールされているドライブを確認するにはdf /
、ターミナルウィンドウからコマンドを実行します。
注: LVM(論理ボリューム管理)で構成されたドライブは、実際にはドライブをの/boot
代わりに表示し/
ます。
例:
LVMドライブ:
df /
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/xubuntu--vg-root 243352964 106945028 123976576 47% /
df /boot
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 720368 237220 430756 36% /boot
非LVMドライブ:
df /
/dev/sdb1 222309012 38264268 172728984 19% /
更新: lsblk
また、OSがインストールされている場所と、ドライブがSSDであるかどうかを1つのコマンドで表示するためにも使用できます。
lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
例:
terrance@terrance-ubuntu:~$ lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
NAME MOUNTPOINT MODEL ROTA
sda Backup+ Desk 1
└─sda1 /media/Seagate 1
sdb WDC WD2500JD-00K 1
└─sdb1 /media/250GB_SHARE 1
sdc WDC WD5000AAKS-4 1
└─sdc1 /media/500GB 1
sdd ST500DM002-1BC14 1
└─sdd1 /media/320GB 1
sde SanDisk SDSSDA24 0
├─sde1 / 0
├─sde2 0
└─sde5 [SWAP] 0
sdf WDC WD5000AAKX-2 1
└─sdf1 /media/WD500GB 1
sdg WDC WD10EZEX-00W 1
└─sdg1 /media/1TB_SHARE 1
sdh SanDisk SDSSDA24 0
├─sdh1 0
└─sdh2 /media/Windows 0
sr0 BD-RE BH16NS40 1
sr1 DVD-RAM GH40L 1
これはシステムの再起動後なので、ドライブの指定が再び変更されましたが、ご覧のとおり、SanDiskドライブはSSDであり、ROTAは0を示しています。
お役に立てれば!
lsblock
は、私の光学ドライブです。
結局のところ、あなたの質問はUbuntuの質問ではありません。HDのサイズに比べて、フラッシュストレージの容量が小さいハードドライブがあります。これはドライブによって自動的に管理され、より頻繁にアクセスされるファイルをHD部分ではなくFlash部分に配置しようとします。私の知る限り、どのファイルがどの部分にあるかを制御したり、伝える方法はありません。Ubuntuを定期的に使用する場合、すべての重要なファイルはドライブのフラッシュ部分に配置されるはずですが、それで終わりです。