baca saja sistem file root


25

Entah bagaimana Debian saya hanya membaca di sistem file root. Saya tidak tahu bagaimana ini bisa terjadi.
Misalnya ketika saya berada di /rootfolder dan ketik perintah nanodan setelah itu tekan Tabuntuk mendaftar file yang mungkin di folder itu saya mendapatkan pesan:

root@debian:~# nano -bash: cannot create temp file for here-document: Read-only file system

Hal yang sama untuk cdperintah ketika saya mengetik cd /homedan menekan Tabuntuk mendaftar jalur saya punya ini:

root@debian:~# cd /home -bash: cannot create temp file for here-document: Read-only file system

Saya juga memiliki masalah dengan perangkat lunak seperti aptdan lainnya. Bahkan tidak dapat memperbarui apt-get. Saya memiliki banyak kesalahan seperti ini:

Err http ://ftp.de.debian.org wheezy-updates/main Sources
406  Not Acceptable
W: Not using locking for read only lock file /var/lib/apt/lists/lock
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy/Release  rename failed, Read-only file system (/var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release -> /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release).
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/source/Sources  404  Not Found
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/binary-amd64/Packages  404  Not Found
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy-updates/main/source/Sources  406  Not Acceptable
E: Some index files failed to download. They have been ignored, or old ones used instead.
W: Not using locking for read only lock file /var/lib/dpkg/lock

Saya memiliki banyak masalah dalam sistem. Apakah mungkin memperbaikinya? Bagaimana saya bisa memeriksa apa yang terjadi? Apa yang harus saya cari di log?

Saya tahu itu mungkin karena baris dalam /etc/fstabfile:

/dev/mapper/debian-root /               ext4    errors=remount-ro 0       1

tapi apa masalahnya? Saya tidak dapat menemukan apa pun atau mungkin saya tidak tahu harus mencari ke mana.

Edit:

Saya melakukan pencarian log pesan dan hanya menemukan ini:

kernel: [    5.709326] EXT4-fs (dm-0): re-mounted. Opts: (null)
kernel: [    5.977131] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro
kernel: [    7.174856] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)

Saya kira itu benar, karena saya memiliki entri yang sama pada mesin debian lainnya.

Saya menemukan sesuatu di dmesg (saya memotong sedikit output karena banyak hal ext4 standar)

root@gs3-svn:/# dmesg |grep ext4
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_dirty_inode:4634: Journal has aborted
EXT4-fs error (device dm-0): ext4_discard_preallocations:3894: comm rsyslogd: Error loading buddy information for 1
EXT4-fs warning (device dm-0): ext4_end_bio:250: I/O error -5 writing to inode 133130 (offset 132726784 size 8192 starting block 159380)
EXT4-fs error (device dm-0): ext4_journal_start_sb:327: Detected aborted journal

5 kesalahan dan 1 peringatan. Ada ide? Apakah aman menggunakan mount -o remount, rw /?


2
Cari string "ext4" et "/ dev / mapper / debian-root" di /var/log/messages. Jika sistem file Anda rusak, Anda harus melihatnya di pesan kernel awal saat boot. Coba juga mount -o remount,rw /dev/mapper/debian-rootdan beri tahu kami jika ada kesalahan.
lgeorget

juga apakah Anda memiliki ruang yang tersisa, apa yang memberi Anda perintahdf
Kiwy

Bisakah Anda boot ke 'mode pemulihan' dari grub? Atau, edit opsi grub kernel dan tambahkan kata tunggal ke akhir dan boot. Anda harus berakhir dengan shell root dari mana Anda dapat menjalankan berbagai alat untuk memeriksa dan memperbaiki disk Anda.
garethTheRed

mengatur ulang "mesin VM" memang memecahkan masalah saya (kasus - Ubuntu berjalan di Virtual Box)
parasrish

Jawaban:


29

Perilaku default untuk sebagian besar sistem file Linux adalah melindungi data Anda. Ketika kernel mendeteksi kesalahan dalam subsistem penyimpanan, itu akan membuat sistem file read-only untuk mencegah (selanjutnya) korupsi data.

Anda dapat menyetel ini agak dengan opsi mount errors={continue|remount-ro|panic}yang didokumentasikan dalam manual sistem ( man mount).

Ketika sistem file root Anda menghadapi kesalahan seperti itu, sebagian besar waktu kesalahan tidak akan direkam dalam file log Anda, karena sekarang mereka akan hanya-baca juga. Untungnya karena ini merupakan tindakan kernel, pesan kesalahan asli direkam dalam memori terlebih dahulu, di buffer cincin kernel. Kecuali jika sudah dihapus dari memori Anda dapat menampilkan isi buffer cincin dengan dmesgperintah. .

Sebagian besar hard disk nyata mendukung SMART dan dapat Anda gunakan smartctluntuk mencoba dan mendiagnosis kesehatan disk.

Bergantung pada pesan kesalahan, Anda dapat memutuskan masih aman untuk menggunakan sistem file dan mengembalikannya dengan kondisi baca-tulis mount -o remount,rw /

Secara umum, kesalahan disk adalah prekursor untuk menyelesaikan kegagalan disk. Sekarang adalah waktu untuk membuat cadangan data Anda atau untuk mengkonfirmasi status cadangan yang ada.


ya saya punya data cadangan. Bisakah Anda melihat pertanyaan saya lagi? Saya menemukan sesuatu di dmesg dan melakukan edit kecil di pertanyaan saya.
s1c

Biasanya saya akan mengharapkan kesalahan-kesalahan ext4 dikelilingi dengan kesalahan yang berhubungan dengan IO atau perangkat karena kemungkinan besar masalahnya bukan sistem file seperti itu, tetapi disk yang mendasarinya. Lihat misalnya askubuntu.com/questions/141862/...
HBruijn

Satu pertanyaan lagi. Mungkinkah karena partisi yang dipasang (penyimpanan SAN / NAS)? Saya memilikinya tentu saja dalam file fstab saya didefinisikan.
s1c

Dalam pengalaman saya hanya sistem file yang mengalami kesalahan IO yang dipasang hanya-baca, baik partisi lain atau pembagian jarak jauh tidak boleh mendapatkan remount hanya-baca.
HBruijn

Kami melakukan mount -o remount, rw / dan kemudian melakukan chmod ke file yang berfungsi untuk kami. ketika selesai dengan perubahan, lakukan mount -o remount, ro / untuk mengembalikan sistem file menjadi read-only.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.