Як зупинити використання вбудованого шифрування домашнього каталогу?


106

У мене є нова установка Ubuntu 10.04 із зашифрованим домашнім каталогом (з використанням вбудованого шифрування, запропонованого установщиком Ubuntu).

Який найпростіший спосіб зупинити використання шифрування? (Тобто, щоб дешифрувати домашній каталог назавжди.)

(Це створює мені проблеми з оновленнями ядра, і я просто хотів би скоротити всі клопоти, які виникають у мене з цією установкою.)

Відповіді:


76

Погукаючи, я знайшов цю публікацію :

Не виховувати стару тему, але якщо хтось помилився, намагаючись дотримуватися цих інструкцій, ось що я зробив.

  1. Створіть резервну копію домашнього каталогу під час входу sudo cp -rp /home/user /home/user.backup

    1.1. Перевірте, чи у вас є все домашнє резервне копіювання !!!

  2. перезавантажте корінь через grub
  3. Видаліть домашній каталог rm -rf /home/user
  4. Вийміть пакети apt-get remove ecryptfs-utils libecryptfs0
  5. Відновіть домашній каталог mv /home/user.backup /home/user
  6. перезавантажити
  7. Видаліть будь-яку з цих .Private .ecryptfsпапокrm -rf ~/.Private rm -rf ~/.ecryptfs
  8. Так!
Це працювало для мене. Дозвіл файлів домашньої папки залишається недоторканим і не завантажує Dropbox чи git repos. Чомусь моя нова установка на Ubuntu 9.10 не зробила б першої команди. Просто переконайтесь, що ви продумали процес під час використання rm -rf. Просто хотів опублікувати це не лише для мого запису, але й для всіх, хто стикається з проблемами.

Деякі примітки

  • перезавантаження в root через grub було для мене трохи незрозумілим; Я не перезавантажувався, просто перейшов на використання root (інший обліковий запис користувача з sudoпривілеями працював би однаково добре).
  • Перш ніж видалити пакунки ecryptfs-utilsі libecryptfs0попрацювали, мені потрібно було видалити /home/.ecryptfs/<myusername>. (Він скаржився, що ecryptfs-utilsвикористовувався.)

Крім цього, це працювало для мене. Це далеко не просто, тому сміливо публікуйте кращі рішення!


Я прийму це так, як це працювало для мене, але, як я вже сказав, не соромтеся розмістити щось простіше чи краще!
Джонік

3
Це також спрацювало для мене 12.10. Також мені потрібно було /home/.ecryptfs/<myusername>спочатку видалити . Крім того, мені довелося перезавантажити /в кореневій консолі, але, мабуть, це вже інша історія. Дякую!
Константіній

1
Працював також 12.04. Єдине, якщо ви переходите на root ( sudo su) замість "перезавантаження на root через grub", це працює, але вам потрібно вийти з /home/user( cd /homeнаприклад) і видалити, umount /home/userщоб відключити домашній dir перед використанням rm -rf. Вам також потрібно, rm -rf /home/user.backup/.ecryptfsперш ніж видалити 2 пакети.
Лоран

3
+1 Це легше зробити через SSH, жоден GRUB не має справу з чи намагається уникнути будь-якого монтажу. Просто обережно видаляйте /home/.ecryptfs. Мабуть, він має символьне посилання, що вказує на / home / username. Я втратив усі свої дані.
htoip

2
На кроці 1, якщо ви отримаєте помилку: /home/<username>/.gvfs: Cannot stat: Permission deniedви завжди можете використовувати rsync:rsync -avz --exclude '*.gvfs' /home/<username> /home/<username>.backup
tir38

40

Ось ви, сподівайтеся, це допоможе (див. ecryptfs-setup-private(1)):

$ ecryptfs-setup-private --undo

Вихідні твердження:

Якщо ви хочете видалити налаштування приватного каталогу eCryptfs, вам потрібно буде дуже обережно виконати такі дії вручну:

  1. Отримайте точку монтажу вашого приватного каталогу

    $ PRIVATE=`cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private`
    
  2. Переконайтесь, що ви перемістили всі відповідні дані зі свого $PRIVATEкаталогу

  3. Відключіть свій зашифрований приватний каталог

    $ ecryptfs-umount-private
    
  4. Зробіть свій приватний каталог знову доступним для запису

    $ chmod 700 $PRIVATE
    
  5. Видалити $PRIVATE, ~/.Private,~/.ecryptfs

    Примітка: ЦЕ ДУЖЕ ПОСТІЙНО, БУДЕ ДУЖЕ ДАВЛЕНО

    $ rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Видаліть утиліти (це специфічно для вашого дистрибутива Linux)

    $ sudo apt-get remove ecryptfs-utils libecryptfs0
    

Дякую. Я вже вирішив це, але, мабуть, це корисно для інших.
Джонік

@Jonik Чи вдалось увійти в систему .ecryptfs/jonik/.Privateналежним чином після оновлення ядра, або ви створили резервну копію та скасувати шифрування?
ізоморфізми

3
Це стосується лише зашифрованого каталогу "~ / Private", а не до зашифрованого домашнього каталогу, як зазначено в ОП. Дивіться сторінку help.ubuntu.com/community/EncryptedHome для відмінностей.
lmeurs

15

Перше, що потрібно зробити: РЕЗЕРВУЙТЕ СВОЙ ДОМ Я не можу сказати це голосніше ... в основному скасування шифрування еквівалентно перезавантаженню ( rm -rf) вашого будинку, який насправді прихований кріпленням.

Другий крок: вийдіть із будь-якого менеджера робочого столу та перейдіть до віртуальної консолі ( CTRL-ALT-F1)

Нарешті: для деталей:

ecryptfs-setup-private --undo

Якщо ви хочете видалити налаштування приватного каталогу eCryptfs, вам потрібно буде дуже обережно виконати такі дії вручну:

  1. Отримайте точку монтажу вашого приватного каталогу PRIVATE= cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private

  2. Переконайтесь, що ви перемістили всі відповідні дані зі свого $PRIVATEкаталогу

  3. Відключіть свій зашифрований приватний каталог

    ecryptfs-umount-private
    
  4. Зробіть свій приватний каталог знову доступним для запису

    chmod 700 $PRIVATE
    
  5. Видалити $PRIVATE, ~/.Private, ~/.ecryptfs Примітка: ЦЕ ДУЖЕ ПОСТІЙНИЙ, ДУЖЕ обережні

      rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Видаліть утиліти

     sudo apt-get remove ecryptfs-utils libecryptfs0
    

Я б сказав, що крок 5 трохи не так: видаляти не потрібно $PRIVATE, що було для мене моїм домом….

Після .Privateта .ecryptfsвидалення просто відновіть дім:]


5
Що робити, якщо ви зашифрували більше половини місця на жорсткому диску? Чи є вихід, не купуючи черговий привід?
ізоморфізми

@hhlp Цікаво, що вам не потрібно було видаляти $ PRIVATE. Це не ваш домашній каталог користувача? Чи означає це, що не потрібно видаляти власну директорію, окрім того, що резервна копія завжди важлива?
XavierStuvw

8

Ці кроки будуть працювати в серверному середовищі

Крок 1. Створіть резервну копію домашнього каталогу

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

Крок 2. Перевірте, чи все резервне копіювання

sudo ls -al /home/$USER.backup

Крок 3: Вимкніть домашню папку, оскільки програма шифрування зазвичай монтує її до точки монтажу, наприклад /home/$USER, також відомої як $HOME. Ви можете підтвердити свою точку кріплення, запустивши df -h $HOME. Вам доведеться cd /tmp(або якийсь інший не- $HOMEкаталог), щоб мати можливість відключити$HOME

cd / tmp
sudo umount / home / $ USER

Крок 4: Видаліть стару домашню папку

sudo rm -rf / home / $ USER

Крок 5. Видаліть програмний файл шифрування

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

Крок 6: Видаліть програми із шифрування із системи

sudo apt-get delete ecryptfs-utils libecryptfs0

Крок 7: Відновлення незашифрованої домашньої папки назад до її початкового шляху

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

Крок 8: Змініть право власності на відновлену папку назад на свого користувача

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

Крок 9: Вихід / вхід, щоб переконатися, що всі користувацькі речі перезавантажуються правильно (або що помилки будуть виникати, коли ви пам'ятаєте, що ви зробили)


Блискуча. Дякую за це чітке та чітке керівництво. Допомогли мені!
Джеймс Лалор

Я також прибирав /home/.ecryptfs/$USER з sudo rm -rf /home/.ecryptfs/$USER
JimB

5

Додавши ще один посібник до довгого списку після того, як я зрозумів, що найбільш нав'язливі кроки, згадані в інших місцях, не потрібні.

Мій посібник не потребує перезавантаження, і я успішно закінчив його через SSH . Він також повинен працювати, якщо на машині є інші кріплення eCryptfs .

Єдина неочевидна вимога - мати можливість увійти як інший користувач із sudoдоступом.

  1. Увійдіть як користувач із зашифрованим домашнім каталогом (називається userв цьому посібнику).

  2. Просто, щоб стежки в наступних кроках були простими та симетричними:

    cd /home
    
  3. Дублюйте розшифрований вміст домашньої папки в інший каталог.

    sudo cp -rp user user.new
    
  4. Вихід ( exitабо logout). Увійти як черговий судорожник.

  5. Переконайтесь, що кріплення eCryptfs відключено. Не роби umountце вручну, це може призвести до втрати даних! (Досвідчений сам. У мене був ще один сеанс SSH із userвходом у систему.)

    mount | grep ecryptfs
    

    Вихід повинен бути порожнім. Або, якщо є інші кріплення eCryptfs, він не повинен містити /home/user.

  6. Так само, як і крок 2.

    cd /home
    
  7. Позначте дублікат як не керований за допомогою eCryptfs. (Немає необхідності видаляти пакети eCryptfs, особливо коли є інші кріплення eCryptfs.)

    sudo rm user.new/.ecryptfs user.new/.Private
    
  8. Перемістіть незашифрований домашній каталог на місце.

    sudo mv user user.old && sudo mv user.new user
    
  9. Увійдіть як userі переконайтеся, що все працює, і eCryptfs не працює.

    mount | grep ecryptfs
    
  10. Видаліть оригінальний вміст userдомашньої папки та зашифровані дані.

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

1
  • якщо ви можете створити резервну копію на зовнішньому сховищі, зробіть це. (Не потрібно безпосередньо, але завжди добре перед маніпулюванням файлами.)

  • знайомтесь tty, хоча б трохи. (Натисніть Ctrl Alt F7і Ctrl Alt F1т. Д.) Вам потрібно буде працювати з двома tty. Один корінь і один з ваших основних користувачів.

  • увійдіть як rootна окрему tty, створіть новий домашній каталог

    mkdir /home/user.newdir
    chown user:user /home/user.newdir
    
  • вийдіть із графічного сеансу. Ви можете перезавантажити, щоб переконатися, що жодна програма не працює від вашого звичайного користувача.

  • увійдіть, як звичайний користувач, окремим файлом, перемістіть усі файли до нового пункту призначення:

    mv ~/* /home/user.newdir/
    
  • використовуючи roottty, перейменуйте каталоги:

    mv /home/user /home/user.encfs
    mv /home/user.newdir /home/user
    
  • все повинно працювати зараз. :) Після того, як ви будете готові, видалити старі файли /home/.encryptfs, /home/user.encfs, /home/user/.Private, /home/user/.encryptfs. Якщо хочете, ви можете перейменувати їх спочатку та видалити пізніше.


1

Тут я не використовував жодної відповіді. Натомість (в Ubuntu Studio 14.04):

  1. Я скопіював усі файли, які хотів зберегти, особливо всі. * Файли, у каталог поза $ HOME.
  2. Я створив нового користувача (Система> Користувачі та групи) і додав цього користувача до групи sudo. Я залишив прапорець "Шифрувати домашню папку для захисту конфіденційних даних".
  3. Я вийшов із системи та ввійшов у систему назад, коли новий користувач потім видалив свій початковий обліковий запис, перевіривши, чи був перший числовий UID (розширені параметри), вибравши опцію для видалення файлів у моєму початковому $ HOME. Це завершено, але з "невідомою помилкою". Перевірившись / вдома, я міг побачити, що мого старого $ HOME вже немає
  4. Я знову створив свій оригінальний обліковий запис користувача, щоб переконатися, що він створений з оригінальним числовим UID, яким він був, і обов'язково залиште поле "Шифрувати домашню папку для захисту конфіденційних даних".
  5. Я видалив нову, практично порожню, версію свого оригінального каталогу $ HOME і перейменував резервну копію $ HOME в оригінальну $ HOME і вийшов із системи.
  6. Я увійшов у свій новий оригінальний обліковий запис, і це було так, ніби нічого не сталося.
  7. Я перевірив / home, щоб знайти каталог .ecryptfs, який я видалив без поганого ефекту.

Я не бачу причин, що видалення пакета, який передбачає зашифровані домашні каталоги, не повинно бути необов’язковим, і я відклав видалення нового облікового запису користувача, створеного для цієї мети, оскільки думаю, що це може стати в нагоді в майбутньому.

Моя причина для цього? Старий комп’ютер виглядає як невдалий. Коли це не вдається, я хочу мати доступ до HD на іншому комп'ютері без зайвих проблем.


1

Пояснення Джоніка працює добре. Але замість кроку 2 я зробив:

  1. Вийти
  2. Натисніть Ctrl+ F4. Має відкритися інтерфейс командного рядка.
  3. Вхід як корінь
  4. rm -rf .ecryptfs

Потім замість кроку 6: Натисніть Ctrl+ F7. Якщо екран для входу в графічний інтерфейс не відображається, натисніть Ctrl+ F8.


-3

Просте рішення, яке працювало для мене:

У вас повинен бути інший користувач із доступом до sudo

  1. Перезавантажте
  2. На екрані входу натисніть CTRL+ ALT+F1
  3. Увійдіть як інший користувач (з доступом до sudo)
  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. Увійдіть як ваш користувач і насолоджуйтесь домашнім режимом без шифрування;)

3
Це видалить усі модифікації, зроблені після ввімкнення шифрування. Мабуть, це нормально для системи, щойно встановлена, але ви повинні це чітко згадати.
Мелебій
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.