Как проверить, установлен ли мой Ubuntu на SSD?

26

Я думаю, что установил Ubuntu на SSD, но я не уверен, и я хочу проверить это. Но я не знаю, как?

лунный свет
источник
2
Ну есть ли у вас что-нибудь кроме SSD?
Странник
У меня в моей конфигурации остается 500 ГБ HD ST500LM000-SSHD-8 ГБ (LVD4)
лунный свет
4
ЗАКРЫТЬ ИЗБИРАТЕЛЕЙ: Вопрос не по теме . Он четко задает конкретный вопрос, связанный с ОС Ubuntu, и может быть решен с помощью инструментов Ubuntu. Либо отведите свои голоса, либо укажите вескую причину, по которой вы считаете, что ваш голос правильный
Сергей Колодяжный

Ответы:

40

Чувак, где мой корень?

Прежде всего, нам нужно знать, на каком диске находится ваша корневая файловая система (другими словами, на каком устройстве находится ваша Ubuntu. Один из способов - с помощью df.

$ df / -h                                                                       
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       110G   58G   48G  55% /

Большой ! Теперь я знаю, что моя Ubuntu размещена на /dev/sdaдиске размером 110 ГБ (остальные 10 ГБ используются для чего-то другого). Недостаточно информации? Хорошо, как насчет этого:

$ 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! Но ждать . , ,

Что делать, если у вас два диска одинакового размера и одного производителя?

Ну, диски содержат очень интересную информацию - как быстро они вращаются, и, как мы знаем, диски SSD не вращаются .

$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'                              
[sudo] password for xieerqi: 
Rotation Rate:    Solid State Device

Выглядит примерно так?

Побочное примечание:smartmontools , возможно , потребуется установить, чтобы использовать smartctlкоманду.

Для получения дополнительной информации, прочитайте этот пост на Unix и Linux stackexchange site

Дополнительное обновление:

Есть еще один метод, как описано здесь . Каждый диск имеет соответствующий каталог в /sys/class/block/каталоге, и, делая

cat /sys/class/block/DEVICE_NAME/queue/rotational

Вы получите либо 1 для жесткого диска или 0 для SSD. Этот подход очень удобен для использования в скриптах

На самом деле, это тот же подход, который 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
Сергей Колодяжный
источник
@ Серж, подожди, это странно. Разве Radeon R7 не является графическим процессором?
короткая теория
@shortstheory Мне часто задают этот вопрос, но это действительно SSD. Если хотите, я могу предоставить ссылки на амазонки и фотографии моего диска, если хотите :)
Сергей Колодяжный
Я думаю, что это работает, до определенного момента ... Что, если раздел, например, зашифрован? Ваш вызов "df" приведет к чему-то вроде / dev / dm-1 463867688 405671304 34610184 93% / что на самом деле не помогает: - / Все еще голосуете, поскольку я думаю, что вы прибиваете наиболее распространенные случаи.
Маленькая Джава
@LittleJawa хорошо, что касается зашифрованных разделов, я бы с удовольствием рассмотрел этот случай, но я никогда не имел дело с одним, поэтому я бы не знал. Это хороший момент, и я надеюсь, что кто-нибудь все-таки пройдет через это. Я предполагаю, что, хотя файл устройства назван по-разному, идея остается той же, но, как я уже сказал - я не квалифицирован в отношении зашифрованных файлов
Сергей Колодяжный
Общая идея была бы такой же. У вас были бы дополнительные шаги, чтобы определить, откуда взялся зашифрованный раздел. Это будет зависеть от того, какой инструмент шифрования вы используете - с LUKS я бы позаботился об утилите «cryptsetup», чтобы выяснить, что ... в любом случае - владелец вопроса выбрал ваш ответ как правильный, так что я предполагаю, что это закрывает тему: ) Если / когда у нас возникнет тот же вопрос, связанный с зашифрованным разделом, мы рассмотрим его :-p
Маленькая Джава,
19

Простой способ определить, установлена ​​ли ваша ОС на SSD или нет, - запустить команду из окна терминала с именем lsblk -o name,rota. Посмотрите на ROTAстолбец вывода и там вы увидите цифры. А 0означает отсутствие скорости вращения или привода SSD. A 1указывает на диск с вращающимися пластинами. Моя Ubuntu установлена ​​на моем /dev/sdbдиске, поэтому мы видим, что один указывает на, 0что означает, что он установлен на SSD-диске. Я привел после этого примера, как сказать, где установлена ​​ваша ОС с помощью df.

ПРИМЕЧАНИЕ. Ubuntu, установленный в качестве клиента в цикле или на виртуальных машинах, будет отображать 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чтобы не показывать разделы:

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 Drive:

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 также может использоваться, чтобы показать, где установлена ​​ОС и если диск SSD все в одной команде:

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 являются твердотельными накопителями, а ROTA показывает 0.


Надеюсь это поможет!

Терренс
источник
Как это показывает, где установлена ​​ОС?
Pilot6
Я не знаю, где установлен мой ОС, но в соответствии с этим он находится на sda и не на SSD.NAME ROTA sda 1 ├─sda1 1 ├─sda2 1 └─sda5 1 sr0 1
лунный свет
@ Pilot6 Хороший вопрос, обновил мой ответ. Спасибо! =)
Терренс
@moonlight Я обновил свой ответ объяснением внизу, чтобы показать, как определить, где он установлен.
Терренс
+1. Интересно, что в моей системе, основанной на SSD, loop0 вращается. Единственный выход вращающегося устройства lsblock- мой оптический привод.
Приостановлено до дальнейшего уведомления.
1

В конце концов, ваш вопрос не является вопросом Ubuntu. У вас есть жесткий диск с небольшим, относительно размера HD, объемом флэш-памяти. Это автоматически управляется дисководом и пытается разместить наиболее часто используемые файлы в разделе Flash, а не в разделе HD. Насколько я знаю, нет никакого способа контролировать или сказать, какие файлы в какой части. Если вы регулярно используете Ubuntu, все важные файлы должны оказаться во флэш-памяти вашего диска, но это все.

Эван Штайнбреннер
источник