in reply to get the size of a special device (drive)

If all else fails, you could try seeking to the end of the 'file' using the end-relative seek mode:

open DEV, '<+:raw', '/dev/sda4' or die ... my $size = sysseek DEV, 0, 2;

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."