usb hard disk / ext3 partition - permissions change automatically(!) from read-write to read only - ubuntu-feisty & debian-testi

ndemou at gmail.com ndemou at gmail.com
Thu May 31 11:06:13 EEST 2007


On 5/31/07, Ilias Paraponiaris <paraponiaris at yahoo.com> wrote:
> [...]
> Ιδού το αποτέλεσμα της εντολής dmesg (την έδωσα σε debian-testing, το
> ίδιο πρόβλημα όμως ισχύει και σε ubuntu-feisty), όπου πράγματι στο τέλος
> αναφέρεται στο sda2 το οποίο εμφανίζει το πρόβλημα:

<μίνι-μάθημα για την dmesg>
Αν προσέξεις θα δεις ότι παρακάτω βλέπεις μηνύματα που αφορούν σε
γεγονότα ήδη από τα πρώτα δευτ/πτα του boot και μέχρι τη στιγμή που
έδωσες την εντολή (η dmesg σου εμφανίζει όλα τα πρόσφατα μηνύματα του
kernel)
Τα ενδιαφέροντα μηνύματα φυσικά είναι κυριώς στο τέλος όπου προσπαθεί
να "μιλήσει" με τον δίσκο σου
<μίνι-μάθημα για την dmesg>

> iplaptop:~# dmesg
> Linux version 2.6.18-4-686 (Debian 2.6.18.dfsg.1-12etch2)

booting begins

> [...]
> usb-storage: device scan complete

παρακάτω ο kernel βρίσκει τα partitions σου
όπως βλέπεις βρίσκει στο δίσκο sda τα part. 1 και 2

> SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
> sda: Write Protect is off
> sda: Mode Sense: 1c 00 00 00
> sda: assuming drive cache: write through
> SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
> sda: Write Protect is off
> sda: Mode Sense: 1c 00 00 00
> sda: assuming drive cache: write through
>  sda: sda1 sda2
> sd 0:0:0:0: Attached scsi disk sda
> [...]

παρακάτω κάνει mount το partition sda2

> kjournald starting.  Commit interval 5 seconds
> EXT3-fs warning (device sda2): ext3_clear_journal_err: Filesystem error
> recorded from previous mount: IO failure
> EXT3-fs warning (device sda2): ext3_clear_journal_err: Marking fs in
> need of filesystem check.
> EXT3-fs warning: mounting fs with errors, running e2fsck is recommended

τα παραπάνω μηνύματα προφανώς είναι εδώ γιατί την προηγούμενη φορά που
είχε κάνει mount υπήρξαν errors (τα ίδια με αυτά που θα δεις παρακάτω
προφανώς). Ένα fsck δεν βλάπτει όμως

> EXT3 FS on sda2, internal journal
> EXT3-fs: recovery complete.
> EXT3-fs: mounted filesystem with ordered data mode.

όλα καλά μέχρι εδώ

> ath0: no IPv6 routers present

και εδώ προφανώς πας να δεις τον δίσκο αφότου έχει κάνει spin down

> sd 0:0:0:0: Device not ready: <6>: Current: sense key: Not Ready
>     Additional sense: Logical unit not ready, initializing command
> required
> end_request: I/O error, dev sda, sector 6291527
> Buffer I/O error on device sda1, logical block 6291464
> [...πολές φορές...]
> Buffer I/O error on device sda1, logical block 6291471
> sd 0:0:0:0: Device not ready: <6>: Current: sense key: Not Ready
>     Additional sense: Logical unit not ready, initializing command
> required
> end_request: I/O error, dev sda, sector 420031737
> EXT3-fs error (device sda2): ext3_find_entry: reading directory #2
> offset 0
> Aborting journal on device sda2.
> sd 0:0:0:0: Device not ready: <6>: Current: sense key: Not Ready
>     Additional sense: Logical unit not ready, initializing command
> required
> end_request: I/O error, dev sda, sector 420031785
> Buffer I/O error on device sda2, logical block 1545
> lost page write due to I/O error on sda2
> ext3_abort called.
> EXT3-fs error (device sda2): ext3_journal_start_sb: Detected aborted
> journal

πάρα πολλά λάθη όπως βλέπεις που 99% οφείλονται στο ότι ο δίσκος δεν
είναι έτοιμος ακόμα να δώσει δεδομένα αλλά ο kernel τα ζητάει επίμονα.
Κακή επικοινωνία μεταξύ τους γιατί το σωστό πρέπει να είναι ο δίσκος
να δηλώσει κάτι σε "μια στιγμή κάνω spin up" και ο kernel να περιμένει
λίγο μέχρι να ακούσει "ΟΚ ready to serve you".
Το αποτέλεσμα όλων αυτών των errors:

> Remounting filesystem read-only

όπως εξηγήσει και βλέποντας τα error logs του άλλου παλικαριού από την
debian list (τα οποία δείχνουν φοβερές ομοιώτητες για να είναι
τυχαίες): <<μετά απο τόσα "λάθη" ο kernel λέει "τι διάολο χτυπημένο
filesystem είναι αυτό... καλύτερα να το κάνω mount read/only μην το
αποτελειώσουμε στο επόμενο write">>

το οποίο ταιριάζει και με την παρατήρηση σου:
> [...] Παρατηρώ (από τον ήχο και την ένταση του
> φωτός στο λαμπάκι) ότι όταν ο δίσκος δεν είναι ενεργός κάνει 1-2
> δευτερόλεπτα να ξαναπάρει μπροστά κάθε φορά που επιχειρώ πρόσβαση, και
> τότε είναι που γίνεται το ext3 mounted ως read-only.


> On Wed, 2007-05-30 at 17:34 +0300, Manolis Kiagias wrote:
> > Α!!! Αυτό χτύπησε ένα καμπανάκι. Το έχω πάθει (με διαφορετικό τρόπο) σε
> > κάποιο πρόβλημα τροφοδοσίας που είχα σε σκληρό δίσκο. Φαντάζομαι θα
> > μπορεί να συμβεί και αν ο δίσκος έχει κάποιο bad sector σε κρίσιμο
> > σημείο και καθυστερεί να ανταποκριθεί. Δεν ξέρουμε βέβαια δεν συμβαίνει
> > αυτό στον Ηλία,

όπως φαίνεται πλέον απο τα logs δεν είναι ακριβώς το ίδιο: Ο δίσκος
δεν καθυστερεί λόγο bad sector αλλά επειδή έχει κάνει spin down. Δεν
ξέρω αν οι άλλες ομοιότητες είναι σημαντικές

> >  όμως είναι αν είναι πράγματι ασυμβατότητα ή κάποιου
> > είδους bug στον πηρύνα σχετικά με το συγκεκριμένο δίσκο ίσως μπορέσει να
> > το ξεπεράσει χρησιμοποιώντας την hdparm και ενδεχομένως μειώνοντας το
> > DMA mode που χρησιμοποιεί το kernel. Αυτό μπορεί να γίνει και μέσα από
> > το bios ενδεχομένως.
> >
> Έψαξα λίγο το hdparm και έβαλα στο /etc/hdparm.conf την ακόλουθη
> καταχώρηση:
> /dev/sda2 {
>     mult_sect_io = 16
>     write_cache = off
>     dma = on
> }
>
> Χωρίς να είμαι βέβαιος για την διαπίστωση, έχω την εντύπωση ότι πλέον ο
> δίσκος αργεί λίγο περισσότερο να πέσει σε κατάσταση ύπνωσης ή αναμονής

μπα μάλλον όχι

===προτάσεις===

στο manual της hdparm/sdparm έχει ένα σωρό επιλογές για τα power modes
του δίσκου. Για διάβασε και πειραματίσου μαζί τους παρακολουθώντας και
τα logs του kernel (dmesg / tail -f /var/log/messages or what ever).
Έτσι θα επιβεβαιώσουμε τις υποψίες μας για την συσχέτιση με το
spin-down/up. Μπορείς και να δοκιμάσεις να απενεργοποιήσεις το power
saving αν το υποστηρίζει ο δίσκος.

επίσης googlare για τα ενδιαφέροντα errors που έβγαλε το dmesg
π.χ. το:
> sd 0:0:0:0: Device not ready: <6>: Current: sense key: Not Ready
>     Additional sense: Logical unit not ready, initializing command
> required
(υποθέτω το κόλπο για search φράσης βάζοντας τις λέξεις σε εισαγωγικα το ξέρεις)

και ίσως δεν βλάπτει να επικοινωνείς με τον τύπο που έχει τελικά
ακριβώς το ίδιο πρόβλημα (και αν θυμάμαι καλά με ακριβώς τον ίδιο
δίσκο). _Αν_ ο δίσκος σου πωλείται αναφέροντας και συμβατότητα και για
Linux επικοινώνησε και με τον κατασκευαστή.




More information about the Linux-greek-users mailing list