#301 Le 16/03/2012, à 23:32
- grim7reaper
Re : /* Topic des codeurs [7] */
Chez moi, pas de man statfs dans la section 3 (c’est dans la section 2).
Et ça dit
Nobody knows what f_fsid is supposed to contain (but see below).
Et comme on s’y attend (et c’est expliqué dans la section NOTES) ça veut juste dire que ça dépend de la plateforme.
The f_fsid field
Solaris, Irix and POSIX have a system call statvfs(2) that returns a struct statvfs (defined in <sys/statvfs.h>) containing an unsigned long f_fsid. Linux, SunOS, HP-UX, 4.4BSD
have a system call statfs() that returns a struct statfs (defined in <sys/vfs.h>) containing a fsid_t f_fsid, where fsid_t is defined as struct { int val[2]; }. The same holds for
FreeBSD, except that it uses the include file <sys/mount.h>.
The general idea is that f_fsid contains some random stuff such that the pair (f_fsid,ino) uniquely determines a file. Some operating systems use (a variation on) the device num‐
ber, or the device number combined with the file-system type. Several OSes restrict giving out the f_fsid field to the superuser only (and zero it for unprivileged users), because
this field is used in the filehandle of the file system when NFS-exported, and giving it out is a security concern.
Under some operating systems the fsid can be used as second argument to the sysfs(2) system call.
Dernière modification par grim7reaper (Le 16/03/2012, à 23:33)
Hors ligne
#302 Le 16/03/2012, à 23:40
- Rolinh
Re : /* Topic des codeurs [7] */
Oui, j'avais quand même lu jusqu'au bout
Seulement voilà, comme ça dépend, ça ne m'avance pas.
Enfin bon, j'ai réglé mon problème d'une autre manière
Hors ligne
#303 Le 18/03/2012, à 12:43
- Rolinh
Re : /* Topic des codeurs [7] */
Bon, voilà sur quoi je bossais pour le fun en C l'autre jour:
[robin@thor ~/Hacking/git/bor/dfc] % dfc
FILESYSTEM TYPE USED (*) FREE (-) %USED AVAILABLE TOTAL MOUNTED ON
/dev/sdc1 ext4 [***********---------] 50% 14905253888B 29941719040B /
/dev/sda7 ext2 [****----------------] 15% 84541440B 99997696B /boot
/dev/sda3 ext4 [*************-------] 63% 137814032384B 370028589056B /home
/dev/sda5 reiserfs [*************-------] 62% 5159051264B 13489512448B /var
[robin@thor ~/Hacking/git/bor/dfc] % dfc -ag
FILESYSTEM TYPE USED (*) FREE (-) %USED AVAILABLE TOTAL MOUNTED ON
rootfs rootfs [***********---------] 50% 13G 27G /
proc proc [********************] 100% 0G 0G /proc
sys sysfs [********************] 100% 0G 0G /sys
/dev devtmpfs [********************] 100% 3G 3G /dev
run tmpfs [*-------------------] 0% 3G 3G /run
/dev/sdc1 ext4 [***********---------] 50% 13G 27G /
devpts devpts [********************] 100% 0G 0G /dev/pts
shm tmpfs [*-------------------] 0% 3G 3G /dev/shm
tmpfs tmpfs [*-------------------] 0% 5G 6G /tmp
/dev/sda7 ext2 [****----------------] 15% 0G 0G /boot
/dev/sda3 ext4 [*************-------] 63% 128G 344G /home
/dev/sda5 reiserfs [*************-------] 62% 4G 12G /var
[robin@thor ~/Hacking/git/bor/dfc] % dfc -h
Usage: dfc [OPTIONS(S)]
Available options:
-a print all fs from mtab
-h print this message
-g size in Go
-k size in Ko
-m size in Mo
-v print program version
J'ai encore une ou deux erreurs concernant le calcul du pourcentage et de la taille quand elle n'est pas en B mais sinon ça fonctionne plutôt bien.
D'ailleurs, vous pourriez le tester un peu et me confirmer que chez vous ça s'affiche et fonctionne correctement? Ça serait sympa.
Comme ça, après correction des bugs susmentionnés et si vous ne trouvez pas de bugs, je pourrais le publier.
git clone git://rolinh.ch/dfc.git
Hors ligne
#304 Le 18/03/2012, à 13:40
- grim7reaper
Re : /* Topic des codeurs [7] */
Après un rapide coup d’œil, ça semble bien fonctionner.
Je remarque juste
dfc.c:407:4: warning: Value stored to 'used' is never read
used /= (1024*1024*1024);
^ ~~~~~~~~~~~~~~~~
dfc.c:399:4: warning: Value stored to 'used' is never read
used /= 1024;
^ ~~~~
dfc.c:403:4: warning: Value stored to 'used' is never read
used /= (1024*1024);
Sinon, main et disp sont un peu gros à mon goût (respectivement 135 et 148 lignes).
Dernière modification par grim7reaper (Le 18/03/2012, à 13:43)
Hors ligne
#305 Le 18/03/2012, à 15:36
- Rolinh
Re : /* Topic des codeurs [7] */
Ouep, faut que je propre un peu tout ça encore. Merci pour le retour.
Hors ligne
#306 Le 18/03/2012, à 16:50
- Rolinh
Re : /* Topic des codeurs [7] */
Bon, c'est amélioré en tenant compte de ta remarque. En revanche, je ne comprend toujours pas pourquoi je n'ai pas le bon % et pourquoi la taille diffère de celle de DF lors de l'affichage en M ou G.
Hors ligne
#307 Le 18/03/2012, à 17:08
- grim7reaper
Re : /* Topic des codeurs [7] */
Je pense pas que ça vienne de là, mais déjà faudrait que tu travailles en flottant pour la taille disponible.
Parce que df m'affiche des nombres avec une décimale si nécessaire.
Sinon, une option sympa à ajouter c’est le format human-readable (ls et df l’ont) qui convertit intelligemment la taille dans l’unité la plus lisible.
Hors ligne
#308 Le 18/03/2012, à 17:28
- Rolinh
Re : /* Topic des codeurs [7] */
J'ai été voir un peu le code de df des coreutils mais j'ai toujours autant de mal à lire le GNU
Je suis en train de regarder le df de freebsd pour voir comment il travaille le truc.
Pour l'option, c'est sûr, je compte l'implémenter mais pour la prochaine version je pense. J'aimerais déjà comprendre pourquoi je n'ai pas le bon calcul alors que j'ai bien les bonnes tailles en bytes.
Hors ligne
#309 Le 18/03/2012, à 18:11
- Rolinh
Re : /* Topic des codeurs [7] */
Bon, le problème vient de "used" qui est plus grand chez moi... Apparemment, ce n'est pas simplement size -free.
Hors ligne
#310 Le 18/03/2012, à 18:16
- grim7reaper
Re : /* Topic des codeurs [7] */
T’es sûr que tu as les bonnes tailles en bytes ?
Parce que si j’utilise ton calcul en utilisant les données de bf ça reste cohérent (donc je pense que bf utilise le même calcul).
Édit : ha oui, ça pourrait venir de là aussi.
Dernière modification par grim7reaper (Le 18/03/2012, à 18:21)
Hors ligne
#311 Le 18/03/2012, à 18:23
- Rolinh
Re : /* Topic des codeurs [7] */
Oui, les tailles en bytes sont correctes. En revanche, en passant en K, M ou G, j'ai une différence...
Dernière modification par Rolinh (Le 18/03/2012, à 18:34)
Hors ligne
#312 Le 18/03/2012, à 18:29
- grim7reaper
Re : /* Topic des codeurs [7] */
Comment tu le sais ?
J’arrive pas à afficher les tailles en bytes avec df…
Sinon, je serais toi j’utiliserais f_bavail au lieu de f_bfree, ça me semble plus correct.
Un exemple avec le pourcentage d’utilisation de ma racine : df me dit 68%, dfc avec f_bfree me dit 64% alors que dfc avec f_bavail me dit 69%.
Ça semble quand même plus précis.
Dernière modification par grim7reaper (Le 18/03/2012, à 18:38)
Hors ligne
#313 Le 18/03/2012, à 18:40
- Rolinh
Re : /* Topic des codeurs [7] */
J'utilise f_bavail
(mais j'ai fait un peu des aller-retour entre les deux )
Pour les bytes:
[robin@thor ~/Hacking/git/bor/dfc] % ./dfc -a
FILESYSTEM TYPE USED (*) FREE (-) %USED AVAILABLE TOTAL MOUNTED ON
rootfs rootfs [***********---------] 51% 14818320384B 29941719040B /
proc proc [********************] 100% 0B 0B /proc
sys sysfs [********************] 100% 0B 0B /sys
/dev devtmpfs [--------------------] 0% 4069519360B 4069519360B /dev
run tmpfs [*-------------------] 0% 4072214528B 4072558592B /run
/dev/sdc1 ext4 [***********---------] 51% 14818320384B 29941719040B /
devpts devpts [********************] 100% 0B 0B /dev/pts
shm tmpfs [*-------------------] 0% 4068282368B 4072558592B /dev/shm
tmpfs tmpfs [*-------------------] 0% 6442438656B 6442450944B /tmp
/dev/sda7 ext2 [****----------------] 15% 84541440B 99997696B /boot
/dev/sda3 ext4 [*************-------] 63% 137814257664B 370028589056B /home
/dev/sda5 reiserfs [*************-------] 62% 5157519360B 13489512448B /var
/dev/sdb1 ext4 [***************-----] 73% 87255613440B 319708704768B /mnt/Videos
[robin@thor ~/Hacking/git/bor/dfc] % df --block-size=1
Filesystem 1B-blocks Used Available Use% Mounted on
rootfs 29941719040 13622620160 14818320384 48% /
/dev 4069519360 0 4069519360 0% /dev
run 4072558592 344064 4072214528 1% /run
/dev/sdc1 29941719040 13622620160 14818320384 48% /
shm 4072558592 4276224 4068282368 1% /dev/shm
tmpfs 6442450944 12288 6442438656 1% /tmp
/dev/sda7 99997696 10213376 84541440 11% /boot
/dev/sda3 370028589056 213692289024 137814257664 61% /home
/dev/sda5 13489512448 8331993088 5157519360 62% /var
/dev/sdb1 319708704768 216449515520 87255613440 72% /mnt/Videos
Je me demande si c'est pas une histoire avec le compte des inodes ou quelque chose dans le genre.
Hors ligne
#314 Le 18/03/2012, à 22:05
- Etoma
Re : /* Topic des codeurs [7] */
Salut!
Il y a moyen de coder en utilisant Ubuntu version ARM?
Par exemple IDLE pour ARM?
Si oui, est-ce que le code python pourra tout de mettre utiliser par un x86?
"un gars qui agit pour le bien des gens sans leur demander leur avis"
PirateBox
Hors ligne
#315 Le 18/03/2012, à 22:06
- grim7reaper
Re : /* Topic des codeurs [7] */
Oui, pas de problèmes.
Les fichiers .py tournent partout où un interpréteur Python est disponible.
Dernière modification par grim7reaper (Le 18/03/2012, à 22:07)
Hors ligne
#316 Le 18/03/2012, à 22:08
- Etoma
Re : /* Topic des codeurs [7] */
Ah ok!
C'est une très bonne information! je vais peut-être pouvoir coder sur mon AC 100! Ce serait le top!
"un gars qui agit pour le bien des gens sans leur demander leur avis"
PirateBox
Hors ligne
#317 Le 19/03/2012, à 13:09
- Rolinh
Re : /* Topic des codeurs [7] */
Plop,
dites, j'ai un problème avec octave: le plot marche très bien depuis le prompt mais en lançant un fichier via octave -q avec le plot, ça ne fonctionne pas.
Mon "hack" crados pour que ça marche consiste à ajouter ça:
refresh;
input('press any key to terminate ...');
mais c'est vraiment moche et je me dis qu'il doit bien y avoir un moyen...
Pourriez-vous me dire si ça marche chez vous, avec par exemple ceci dans un fichier *.m à lancer avec octave -q ?
plot(rand(10, 1));
Hors ligne
#318 Le 19/03/2012, à 18:16
- grim7reaper
Hors ligne
#319 Le 19/03/2012, à 18:27
- Rolinh
Re : /* Topic des codeurs [7] */
Bon, ça me rassure. Je vais chercher un peu afin de savoir si c'est normal et sinon ben... je ferais un rapport de bug.
EDIT:
Apparemment comme ça c'est bon:
octave -q --persist plop.m
Par contre, après ça il reste sur le prompt octave, ce qui est plutôt moche.
Dernière modification par Rolinh (Le 19/03/2012, à 18:39)
Hors ligne
#320 Le 21/03/2012, à 00:51
- Rolinh
Re : /* Topic des codeurs [7] */
Bon, je n'ai pas chômé. Voilà une nouvelle version de dfc.
Toujours pas le support du "human readable" mais ça sera pour la prochaine release en même temps qu'une option pour exporter les datas dans un csv.
Pour les archers, j'en ai fait un paquet AUR.
J'apprécierais un petit retour et éventuellement un vote sur AUR si vous trouvez qu'il en vaut la peine.
Hors ligne
#321 Le 21/03/2012, à 01:29
- Elzen
Re : /* Topic des codeurs [7] */
Et mince
J'viens de faire une mise à jour, et j'n'ai plus le droit de lecture sur /var/run/acpid.socket…
Le seul élément de ma bibli de récupération d'infos systèmes qui tournait à peu près correctement qui tombe à l'eau
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#322 Le 21/03/2012, à 08:00
- Kanor
Re : /* Topic des codeurs [7] */
Pourquoi tu n'utilise pas upower ?
Hors ligne
#323 Le 21/03/2012, à 10:01
- Elzen
Re : /* Topic des codeurs [7] */
J'me souviens que j'avais cherché dans cette direction-là, mais que j'n'avais rien trouvé qui permettait d'être prévenu quand le niveau de la batterie change. La socket acpi était le seul moyen que j'avais trouvé de faire un peu plus propre que « on revérifie manuellement toutes les X secondes ».
Après, si t'as plus d'infos que moi sur le truc, j'écoute
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#324 Le 23/03/2012, à 03:22
- Pylades
Re : /* Topic des codeurs [7] */
Hey, il y a des gens qui touchent en CSS, ici ?
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#325 Le 23/03/2012, à 07:31
- Rolinh
Re : /* Topic des codeurs [7] */
Il fut un temps où je créais pas mal de sites web... mais le côté CSS n'a jamais été mon fort. Poses toujours ta question, on verra bien si je (ou quelqu'un d'autre ici) est capable de répondre.
Hors ligne