Rumah  >  Artikel  >  Tutorial sistem  >  Katakan selamat tinggal kepada kebimbangan terpadam fail secara tidak sengaja dalam Linux, ibu tidak perlu risau lagi

Katakan selamat tinggal kepada kebimbangan terpadam fail secara tidak sengaja dalam Linux, ibu tidak perlu risau lagi

WBOY
WBOYke hadapan
2023-12-30 15:55:12538semak imbas

Panduan pantas untuk menggunakan Terminal untuk memulihkan fail yang dipadam dengan proses yang masih berjalan pada sistem Linux anda.

Fail yang dipadam boleh dipulihkan dalam banyak kes, seperti apabila fail tersebut mempunyai proses aktif yang beroperasi padanya dan sedang digunakan oleh satu atau berbilang pengguna. Dalam sistem Linux, setiap proses yang sedang berjalan diberikan ID, dipanggil pengecam proses (PID), dan disimpan dalam direktori /proc. Inilah yang kita perlukan untuk memulihkan fail yang dipadam dalam proses yang masih berjalan (dengan PID).

Kira cincang MD5 bagi fail asal

Sebelum memadam, kami akan mengira MD5 fail. Dengan cara ini kita boleh membandingkan cincang MD5 asal dengan cincang MD5 bagi fail yang dipulihkan. Proses ini akan memastikan bahawa integriti fail termampat yang kami pulihkan adalah sama dan ia tidak rosak.

md5sum opengapps.zip >> md5-opengapps.txt

Untuk memaparkan kandungan fail teks.

cat md5-opengapps.txt

86489b68b40d144f0e00a0ea8407f7c0 opengapps.zip

Selepas menyemak cincangan MD5 fail yang dimampatkan. Kami memastikan fail termampat terbuka (Anotasi LCTT: Di sini kami menggunakan penggelek fail, program penyahmampatan antara muka grafik untuk memastikan fail termampat terbuka, yang dibina ke dalam persekitaran GNOME; dalam persekitaran desktop, gunakan alatan desktop untuk membuka arkib termampat Ia juga boleh memainkan peranan yang sama Selain itu, contoh dalam artikel ini tidak begitu sesuai Jika fail konfigurasi terbuka proses perkhidmatan dipadamkan, maka pemulihan ini sangat bermakna) dan padamkannya. Selepas itu, kami akan memulakan proses pemulihan fail dengan langkah berikut:

rm opengapps.zip
Proses pemulihan fail dipadamkan

Seperti yang kami nyatakan sebelum ini, proses berjalan adalah dalam direktori /proc. Kita boleh mencari proses yang diperlukan dalam direktori ini menggunakan arahan berikut:

Memandangkan kami sudah tahu bahawa nama fail termasuk sambungan .zip, kami boleh mencari menggunakan sambungan .zip. Ia akan mengehadkan hasil keluaran dan menunjukkan proses yang diperlukan.

ps -axu | grep .zip

m 13119 0.8 1.0 121788 30788 ? Sl 06:17 0:00 file-roller

/home/m/Downloads/Compressed/opengapps.zip

m 13164 0.0 0.0 5108 832 pts/20 S+ 06:18 0:00 grep --color=auto .zip

Kemudian kita akan pergi ke direktori yang mengandungi PID 13119 dan membuka subdirektori fd.

cd /proc/13119/fd

Direktori fd (deskriptor fail) mengandungi berbilang fail, termasuk yang perlu kami pulihkan. Fail ini dipautkan ke fail asal sebagai pautan keras.

Semua fail dalam direktori fd dipautkan secara numerik kepada "nama fail". Oleh itu, untuk menentukan mana antara fail ini dipautkan ke fail asal, kami akan menyenaraikan direktori /fd dengan pilihan penyenaraian verbose.

ls -l

total 0

lr-x------ 1 m m 64 Jul 14 06:17 0 -> /dev/null

lrwx------ 1 m m 64 Jul 14 06:17 1 -> socket:[26161]

lrwx------ 1 m m 64 Jul 14 06:17 10 -> anon_inode:[eventfd]

lr-x------ 1 m m 64 Jul 14 06:17 11 -> anon_inode:inotify

lrwx------ 1 m m 64 Jul 14 06:17 12 -> socket:[5752671]

lr-x------ 1 m m 64 Jul 14 06:17 13 -> /home/m/Downloads/Compressed/opengapps.zip (deleted)

lrwx------ 1 m m 64 Jul 14 06:17 2 -> socket:[26161]

lrwx------ 1 m m 64 Jul 14 06:17 3 -> anon_inode:[eventfd]

lrwx------ 1 m m 64 Jul 14 06:17 4 -> anon_inode:[eventfd]

lrwx------ 1 m m 64 Jul 14 06:17 5 -> socket:[5751361]

lrwx------ 1 m m 64 Jul 14 06:17 6 -> anon_inode:[eventfd]

lrwx------ 1 m m 64 Jul 14 06:17 7 -> anon_inode:[eventfd]

lrwx------ 1 m m 64 Jul 14 06:17 8 -> socket:[5751363]

lrwx------ 1 m m 64 Jul 14 06:17 9 -> socket:[5751365]

Seperti yang anda lihat dalam output terminal, fail asal "opengapps.zip" telah dipadamkan, tetapi ia masih dipautkan kepada nama fail 13 dengan proses PID 13119. Walau bagaimanapun, kami masih boleh memulihkannya dengan menyalin fail yang dipautkan ke tempat yang selamat.

cp 13 /home/m/Downloads/Compressed

Selepas fail disalin. Kami akan kembali ke direktori yang mengandungi fail yang dipulihkan dan menamakan semulanya menggunakan arahan berikut.

mv 13 opengapps-recovered.zip
Kira cincangan MD5 bagi fail yang dipulihkan

Memandangkan kami telah memulihkan fail. Mari kita periksa integriti fail, hanya untuk memastikan fail itu tidak rosak dan sama seperti yang asal. Terdahulu kami telah menyimpan cincangan MD5 bagi fail asal.

md5sum opengapps-recovered.zip >> md5-opengapps.txt

Arahan ini akan menyemak cincang MD5 bagi fail dan tambah cincang MD5 bagi fail yang baru dipulihkan dalam fail untuk membandingkan dua cincang MD5 dengan mudah.

Kandungan fail teks boleh dipaparkan untuk membandingkan nilai cincang MD5 bagi fail asal dan fail yang dipulihkan.

cat md5-opengapps.txt

86489b68b40d144f0e00a0ea8407f7c0 opengapps.zip

86489b68b40d144f0e00a0ea8407f7c0 opengapps-recovered.zip

Cincangan MD5 bagi fail yang dipulihkan adalah sama. Jadi, kami berjaya memulihkan fail kami yang telah dipadamkan sebelum ini dengan integriti fail yang konsisten dan berfungsi dengan baik.

妈妈再也不用担心在 Linux 中误删除文件了

Nota: Dalam sesetengah kes, sesetengah fail tidak dapat dilihat dengan arahan ps -axu. Jadi, cuba semak program yang sedang berjalan dan pulihkan fail daripadanya.

Andaikan kita mempunyai video dengan sambungan .avi dimainkan menggunakan pemain media Totem. Apa yang anda perlu lakukan ialah menyemak PID Totem dan ikut arahan yang sama yang dinyatakan dalam contoh ini.

Untuk mencari PID program yang sedang berjalan, gunakan arahan berikut, diikuti dengan nama program.

pidof 程序名

Atas ialah kandungan terperinci Katakan selamat tinggal kepada kebimbangan terpadam fail secara tidak sengaja dalam Linux, ibu tidak perlu risau lagi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam