Myślę, że zainstalowałem Ubuntu na SSD, ale nie jestem pewien i chcę to sprawdzić. Ale nie wiem jak to zrobić?
Myślę, że zainstalowałem Ubuntu na SSD, ale nie jestem pewien i chcę to sprawdzić. Ale nie wiem jak to zrobić?
Odpowiedzi:
Koleś, gdzie jest mój korzeń?
Przede wszystkim musimy wiedzieć, na którym dysku znajduje się główny system plików (innymi słowy, z jakim urządzeniem mieści się Twój system Ubuntu. Jednym ze sposobów jest df
.
$ df / -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 110G 58G 48G 55% /
Świetny ! Wiem teraz, że moje Ubuntu jest umieszczone na /dev/sda
dysku, który ma rozmiar 110 GB (a pozostałe 10 GB służy do czegoś innego). Za mało informacji? OK, a co z tym:
$ 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
Och, Radeon R7! to mój dysk SSD! Ale poczekaj . . .
Co zrobić, jeśli masz dwa dyski tego samego rozmiaru i tego samego producenta?
Dyski mają tę bardzo interesującą informację - jak szybko się obracają, a jak wiemy, dyski SSD się nie obracają .
$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'
[sudo] password for xieerqi:
Rotation Rate: Solid State Device
Wygląda na to, prawda?
Side-uwaga:smartmontools
konieczne może być zainstalowany w celu korzystania z smartctl
polecenia.
Aby uzyskać więcej informacji, przeczytaj ten post na stronie wymiany stosów Uniksa i Linuksa
Jest jeszcze jedna metoda, jak opisano tutaj . Każdy dysk ma odpowiadający katalog w /sys/class/block/
katalogu i wykonując
cat /sys/class/block/DEVICE_NAME/queue/rotational
dostaniesz 1 dla dysku twardego lub 0 dla ssd. To podejście jest bardzo wygodne w użyciu w skryptach
W rzeczywistości jest to najwyraźniej to samo podejście, które lsblk
wykorzystuje:
$ lsblk -o NAME,ROTA
NAME ROTA
sda 0
└─sda1 0
sdb 1
├─sdb1 1
├─sdb2 1
├─sdb3 1
├─sdb4 1
├─sdb5 1
└─sdb6 1
Prostym sposobem na sprawdzenie, czy system operacyjny jest zainstalowany na dysku SSD, jest uruchomienie polecenia z okna terminala o nazwie lsblk -o name,rota
. Spójrz na ROTA
kolumnę wyniku, a zobaczysz liczby. A 0
oznacza brak prędkości obrotowej lub napędu SSD. A 1
wskazuje napęd z obracającymi się talerzami. Moje Ubuntu jest zainstalowane na moim /dev/sdb
dysku, więc możemy zobaczyć, że oznacza to, 0
co oznacza, że jest zainstalowany na dysku SSD. Podaję za tym przykładem, jak powiedzieć, gdzie jest zainstalowany system operacyjny df
.
UWAGA: Ubuntu zainstalowany jako klient w pętli lub maszynach wirtualnych pokaże ROTA 1 niezależnie od instalacji systemu operacyjnego hosta. Również „ napędy hybrydowe półprzewodnikowe ” i napędy flash USB będą również wyświetlać ROTA 1.
Przykład:
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
Lub możesz wykonać sprawdzenie jako skrypt jednowierszowy, -d
aby nie wyświetlać partycji:
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
Przykład:
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
Aby ustalić, na jakim dysku jest zainstalowana instalacja, uruchom polecenie df /
z okna terminala.
UWAGA: Napędy skonfigurowane za pomocą LVM (Logical Volume Management) faktycznie pokazują napęd jako /boot
zamiast /
.
Przykłady:
Napęd 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
Dysk inny niż LVM:
df /
/dev/sdb1 222309012 38264268 172728984 19% /
AKTUALIZACJA: lsblk
można również użyć, aby pokazać, gdzie jest zainstalowany system operacyjny i czy dysk jest dyskiem SSD w jednym poleceniu:
lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
Przykład:
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
Dzieje się tak po ponownym uruchomieniu systemu, więc moje oznaczenia dysków ponownie się zmieniły, ale jak widać, moje dyski SanDisk to dyski SSD, a ROTA pokazuje 0.
Mam nadzieję że to pomoże!
lsblock
jest mój napęd optyczny.
W końcu twoje pytanie nie jest tak naprawdę pytaniem Ubuntu. Masz dysk twardy o małej, w stosunku do wielkości HD, ilości pamięci flash. Jest to zarządzane automatycznie przez napęd i próbuje umieścić częściej używane pliki w części Flash, a nie w części HD. O ile wiem, nie ma sposobu, aby kontrolować lub powiedzieć, jakie pliki są w jakiej części. Jeśli regularnie używasz Ubuntu, wszystkie ważne pliki powinny znaleźć się w części flash dysku, ale to wszystko.