Yerleşik ev dizini şifrelemeyi kullanmayı nasıl bırakabilirim?


106

Şifreli ev dizini ile yeni bir Ubuntu 10.04 kurulumum var (Ubuntu kurulum programı tarafından sunulan dahili şifrelemeyi kullanarak).

Şifreleme kullanmayı bırakmanın en kolay yolu nedir? (Yani, ana dizini kalıcı olarak şifresini çözmek için.)

(Bana çekirdek güncellemeleriyle ilgili sorunlar veriyor ve bu yüklemeyle yaşadığım tüm güçlükleri azaltmak istiyorum.)

Yanıtlar:


76

Googling, bu yazı buldum :

Eski bir konu açmamak, ancak herhangi birinin bu talimatları yerine getirmeye çalışırken hata yapması durumunda, işte yaptığım şey şu.

  1. Giriş yaparken, ana dizini yedekle sudo cp -rp /home/user /home/user.backup

    1.1. Ev yedeklemenizde her şeyin olup olmadığını kontrol edin !!!

  2. grub aracılığıyla kök içine yeniden başlatma
  3. Ana dizininizi silin rm -rf /home/user
  4. Paketleri çıkarın apt-get remove ecryptfs-utils libecryptfs0
  5. Ana dizininizi geri yükleyin mv /home/user.backup /home/user
  6. reboot
  7. Bu .Private .ecryptfsklasörlerden herhangi birini kaldırınrm -rf ~/.Private rm -rf ~/.ecryptfs
  8. Yuppi!
Bu benim için çalıştı. Giriş klasörü dosya izinleri bozulmadan kalıyor ve Dropbox veya git repolarını canlandırmıyor. Bazı nedenlerden dolayı Ubuntu 9.10'daki yeni kurulumum ilk komutu yapmıyordu. Kullanırken işlemi düşündüğünüzden emin olun rm -rf. Sadece bunu kayıtlarım için değil, sorunla karşılaşan herkes için göndermek istedim.

Bazı notlar

  • grub aracılığıyla kök içine yeniden başlatmak biraz belirsizdi; Yeniden başlatmadım, sadece root kullanmaya başladım ( sudoayrıcalıklara sahip başka bir kullanıcı hesabı eşit derecede işe yarayacaktı).
  • Paketleri çıkarmadan ecryptfs-utilsve libecryptfs0çalışmadan önce çıkarmam gerekiyordu /home/.ecryptfs/<myusername>. ( ecryptfs-utilsKullanımda olduğundan şikayet etti .)

Bunun dışında, bu benim için çalıştı. Basit olmaktan çok uzak, bu yüzden daha iyi çözümler göndermekten çekinmeyin!


Bunu benim için çalıştığı gibi kabul edeceğim, ancak dediğim gibi, daha basit veya daha iyi bir şey göndermekten çekinmeyin!
Jonik

3
Bu benim için 12.10 da çalıştı. Ayrıca önce silmeye de ihtiyacım vardı /home/.ecryptfs/<myusername>. Ayrıca, /kök konsolda yeniden bir araya gelmem gerekti , ama sanırım bu başka bir hikaye. Teşekkürler!
Constantinius

1
12.04 de çalıştı. Tek şey, sudo su"grub üzerinden kök yeniden başlatmak" yerine root ( ) işlevine geçerseniz işe yarar, ancak kullanmadan önce ana dizinin bağlantısını kesmek için /home/user( cd /homeörneğin) umount /home/userevden çıkmanız ve çıkarmanız gerekir rm -rf. Ayrıca rm -rf /home/user.backup/.ecryptfs2 paketi çıkarmadan önce yapmanız gerekir .
laurent

3
+1 Bu, SSH üzerinden yapılması daha kolaydır, uğraşacak GRUB'unuz yoktur veya herhangi bir montajdan kaçınmaya çalışırlar. Yalnızca /home/.ecryptfs dosyasını silerken dikkatli olun. Görünüşe göre / home / kullaniciadi ismini gösteren bir işaret bağlantısı var. Tüm verilerimi kaybettim.
saat

2
1. adım için bir hata /home/<username>/.gvfs: Cannot stat: Permission deniedalırsanız: rsync:rsync -avz --exclude '*.gvfs' /home/<username> /home/<username>.backup
tir38

40

İşte, bu yardımcı olur umarım (bkz. ecryptfs-setup-private(1)):

$ ecryptfs-setup-private --undo

Çıktı iddia ediyor:

ECryptfs Özel Dizin kurulumunuzu kaldırmak isterseniz, aşağıdaki işlemleri elle dikkatlice yapmanız gerekecektir:

  1. Özel dizin bağlama noktanızı alın

    $ PRIVATE=`cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private`
    
  2. İlgili tüm verileri $PRIVATEdizininizden çıkardığınızdan emin olun.

  3. Şifreli özel dizininizin bağlantısını kaldırın

    $ ecryptfs-umount-private
    
  4. Özel dizininizi tekrar yazılabilir yap

    $ chmod 700 $PRIVATE
    
  5. Kaldır $PRIVATE, ~/.Private,~/.ecryptfs

    Not: bu çok kalıcı, çok dikkatli olun

    $ rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Yardımcı programları kaldırın (bu, Linux dağıtımınıza özgüdür)

    $ sudo apt-get remove ecryptfs-utils libecryptfs0
    

Teşekkürler. Çoktan çözdüm, ama sanırım bu diğerleri için faydalı.
Jonik

@Jonik .ecryptfs/jonik/.PrivateÇekirdek güncellemesinden sonra doğru şekilde oturum açabildiniz mi , yoksa şifrelemeyi yedekleyip geri mi aldınız?
izomorfizmalar

3
Bu sadece "~ / Özel" şifreli bir dizin için geçerlidir ve OP'nin belirtildiği gibi şifreli bir giriş dizini için geçerli değildir. Bkz help.ubuntu.com/community/EncryptedHome farklılıkları.
Ağustos'ta

15

Yapmanız gereken ilk şey: EVİNİZİ YEDEKLEME Sesini yükseltemiyorum ... temelde şifrelemeyi geri almak rm -rf, aslında bir montaj tarafından gizlenmiş olan evinizi sıfırlamaya ( ) eşdeğerdir .

2. adım: herhangi bir masaüstü yöneticisinden çıkın ve sanal bir konsola gidin ( CTRL-ALT-F1)

Son olarak: ayrıntılar için:

ecryptfs-setup-private --undo

ECryptfs Özel Dizin kurulumunuzu kaldırmak isterseniz, aşağıdaki işlemleri elle dikkatlice yapmanız gerekecektir:

  1. Özel dizin bağlama noktanızı alın PRIVATE= cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private

  2. İlgili tüm verileri $PRIVATEdizininizden çıkardığınızdan emin olun.

  3. Şifreli özel dizininizin bağlantısını kaldırın

    ecryptfs-umount-private
    
  4. Özel dizininizi tekrar yazılabilir yap

    chmod 700 $PRIVATE
    
  5. Kaldır $PRIVATE, ~/.Private, ~/.ecryptfs Not: BU ÇOK KALICI IS, çok dikkatli olmak

      rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Yardımcı programları kaldırın

     sudo apt-get remove ecryptfs-utils libecryptfs0
    

Adım 5’in biraz yanlış olduğunu söyleyebilirim: Silmeme gerek yok $PRIVATE, ki bu benim için evimdi

Sonra .Privateve .ecryptfssilme, sadece evinizi geri yükleyin:]


5
Ya sabit disk alanınızın yarısından fazlasını şifrelediyseniz? Başka bir sürücü almadan bir çıkış yolu var mı?
izomorfizmalar

@ hhlp İhtiyacınız olan ilginç $ $ PRIVATE. Bu sizin kullanıcı giriş dizininiz değil mi? Birinin kendi dizinini silmesinin gerekmediği, bir yedeklemenin her zaman önemli olduğunu kaydettiği anlamına mı geliyor?
XavierStuvw

8

Bu adımlar bir sunucu ortamında çalışacak

Adım 1: Ana dizininizi yedekleyin

sudo cp -rp / home / $ USER /home/$USER.backup

Adım 2: Her şeyin yedek olup olmadığını kontrol edin

sudo ls -al /home/$USER.backup

Adım 3: Giriş klasörünü çıkarın, çünkü şifreleme programı genellikle örneğin " /home/$USERolarak da bilinen" bağlama noktasına bağlar $HOME. Bağlama noktanızı çalıştırarak onaylayabilirsiniz df -h $HOME. Bağlantısını kesebilmek için cd /tmp(veya başka bir $HOMEdizinde olmayan )$HOME

cd / tmp
sudo umount / home / $ USER

Adım 4: Eski giriş klasörünü silin

sudo rm -rf / home / $ USER

Adım 5: Encrytion program dosyasını kaldır

sudo rm -rf /home/$USER.backup/.ecryptfs

Adım 6: Şifreleme olanaklarını sistemden kaldırın

sudo apt-get kaldır ecryptfs-utils libecryptfs0

Adım 7: Şifrelenmemiş ana klasörü geri özgün yoluna geri yükleyin

sudo mv /home/$USER.backup / home / $ USER

Adım 8: Geri yüklenen klasörün sahipliğini tekrar kullanıcınıza değiştirme

sudo chown -R $ (id -u): $ (id -g) / ev / $ USER

Adım 9: Tüm kullanıcı öğelerinin doğru şekilde başlatıldığından emin olmak için oturumu kapat / Oturum aç (veya ne yaptığını hatırladığında bu hatalar olur)


Parlak. Bu açık ve özlü rehber için teşekkür ederiz. Bana yardım etti!
James Lalor

Ayrıca /home/.ecryptfs/$USER 'i sudo rm -rf /home/.ecryptfs/$USER
JimB ile

5

Başka bir yerde bahsettiğim en müdahaleci adımların gerekli olmadığının farkına vardıktan sonra uzun listeye başka bir rehber eklemek.

Rehberimin yeniden başlatılması gerekmiyor ve SSH üzerinden başarıyla bitirdim . Makinede başka eCryptfs bağlantıları varsa da çalışmalıdır .

Açık olmayan tek şart, sudoerişimi olan başka bir kullanıcı olarak giriş yapabilmektir .

  1. Şifreli giriş dizini ile kullanıcı olarak giriş yapın ( userbu rehberde anılır ).

  2. Sadece aşağıdaki adımlardaki yolları basit ve simetrik tutmak için:

    cd /home
    
  3. Şifresi çözülen giriş klasörü içeriğini başka bir dizine kopyalayın.

    sudo cp -rp user user.new
    
  4. Çıkış yap ( exitveya logout). Başka bir sudoer olarak giriş yapın.

  5. ECryptfs takısının takılı olmadığından emin olun. Manuel olarak yapmayın umount, veri kaybına neden olabilir! (Kendimi tecrübeli. Giriş yapmış bir SSH seansım daha vardı user.)

    mount | grep ecryptfs
    

    Çıktı boş olmalıdır. Başka eCryptfs bağlar varsa, bu özellik gerekir değil içerirler /home/user.

  6. Tıpkı 2. adımda olduğu gibi.

    cd /home
    
  7. Kopyayı eCryptfs ile yönetilmeyen olarak işaretleyin. (Özellikle başka eCryptfs bağları olduğunda, eCryptfs paketlerini kaldırmaya gerek yoktur.)

    sudo rm user.new/.ecryptfs user.new/.Private
    
  8. Şifrelenmemiş ana dizini yerine getirin.

    sudo mv user user.old && sudo mv user.new user
    
  9. Olarak giriş userve her şeyin çalışır ve eCryptfs tekme gelmez kontrol edin.

    mount | grep ecryptfs
    
  10. userEv klasörünün orijinal içeriğini ve şifreli verileri kaldırın .

    rm -r /home/user.old
    sudo rm -r /home/.ecryptfs/user
    

1
  • harici bir depoya yedekleme yapabilirseniz, bunu yapın. (Doğrudan gerekli değil, ancak dosya manipülasyonundan önce her zaman iyidir.)

  • ttyEn azından biraz aşina olmak . (Basın Ctrl Alt F7, Ctrl Alt F1vb.) ttyİkis ile çalışmanız gerekecektir . Bir kök ve ana kullanıcınızdan biri.

  • rootayrı bir tty olarak giriş yapın, yeni bir giriş dizini oluşturun

    mkdir /home/user.newdir
    chown user:user /home/user.newdir
    
  • grafiksel oturumu kapatın. Hiçbir programın normal kullanıcınızın altından çalışmadığından emin olmak için yeniden başlatabilirsiniz.

  • normal kullanıcınız olarak ayrı bir dosyada oturum açın, tüm dosyalarınızı yeni hedefe taşıyın:

    mv ~/* /home/user.newdir/
    
  • roottty'yi kullanarak, dizinleri yeniden adlandırın:

    mv /home/user /home/user.encfs
    mv /home/user.newdir /home/user
    
  • Her şey artık çalışmalıdır. :) Hazır olduğunuzda, eski dosyaları kaldırmak /home/.encryptfs, /home/user.encfs, /home/user/.Private, /home/user/.encryptfs. İsterseniz önce onları yeniden adlandırabilir ve daha sonra kaldırabilirsiniz.


1

Buradaki cevapların hiçbirini kullanmadım. Bunun yerine (Ubuntu Studio 14.04'te):

  1. Saklamak istediğim tüm dosyaları, özellikle de. * Dosyalarını $ HOME dışındaki bir dizine kopyaladım.
  2. Yeni bir kullanıcı oluşturdum (Sistem> Kullanıcılar ve Gruplar) ve bu kullanıcıyı sudo grubuna ekledim. "Hassas verileri korumak için ana klasörü şifrele" kutucuğunu işaretlemeden bıraktım.
  3. Çıkış yaptım ve yeni kullanıcı olarak tekrar giriş yaptım, sonra orijinal hesabımı sildim, ilk sayısal numaranın ne olduğunu görmek için kontrol ettim (gelişmiş seçenekler), orijinal $ HOME'umdaki dosyaları silme seçeneğini seçtim. Bu tamamlandı ancak "bilinmeyen bir hatayla" oldu. Giriş / giriş yapma Eski $ HOME cihazımın gittiğini görebildim
  4. Orijinal kullanıcı hesabımı, orijinal sayısal UID ile oluşturulduğunu kontrol etmek için kontrol ederek yeniden oluşturdum ve "Hassas verileri korumak için ana şifreyi şifrele" kutusunu işaretli bırakmadığınızdan emin olarak.
  5. Orijinal $ HOME dizininin yeni, hemen hemen boş olan sürümünü sildim ve $ HOME yedeklememi orijinal $ HOME'uma değiştirdim ve çıkış yaptım.
  6. Yeni orijinal hesabıma giriş yaptım ve hiçbir şey olmamış gibi oldu.
  7. Kötü bir etkisi olmadan kaldırdığım bir dizin .ecryptfs bulmak için / home kontrol ettim.

Şifrelenmiş ev dizinleri sağlayan paketi kaldırmanın isteğe bağlı olmaması gerekmiyor ve bu amaçla oluşturduğum yeni kullanıcı hesabını kaldırmayı erteledim, çünkü gelecekte işe yarayabileceğini düşünüyorum.

Bunu yapmak için nedenim? Eski bilgisayar başarısız gibi görünüyor. Başarısız olduğunda, başka bir bilgisayardaki HD'ye sorunsuz bir şekilde erişebilmek istiyorum.


1

Jonik'in açıklaması iyi çalışıyor. Ancak 2. adım yerine, yaptım:

  1. Çıkış Yap
  2. Ctrl+ Tuşlarına basın F4. Bir komut satırı arayüzü açılmalıdır.
  3. Root olarak giriş yapın
  4. rm -rf .ecryptfs

Ardından, adım 6 yerine: Ctrl+ tuşuna basın F7. GUI giriş ekranınız görünmezse, Ctrl+ tuşuna basın F8.


-3

Benim için işe yarayan basit çözüm:

Sudo erişimi olan başka bir kullanıcı olmalı

  1. Yeniden Başlatma
  2. Giriş ekranında CTRL+ ALT+ tuşlarına basınF1
  3. Diğer kullanıcı olarak giriş yapın (sudo erişimi olan)
  4. sudo rm -rf /home/youruser/.ecryptfs
  5. sudo rm /home/youruser/.Private
  6. sudo apt-get remove --purge ecryptfs-utils libecryptfs1
  7. sudo reboot
  8. Kullanıcınız olarak giriş yapın ve şifrelemeden evinizin keyfini çıkarın;)

3
Bu, şifrelemeyi açtıktan sonra yapılan tüm değişiklikleri siler. Yeni kurulan bir sistem için muhtemelen sorun yok ama açıkça söylemelisiniz.
Melebius,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.