/var/lib를 제거했습니다. 데스크톱을 열 수 없습니다.

/var/lib를 제거했습니다. 데스크톱을 열 수 없습니다.

글쎄, 지금은 무서워요.
폴더를 삭제하려고했는데

sudo rm /var/lib/texmf -r

그러나 대신에 다음과 같이 썼습니다.

sudo rm /var/lib -r

나는 그것에 관한 일부 문서를 읽고 발견했습니다.이 스레드.

마지막 설명(두 번째 페이지)에 있는 모든 단계를 수행해 보았지만 거기에 나열된 일부 작업을 수행하는 방법을 모르겠습니다.
이것이 내가 한 전부입니다:

먼저 다음 폴더를 만들었습니다.

mkdir /var/lib/dpkg/alternatives/  /var/lib/dpkg/info/  /var/lib/dpkg/methods/  /var/lib/dpkg/parts/  /var/lib/dpkg/  triggers/  /var/lib/dpkg/updates/  /var/lib/apt/  /var/lib/aptitude  /var/lib/binfmts/  /var/lib/misc/

sudo를 통해 이 작업을 수행해야 하며 모든 폴더를 생성하기 전에 먼저 하위 폴더를 생성해야 합니다.

그런 다음 나는 다음을 수행했습니다.

aptitude update && aptitude upgrade

여기서 혼란이 시작됩니다.
첫째, @marco.org 사용자가 나열한 경고가 나에게는 나타나지 않았지만(어떤 언어로 작성되었는지조차 잘 모르겠습니다) 대신 일부 Some 파일을 만들 수 없다는 또 다른 오류가 발생했습니다. 폴더(/var/lib의 하위 폴더)가 존재하지 않습니다.
sudo mkdir을 사용하여 폴더를 만들었고 프로세스가 완료되었습니다(기억이 나지 않는 일부 오류가 있음).

그런 다음 위 링크에 언급된 dpkg.status.0 파일을 다음과 같이 이동했습니다.

sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status

(이번에도 폴더를 만들어야 했습니다. 왜 그렇게 했는지는 잘 모르겠지만, 그냥 어딘가에서 읽었습니다.)

따라서 첫 번째 문제는 분명히 해결되었습니다. 그런 다음 다음을 사용하여 일부 프로그램을 설치하려고했습니다.

sudo apt-get install some_program

일부 경고(모두 /var/lib 하위 디렉터리에 파일이 누락된 것에 대한 내용)가 표시되었지만 프로그램이 설치되었으며 아무런 문제 없이 사용할 수 있었습니다.

몇 분 후, 나는 긴장을 풀고 YouTube에서 일부 비디오를 보고 싶었지만(최신 버전의 Chrome을 설치했습니다) 긴장을 풀기보다는 패닉에 빠진 또 다른 이유가 있었습니다:
소리가 출력되지 않았습니다. 동영상 또는 Chrome의 기타 앱(다른 프로그램에는 소리가 있음)

그래서 저는 당황해서 컴퓨터를 껐습니다.
그런 다음 그것을 열고 Linux를 부팅했을 때 데스크탑이 보이지 않고 로그인과 비밀번호를 묻는 콘솔 화면이 나타났습니다.
정보를 제공했는데 폴더가 없어 파일을 생성할 수 없다는 메시지가 나타났습니다. 나는 다음을 사용하여 그것을 만들었습니다:

sudo mkdir /var/lib/ubuntu-release-upgrader

그런 다음 또 다른 메시지가 파일을 이동할 수 없다는 메시지를 표시하여 수동으로 이동했습니다.

sudo mv /usr/lib/ubuntu-release-upgrader/release-upgrader-motd -t /var/lib/ubuntu-release-upgrader/

그런 다음 데스크탑을 보기 위해 시스템을 재부팅했습니다. 하지만 대신 로그인과 비밀번호를 입력하면 동일한 콘솔 화면이 표시됩니다.

Last login: Tue Apr 8 13:19:16 CST 2014 on tty1
Welcome to Linux Mint 15 Olivia (GNU/LINUX 3.8.0-26-generic i686)

Welcome to Linux Mint
* Documentation: http://www.linuxmint.com

이제 GUI 모드로 돌아가거나 내 프로그램을 사용할 수 없습니다.

설치 DVD에서 삭제한 폴더를 가져올 수 있는 방법이 있어야 할 것 같은데, 익숙하지 않고 어떻게 해야 할지 잘 모르겠습니다.
누구든지 나를 도와줄 수 있나요? 진심으로 감사드립니다.


추신: 또한 /var/lib를 삭제한 후 sudo를 사용할 때마다 다음과 같은 줄이 나타납니다.

couldn't mkdir /var/lib/sudo, file not existing

하지만 나중에 해결됐어요

aptitude update && aptitude upgrade

답변1

백업에서 복원합니다.

예, 알고 있습니다. 백업을 하지 않으셨습니다. 자, 이제 백업이 왜 중요한지 이해하셨을 것입니다.

/var/lib중요한 문서가 많이 포함되어 있습니다. 삭제 후 복구하면 /var/lib시스템이 제대로 작동하지 않게 됩니다. 설령 잠시 방치하더라도 나중에 온갖 종류의 이상한 문제에 직면하게 될 것입니다. 문제를 해결하려고 시도한 후 이상한 문제가 발생하면 제거가 /var/lib원인일 가능성이 높습니다(따라서 온라인 지원을 받을 수 있는 희망을 잃은 것입니다. 언급하지 않을 생각조차 하지 마세요. 깊은 좌절).

/var/lib/dpkg설치된 패키지의 데이터베이스와 설치된 패키지에 대한 추가 정보가 포함되어 있으며 /var/lib/apt대신 APT에 포함되어 있습니다 dpkg. APT /var/lib/dpkg/status에는 거의 최신 백업이 있지만 /var/backups이는 복원해야 하는 것의 일부일 뿐입니다.

다음 명령을 사용하여 설치된 패키지 목록을 가져올 수 있습니다.

</var/backups/dpkg.status.0 awk -v 'RS=' -F '\n' '
    /\nStatus: .*installed\n/ {sub(/^Package: /,""); print $1}
' | sort >/var/tmp/packages0.list

최신 패키지 설치 및 제거를 확인 /var/log/dpkg.log하고 이에 따라 목록을 수동으로 편집하십시오. 이제 설치된 패키지 목록이 표시됩니다. 수동으로 설치된 패키지와 자동으로 설치된 패키지가 표시되지 않습니다 /var/lib/apt.

이 시점에서 다음 명령을 사용하여 모든 패키지를 다시 설치할 수 있습니다.

apt-get update
apt-get --reinstall install `cat /var/tmp/packages0.list`

이 작업을 수행하기 전에 더 많은 디렉터리를 만들어야 할 수도 있습니다 /var/lib. 오류 메시지가 나타나므로 어떤 디렉터리가 누락되었는지 알 수 있습니다. /var/lib/dpkg아래 및 아래의 모든 디렉터리는 모드 755 /var/lib/apt에 속해야 합니다 .root:root

/etc패키지 목록을 백업하고 시스템을 다시 설치하는 것이 좋습니다 . 설치하다관리자를 기다려주세요의 변경 내역을 유지하고 에서 내용을 변경할 때 실행하면 /etc나중에 비슷한 설치를 더 쉽게 할 수 있습니다.etckeeper commit 'some meaningful messages'/etc

답변2

가장 쉬운 방법은 설치된 모든 패키지를 다시 설치하는 것입니다. 설치된 항목 목록이 없으면 우선 순위에 따라 다시 설치해야 할 수도 있습니다.

다음과 같이 시작해 보세요.

aptitude reinstall ?essential
aptitude reinstall ~pstandard
aptitude reinstall ~prequired
aptitude reinstall ~pimportant

설치된 패키지 목록이 있으면 이를 사용하여 다시 설치할 수 있습니다. 그렇지 않은 경우 패키지를 식별해야 합니다. 그러면 /var/lib 하위 디렉터리가 다시 빌드됩니다.

다른 패키지가 설치되어 있을 수 있으므로 해당 패키지를 식별해야 합니다. 아직 정리하지 않은 경우 /var/cache/apt/archives directory이 명령을 사용하여 목록을 가져올 수 있습니다.

ls /var/cache/apt/archives | cut -d_ -f1

답변3

Live DVD에서 디렉토리를 복사할 수 있었고 이제 내 컴퓨터에서 작업할 수 있습니다.

이전에 이것을 할 수 없었던 이유는 CD ROM 때문이었습니다. 분명히 그것은 손상되었고 이것이 모든 "커널 패닉"의 이유입니다.

저는 기본적으로 이 Linux 배포판과 함께 제공되는 것보다 더 많은 프로그램을 실제로 설치하지 않았기 때문에 전체 운영 체제를 다시 설치하는 대신 이 작업을 선택했습니다.

@Gilles가 제안한 대로 향후 사고를 방지하기 위해 지금 백업을 수행하고 있습니다. 그가 말했듯이 뭔가 이상한 일이 생기면 무엇을 비난해야 할지 압니다. 하지만 포맷하기 전에 문제를 해결해 보고 싶습니다.

에 있는 패키지를 다시 설치할 수 없는 이유가 아직 확실하지 않습니다 /var/backups/dpkg.status.0. 이유를 아는 사람이 있으면 알려주시면 좋을 것입니다.

도움을 주신 모든 분들께 감사드립니다.

관련 정보