Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

fsck: "no" puis plein de "yes"

12 réponses
Avatar
Mihamina Rakotomandimby
Bonjour,

J'ai redimensionné une partition.
Il faut que je fasse en fsck dessus.

Mais la premiere question est:
root@phenom:~# e2fsck /dev/sdb1
e2fsck 1.41.4 (27-Jan-2009)
The filesystem size (according to the superblock) is 244190000 blocks
The physical size of the device is 131074327 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>?

Je dois y repondre "non"

Puis aux questions suivantes, je dois repondre "oui".
Cependant, apres avoir mis objet suffisament lourd sur la touche entrée
pendant 15 minutes, les questions continuent et il faut toujours y
repondre "oui" (le choix par defaut, donc toujours "enter")

Disque de 1To en une seule partition ou j'ai reduit la partition à 500Go,
pour y placer d'autres ensuite. Filesystem: ext3.

Coment suggérez-vous de repondre "no" pour la premiere question puis
toujours "yes" pour les questions suivantes par la suite?

# e2fsck -p /dev/sdb1
/dev/sdb1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)

# e2fsck -y /dev/sdb1
Abort? yes

Merci de votre aide.

--
Architecte Informatique chez Blueline/Gulfsat:
Administration Systeme, Recherche & Developpement
+261 34 29 155 34 / +261 33 11 207 36

10 réponses

1 2
Avatar
JKB
Le 05-01-2010, ? propos de
fsck: "no" puis plein de "yes",
Mihamina Rakotomandimby ?crivait dans fr.comp.os.unix :
Bonjour,

J'ai redimensionné une partition.
Il faut que je fasse en fsck dessus.

Mais la premiere question est:
:~# e2fsck /dev/sdb1
e2fsck 1.41.4 (27-Jan-2009)
The filesystem size (according to the superblock) is 244190000 blocks
The physical size of the device is 131074327 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>?

Je dois y repondre "non"

Puis aux questions suivantes, je dois repondre "oui".
Cependant, apres avoir mis objet suffisament lourd sur la touche entrée
pendant 15 minutes, les questions continuent et il faut toujours y
repondre "oui" (le choix par defaut, donc toujours "enter")

Disque de 1To en une seule partition ou j'ai reduit la partition à 500Go,
pour y placer d'autres ensuite. Filesystem: ext3.

Coment suggérez-vous de repondre "no" pour la premiere question puis
toujours "yes" pour les questions suivantes par la suite?

# e2fsck -p /dev/sdb1
/dev/sdb1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)

# e2fsck -y /dev/sdb1
Abort? yes

Merci de votre aide.




Méthode bourin (non testée, hein, pas taper ;-) )

$ cat ny
#!/bin/bash

echo n
while true; do echo y; done
exit 0

$ ny | e2fsck...

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
Avatar
Pascal Hambourg
Salut,

Mihamina Rakotomandimby a écrit :
Bonjour,

J'ai redimensionné une partition.
Il faut que je fasse en fsck dessus.

Mais la premiere question est:
:~# e2fsck /dev/sdb1
e2fsck 1.41.4 (27-Jan-2009)
The filesystem size (according to the superblock) is 244190000 blocks
The physical size of the device is 131074327 blocks


[...]
Disque de 1To en une seule partition ou j'ai reduit la partition à 500Go,
pour y placer d'autres ensuite. Filesystem: ext3.



Apparemment le système de fichiers se croit plus grand que la partition
qui le contient. Comment as-tu réduit la partition ? Avec un outil "tout
en un" comme gparted ou avec un simple partitionneur comme fdisk ? Dans
ce dernier cas, as-tu bien réduit le système de fichiers avec resize2fs
(ou autre) avant de réduire la partition ?
Avatar
Bruno Tréguier
Mihamina Rakotomandimby wrote:
Bonjour,



Bonjour,


J'ai redimensionné une partition.
Il faut que je fasse en fsck dessus.

Mais la premiere question est:
:~# e2fsck /dev/sdb1
e2fsck 1.41.4 (27-Jan-2009)
The filesystem size (according to the superblock) is 244190000 blocks
The physical size of the device is 131074327 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>?

Je dois y repondre "non"

Puis aux questions suivantes, je dois repondre "oui".
Cependant, apres avoir mis objet suffisament lourd sur la touche entrée
pendant 15 minutes, les questions continuent et il faut toujours y
repondre "oui" (le choix par defaut, donc toujours "enter")

Disque de 1To en une seule partition ou j'ai reduit la partition à 500Go,
pour y placer d'autres ensuite. Filesystem: ext3.



Ouille ouille ouille, rien que d'y penser, j'ai mal pour le
filesystem... Si ce n'est pas indiscret, vous avez fait ça comment ? A
la hache ? %-)

C'est sûr que si les infos du superblock ne sont pas mises en accord
avec la taille réelle du FS, il va y avoir des soucis !

C'est probablement trop tard désormais (sauf si vous aviez une
sauvegarde), et ce n'était pas votre question initiale, mais n'avez-vous
pas songé à utiliser un outil comme resize2fs ?

Rassurez-moi: vous n'êtes pas chirurgien, dans la vie, au moins ? :-D

Cordialement,

Bruno
Avatar
Mihamina Rakotomandimby
> Pascal Hambourg:
as-tu bien réduit le système de fichiers avec resize2fs (ou autre) avant
de réduire la partition ?



Euh. Dans ma checklist, le "resize2fs" est apparu apres le "fdisk".
En y repensant: quel con.

Bon ben... ya pu ka.

--
Architecte Informatique chez Blueline/Gulfsat:
Administration Systeme, Recherche & Developpement
+261 34 29 155 34 / +261 33 11 207 36
Avatar
Mihamina Rakotomandimby
> Pascal Hambourg:
as-tu bien réduit le système de fichiers avec resize2fs (ou autre) avant
de réduire la partition ?



Euh. Dans ma checklist, le "resize2fs" est apparu apres le "fdisk". En y
repensant: quel con.

Bon ben... ya pu ka.
J'ai des backup.

--
Architecte Informatique chez Blueline/Gulfsat:
Administration Systeme, Recherche & Developpement
+261 34 29 155 34 / +261 33 11 207 36





--
Architecte Informatique chez Blueline/Gulfsat:
Administration Systeme, Recherche & Developpement
+261 34 29 155 34 / +261 33 11 207 36
Avatar
Cyrille Lefevre
JKB a écrit :
$ cat ny
#!/bin/bash

echo n
while true; do echo y; done
exit 0

$ ny | e2fsck...



Bonjour,

rien à voir avec le pb originel, mais juste une ch'tit optimisation :

while true; do echo y; done

peut s'écrire :

yes

et si on ne veut que des no, il y a :

yes no

Cordialement,

Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%
supprimer "%nospam% et ".invalid" pour me repondre.
Avatar
Paul Gaborit
À (at) Wed, 06 Jan 2010 01:57:55 +0100,
Cyrille Lefevre <cyrille.lefevre-news% écrivait (wrote):

JKB a écrit :
$ cat ny
#!/bin/bash

echo n
while true; do echo y; done
exit 0

$ ny | e2fsck...



Bonjour,

rien à voir avec le pb originel, mais juste une ch'tit optimisation :

while true; do echo y; done

peut s'écrire :

yes

et si on ne veut que des no, il y a :

yes no




Donc si on veut un 'no' suivi de plein de 'yes', on peut faire :

yes no | head -1 && yes

Et pour envoyer cela à e2fsck :

( yes no | head -1 && yes ) | e2fsck


--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/&gt;
Avatar
Manuel Pégourié-Gonnard
Paul Gaborit scripsit :

Donc si on veut un 'no' suivi de plein de 'yes', on peut faire :

yes no | head -1 && yes



Euh, pendant qu'on est dans les optimisations, est-ce que

yes no | head -1

ne peut pas aussi s'écrire

echo no

? Je t'accorde que ta solution est plus générale, elle s'adapte à un
nombre arbitraire de 'no'.

Et pour envoyer cela à e2fsck :

( yes no | head -1 && yes ) | e2fsck



J'ai l'impression que ça marche aussi comme ça :

{ echo no; yes } | e2fsck

et que ça ne lance pas de sous-shell.

Ceci dit, c'est sans doute inutile de chercher à optimiser ici, vu que
c'est e2fsck le facteur limitant la vitesse d'exécution. Mais, disons
que c'est pour le plaisir de papoter.

--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/
Avatar
Paul Gaborit
À (at) Wed, 6 Jan 2010 12:17:46 +0100 (CET),
Manuel Pégourié-Gonnard écrivait (wrote):

Paul Gaborit scripsit :

Donc si on veut un 'no' suivi de plein de 'yes', on peut faire :

yes no | head -1 && yes



Euh, pendant qu'on est dans les optimisations, est-ce que

yes no | head -1

ne peut pas aussi s'écrire

echo no

? Je t'accorde que ta solution est plus générale, elle s'adapte à un
nombre arbitraire de 'no'.



Oui. Mon idée était bien de donner une solution plus ou moins
générale...

Et pour envoyer cela à e2fsck :

( yes no | head -1 && yes ) | e2fsck



J'ai l'impression que ça marche aussi comme ça :

{ echo no; yes } | e2fsck

et que ça ne lance pas de sous-shell.



Là par contre, tu as tout à fait raison : l'usage des accolades est
bien meilleur.

Disons que c'est pour le plaisir de papoter.



C'est toujours un plaisir de papoter avec toi ! ;-)

--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/&gt;
Avatar
Benoit Izac
Bonjour,

le 06/01/2010 à 12:17, Manuel Pégourié-Gonnard a écrit dans le message
<hi1rgq$29dc$ :

( yes no | head -1 && yes ) | e2fsck



J'ai l'impression que ça marche aussi comme ça :

{ echo no; yes } | e2fsck

et que ça ne lance pas de sous-shell.



Cette syntaxe ne fonctionne pas sous dash, je ne sais pas pourquoi :
% env -i PATH=/usr/bin:/bin dash
$ ( yes no | head -1 && yes ) | head -2
no
y
$ { yes no | head -1 && yes } | head -2



et je suis obligé d'annuler avec un ^C

Sous zsh, j'ai l'impression que c'est les '()' qui prennent le moins de
processus :

% strace -ff -o test1 -eexecve zsh -c '{ yes no | head -1 && yes } |
sed -e "2q"'
% strace -ff -o test2 -eexecve zsh -c '( yes no | head -1 && yes ) |
sed -e "2q"'
% ls -1
test1.18804
test1.18805
test1.18806
test1.18807
test1.18808
test2.18810
test2.18811
test2.18812
test2.18813
% for f in test*; do echo " $f"; cat "$f"; echo; done
test1.18804
execve("/bin/zsh", ["zsh", "-c", "{ yes no | head -1 && yes } | se"...], [/* 38 vars */]) = 0
execve("/bin/sed", ["sed", "-e", "2q"], [/* 38 vars */]) = 0

test1.18805
--- SIGCHLD (Child exited) @ 0 (0) ---
--- SIGCHLD (Child exited) @ 0 (0) ---
--- SIGCHLD (Child exited) @ 0 (0) ---

test1.18806
execve("/usr/bin/yes", ["yes", "no"], [/* 38 vars */]) = 0
--- SIGPIPE (Broken pipe) @ 0 (0) ---

test1.18807
execve("/usr/bin/head", ["head", "-1"], [/* 38 vars */]) = 0

test1.18808
execve("/usr/bin/yes", ["yes"], [/* 38 vars */]) = 0
--- SIGPIPE (Broken pipe) @ 0 (0) ---

test2.18810
execve("/bin/zsh", ["zsh", "-c", "( yes no | head -1 && yes ) | se"...], [/* 38 vars */]) = 0
execve("/bin/sed", ["sed", "-e", "2q"], [/* 38 vars */]) = 0

test2.18811
--- SIGCHLD (Child exited) @ 0 (0) ---
--- SIGCHLD (Child exited) @ 0 (0) ---
execve("/usr/bin/yes", ["yes"], [/* 38 vars */]) = 0
--- SIGPIPE (Broken pipe) @ 0 (0) ---

test2.18812
execve("/usr/bin/yes", ["yes", "no"], [/* 38 vars */]) = 0
--- SIGPIPE (Broken pipe) @ 0 (0) ---

test2.18813
execve("/usr/bin/head", ["head", "-1"], [/* 38 vars */]) = 0


--
Benoit Izac
1 2