Linuxのハードドライブの合計サイズを取得するには、コマンドラインを使用し、ルートのアクセス許可は不要ですか?


15

を使用してハードドライブの合計サイズを確認しようとしていますdf -hが、各パーティションのサイズを印刷し、必要としますsudo

ルート権限を必要とせずに、コマンドラインを使用してハードドライブの合計サイズを取得する方法はありますか?


5
注:dfディスクにパーティション化されていないスペースがある場合、すべてのパーティションがマウントされていない場合(たとえば、同じドライブ上の一部のWindowsパーティション)または一部のパーティションが直接ではなく、RAID、LVMまたはLUKS(暗号化)を介して間接的にマウントされている場合、使用は不正確です。また、スワップパーティションが失われます。そのため、HDDのサイズを調べるために使用しないことをお勧めしますdf
フィリップ

回答:


12

ハッキング方法は、次のコマンドでsudoシステムログを読み取ることで、必要性を回避することです。

dmesg | grep blocks

これは理想的ではない可能性があるため、走行距離は異なる可能性があることに注意してください...


4
cat /sys/block/sda/size

しかし、サイズはブロックベースの単位ですここで
この答えを見つけまし
その他のソリューションはこちら

または、udisksを試すことができます

udisks --show-info /dev/sda | egrep "^[[:space:]]*size" | awk '{print $2}'

4

バイト単位のサイズと値のみが必要な場合(スクリプト用など):

lsblk -b --output SIZE -n -d /dev/sdX
12220202

-b:バイト単位で出力します。
-n:見出しなし。純粋な数値のみが必要です。
--output SIZE:サイズ列のみを印刷します。
-d / dev / sdXn:サイズを知りたいデバイス。Xはたとえばd、nはたとえばディスクdの最初のパーティションでは1です。

利点:

  • ルート権限は必要ありません
  • grepは必要ありません
  • lsblkはほとんどのLinuxシステムで利用可能です

3

たとえば、スクリプトでその情報を使用する場合は、次を使用します

sudo blockdev --getsz /dev/sda

関連情報のみを提供するため、fdiskやhdparmよりも簡単です(512を掛けるだけです)。ただし、sudoも必要です。

もちろん、パスワードを要求せずにこの特定のコマンドを実行できるようにsudoの構成を変更できます(blockdev --getsz通常の非特権ユーザーが実行した場合でも、かなり安全だと思います)。

これは、次の行をに追加することで実行できます/etc/sudoers

ALL ALL= NOPASSWD:/sbin/blockdev --getsz /dev/*

このファイルを編集するときsudo visudoは、通常のエディターではなく、必ずコマンドを使用してください。そうしないと、構文エラーが非常に簡単に発生し、sudoを使用できなくなります(これを修正するには、レスキューモードで再起動する必要があります)。


1
manページから:--getsize64 Print device size in bytes.。また、ここに
スパルホーク14

1

私は今Linuxボックスにいませんが、試してみることができます:

hdparm -I /dev/sda

または

fdisk -l

おそらくsudoも必要になります。

私はdfがルートを必要とすることを見たことがありません。それは変です。


「df」がPATHにない可能性があります。HVNSweeting、「sudo which df」を試してから、ユーザーとして試してください。
ミラノバブシュコフ

こんにちは、これは私が得るものです:hvnsweeting @ hvnbox:〜$ blockdev --getsz / dev / sda / dev / sda:許可が拒否されましたhvnsweeting @ hvnbox:〜$ hdparm -I / dev / sda / dev / sda:許可が拒否されましたhvnsweeting @hvnbox:〜$ fdisk -l hvnsweeting @ hvnbox:〜$
HVNSweeting

1
デバイスに直接アクセスするすべてのもの(つまり、/ dev / sda)にはsudoが必要です。
フィリップウェンドラー

1

インストールに問題があるか、システム管理者がばかげている。ルート権限が必要だと聞いたことはありませdf。そして、私は非常に多くの異なる種類のunix / unixライクなオペレーティングシステムで働いてきました。

とにかく、これにより、すべてのディスクパーティションの合計サイズ(最初のdf列は/dev/hd...または/dev/sd...)がブロック(kB)で表示されます。

df | grep '^/dev/[hs]d' | awk '{s+=$2} END {print s}'

またはGB単位:

df | grep '^/dev/[hs]d' | awk '{s+=$2} END {print s/1048576}'

0

GnomeおよびKubuntuのディスク容量を確認する

Disk Usage Analyzerは、GnomeおよびKubuntu環境でのディスク使用量を報告するグラフィカルメニュー方式のアプリケーションです。DUA(Disk Usage Analyzer)は、ファイルシステムツリー全体または個々のディレクトリ(ローカルまたはリモート)をスキャンできます。DUAは動的でもあり、マウントされているデバイスとマウント解除されているデバイスをリアルタイムで報告します。

GnomeのDisk Usage Analyzerにアクセスするには、「アプリケーション」\「アクセサリ」\「Disk Usage Analyzer」をクリックします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.