Ana Sayfa | Linux Analiz | Linuxda Silinmiş/Silinen Dosyaları Kurtarmak-2

Linuxda Silinmiş/Silinen Dosyaları Kurtarmak-2

Font size: Decrease font Enlarge font
image

lsof biraz daha farklı bir mantıktır. Size yine örnekle anlatırsak daha kolay anlaşılır sanırım. Diyelim özlediginiz bir arkadaşınız size xxxx.avi şeklinde bir dosya gönderdi. Özlemle vede mutlulukla bu filmi SEYREDIYORSUNUZ!. Bu ara komut satırına gectiniz ve yine olan oldu. Yanlışlıkla bu dosyayı sildiniz.

----------------- *
Lsof kullanmak |
-----------------

lsof biraz daha farklı bir mantıktır. Size yine örnekle anlatırsak daha kolay anlaşılır sanırım.

Diyelim özlediginiz bir arkadaşınız size xxxx.avi şeklinde bir dosya gönderdi. Özlemle vede mutlulukla bu filmi SEYREDIYORSUNUZ!. Bu ara komut satırına gectiniz ve yine olan oldu. Yanlışlıkla bu dosyayı sildiniz.

Burada seyretmek kelimesini büyük harfler ile yazmamın sebebi, hala programın bu dosya ile bir işlem yapıyor olması. İşte böyle bir durumda bu dosyaları proc dizininden kurtarabiliriz.

Lsof' u kullanmamızın sebebi ise bu programın açık olan dosyaları, yani bir program tarafından işleme tabii tutulan dosyaları listemelesidir. Birçok son Linux dağıtımları, artık bu programı öntanımlı olarak barındırıyorlar.

Artık uygulamaya geçebiliriz sanırım:

# Önce filmi izlemeye başlayalım
$ mplayer arkadasim_ist.avi

# Yine dikkatinizi çekerim, hala film açıkken devam ediyoruz!
# Ve yine facia, yanlış bir komutla dosyayı silelim
$ rm -f eski_filmler *.avi
# aman tanrim ^ bu boşluk da neyin nesi?

# Paniğe kapılmayalım ve devam edelim
# Bir bakalım mplayer programının açtığ .avi dosyalarına
$ lsof -c mplayer | grep avi mplayer

10153 bri 10r REG 3,7 2545962 26708 /film/arkadasim_ist.avi (deleted)

# Here it's.(=Yani bulduk türkçesi )
# Hemen tutun kaçırmayın.. Kopyalayalım dosyamızı
$ cp /proc/10153/fd/10 /tmp/arkadasim_ist.avi

Evet artık dosyamıza /tmp/arkadasim_ist.avi adıyla erişebiliriz.Yeniden merhaba diyebilirsiniz arkadaşınıza

Hemen biraz bilgi verelim: /proc dizininin yapısı diğer dizinlere benzemez(/usr, /home gibi...) Buradaki bilgileri direk olarak Linux çekirdeği sayesinde görürsünüz.
Mesela;

$ ls -F /proc/10153/fd
0 1 10 12 2 3 4 5 6 7 8 9

$ ls -l /proc/10153/fd/10
lr-x------ 1 armish lapis Jan 13 10:39 10 -> /tmp/arkadasim_ist.avi(deleted)

Yani anlayacağınız, buradaki dosyalar sizin asıl dosyanıza bağlı haldedir. Asıl unutmamanız gereken önemli ayrıntı, bu işlemler program hala açık ise geçerlidir. Program dosyayı kullandığı sürece, dosyayı kurtarabilirsiniz. Program kapatıldığı anda süreçde bitmiş olacağı için dosyaya ulaşmakta imkansız olacaktır.

 

Add to: Digg this story Digg

Subscribe to comments feed Comments (0 posted):

Post your comment comment

Please enter the code you see in the image:

  • email Email to a friend
  • print Print version
  • Plain text Text
Tags
No tags for this article
Rate this article
0
Destekleyen: LINUX34.COM