I've already read a question about whether your disk is SSD or HDD. When I issued the below command I've got surprised:

cat /sys/block/vda/queue/rotational

The output was 1. The question is why it's vda not an sda? And why it says 1? My server is on DigitalOcean. They say that all of their disks are SSD!

And when I entered the command below:

cat /proc/scsi/scsi

The output was as below, no disk just CD ROM:

Attached devices:                                                             
Host: scsi1 Channel: 00 Id: 00 Lun: 00                                        
  Vendor: QEMU     Model: QEMU DVD-ROM     Rev: 1.0                           
  Type:   CD-ROM                           ANSI  SCSI revision: 05

There is no specification about my disk. How to detect the exact specification of my disk on a cloud server?


why it's vda

Because it's a virtual disk. A cloud server

can be run on a hypervisor. The role of a hypervisor is to control the capacity of operating systems so it is allocated where needed. With cloud hosting there are multiple cloud servers which are available to each particular client. This allows computing resource to be dedicated to a particular client if and when it is necessary. http://www.interoute.com/what-are-cloud-servers

You system is a compartmentalized virtual guest OS run by a hypervisor inside a larger actual host OS system somewhere. In this case, the hypervisor is evidently QEMU:

Attached devices:                                                             
Host: scsi1 Channel: 00 Id: 00 Lun: 00                                        
  Vendor: QEMU     Model: QEMU DVD-ROM  

QEMU supports the use of virtio, whereby transparently virtual network and block devices can be created. Your "drive" is actually a disk image file on a real hard disk; when your system boots up this is image file is used to create the drive.

You don't have access to the actual hardware because that's not what you paid for. The purpose of virtual disks is to simplify some issues and increase performance for hypervisor systems.

It is possible for a hypervisor to simulate some kind of real hard drive so it would appear to be such inside the guest system. However, there's not much point to this, since it still isn't real (it would be a little absurd for the host to use actual drives, or even actual partitions, for each guest); doing this also requires more work for the host (= lower performance for the guest). Instead, the virtio drive is intended to work like a real disk for general I/O purposes and not waste resources simulating anything else. Any physical characteristics it reports are arbitrary -- it doesn't actually have any -- and don't bother trying to run smartctl etc. on it. Your current root filesystem mount options have probably been chosen by whoever runs the host; you may want to contact them before you contemplate changes.

  • Is there a way to know exactly whether my virtual disk image is located on an SSD or HDD? – ALH Jul 29 '14 at 11:07
  • 2
    Not as far as I know. You're not supposed to have access to the host system for obvious reasons. If you rent a dedicated physical server, then you might be allowed to tinker with the hardware; but in this case you'll just have to take their word for it that they use SSDs. If you have inappropriate performance issues with the filesystem, complain. They know they have a lot of competition. – goldilocks Jul 29 '14 at 11:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.