web-dev-qa-db-fra.com

Obtenir la taille totale de mon disque dur sous Linux, en utilisant la ligne de commande, sans autorisations root?

J'essaie de connaître la taille totale de mon disque dur à l'aide de df -h, mais il affiche la taille de chaque partition et requiert Sudo.

Existe-t-il un moyen d'obtenir la taille totale de mon disque dur à l'aide de la ligne de commande, sans requérir d'autorisation root?

15
HVNSweeting

Une méthode simple consiste à contourner le besoin de Sudo en lisant le journal système avec:

dmesg | grep blocks

S'il vous plaît noter que cela pourrait ne pas être idéal, de sorte que votre kilométrage peut varier ...

12
Sirex
cat /sys/block/sda/size

Mais la taille est en unité de bloc
J'ai trouvé cette réponse ici .
Autres solutions ici .

Ou vous pouvez essayer udisks

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

Si vous souhaitez utiliser ces informations dans un script par exemple, utilisez

Sudo blockdev --getsz /dev/sda

peut-être plus facile que fdisk ou hdparm car il ne vous donne que les informations pertinentes (multipliez simplement par 512). Cependant, il faudra aussi Sudo.

Vous pouvez bien sûr changer la configuration de Sudo pour qu’elle permette d’exécuter cette commande spécifique sans demander le mot de passe (je suppose que blockdev --getsz est assez sûr même s’il est exécuté par un utilisateur normal non privilégié).

Cela se ferait en ajoutant la ligne suivante à /etc/sudoers:

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

Lorsque vous modifiez ce fichier, veillez à utiliser la commande Sudo visudo et non votre éditeur habituel. Sinon, il est très facile de faire une erreur de syntaxe, ce qui empêcherait d'utiliser Sudo (il faudrait redémarrer en mode de secours pour résoudre ce problème).

3
Philipp Wendler

Si vous voulez la taille en octets et seulement la valeur par exemple. pour le script:

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

-b: Sortie en octets.
-n: Pas de rubrique. Nous voulons seulement la valeur numérique pure.
- TAILLE de sortie: Imprimer uniquement la colonne de taille.
-d/dev/sdXn: L'appareil dont nous voulons connaître la taille. X est par exemple d, n est par exemple 1 pour la première partition du disque d.

Avantages:

  • les privilèges root ne sont pas nécessaires
  • grep n'est pas nécessaire
  • lsblk est disponible sur la plupart des systèmes Linux
3
Sean Loony

Vous avez soit une mauvaise installation, soit un administrateur système absurdement paranoïaque. J'ai jamais entendu parler de df nécessitant des privilèges root auparavant. Et j’ai travaillé avec différentes versions de systèmes d’exploitation unix/unix.

Quoi qu'il en soit, cela vous donnera la taille totale de toutes les partitions de disque (la première colonne df est /dev/hd... ou /dev/sd...) en blocs (Ko):

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

ou en Go:

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

Je ne suis pas à ma machine Linux pour l'instant, mais vous pouvez essayer:

hdparm -I /dev/sda

ou

fdisk -l

qui nécessitera probablement aussi un Sudo.

Je n'ai vu nulle part que df nécessite root. C'est étrange.

1
CaseyB

Vérification de l'espace disque de Gnome et Kubuntu

Disk Usage Analyzer est une application pilotée par menu graphique qui rapporte l'utilisation du disque dans les environnements Gnome et Kubuntu. DUA (Disk Usage Analyzer) peut analyser l’ensemble de l’arborescence du système de fichiers ou des répertoires individuels, locaux ou distants. DUA est également dynamique, en ce sens qu’il signalera en temps réel tous les périphériques montés et non montés.

Pour accéder à l'analyseur d'utilisation du disque dans Gnome, cliquez sur: Applications\Accessoires\Analyseur d'utilisation du disque, c'est aussi simple que cela.

0
Ricky