다음 명령을 사용하여 실수로 Raspbian Buster에서 XDG를 지웠습니다.sudo apt purge -y xdg*
문제가 발생한 지 몇 분 후에 XDG와 다른 구성 요소를 설치했는데 문제가 해결되었다고 생각했지만 그렇지 않았습니다. 그리고 제가 엉망으로 만든 것도 모르고 그 이후에는 터미널을 닫아서 로그 스크린샷을 찍을 수가 없었습니다 apt
.
sudo apt purge xdg*
정리 중에 제거된 다른 패키지를 설치할 수 있도록 누군가에게 프롬프트 섹션의 스크린샷을 보내달라고 요청하고 싶습니다 .
아래 나열된 모든 패키지를 설치해 보았습니다.버스터 컴플리트 패키지여기에도:https://gist.github.com/jarvisms/6d3edba4fc27829d5dfe7a2bd8c7c5fb
하지만 여전히 1) Raspbian Buster 모양을 복원할 수 없습니다. 2) 다른 시스템 구성 요소를 다시 실행합니다. 며칠 동안 팁을 찾아봤는데 이 질문이 꽤 독특한 것 같아요(독특하고 멍청하네요 하하)
솔직히 지금 이 버전의 RPi가 마음에 듭니다. 기본 버전보다 사용하기가 훨씬 쉽습니다(비록 어떤 이유로 CPU가 지속적으로 최대치에 달하고 효율성이 떨어지기는 하지만). 하지만 저는 C++이나 Python으로 프로그래밍을 제대로 할 수 없으며, 실제로 Linux 전문가가 아니기 때문에 이를 알아내는 데는 시도하는 것보다 시간이 더 걸릴 것입니다.
읽어 주셔서 감사합니다.
답변1
dpkg
apt
, 등이 실제로 패키지를 설치하거나 제거하고 해당 작업에 대한 로그 파일을 에 저장하기 위해 apt-get
호출하는 프로그램 입니다 . 이 파일은 일반적으로 매달 교체됩니다.aptitude
/var/log/dpkg
수행 중인 작업에 대한 추가 정보를 기록하는 동시에 특정 패키지/버전에 대해 수행하는 작업을 주로 다음 형식으로 기록합니다.
2021-10-02 05:47:54 purge linux-image-5.10.0-4-amd64:amd64 5.10.19-1 <none>
처음 두 필드는 날짜 및 시간이고, 세 번째 필드는 동사( install
, remove
, purge
, upgrade
등 configure
), 네 번째 필드는 패키지 이름, 현재 패키지 버전(또는 <none>
아직 설치되지 않은 경우), 마지막 필드는 다음과 같습니다. 설치된 패키지의 버전(또는 <none>
업그레이드되지 않은 경우)입니다.
특정 날짜/시간에 실수로 삭제 또는 제거된(또는 설치된 패키지가 제거된) 패키지를 다시 설치하려면 이 데이터가 필요합니다.
예를 들어 다음과 같이 특정 날짜 및 시간(예: 2021년 10월 2일 오전 5시)에 삭제된 모든 패키지 이름을 나열할 수 있습니다.
# awk '/^2021-10-02 05:/ && $3 == "purge" {print $4}' /var/log/dpkg.log
linux-image-5.10.0-4-amd64:amd64
linux-image-5.9.0-5-amd64:amd64
이 출력을 사용할 수 있으며명령 대체다시 설치하십시오(저장소에서 아직 사용 가능한 경우).
# apt-get install $(awk '/^2021-10-02/ && $3 == "purge" {print $4}' /var/log/dpkg.log)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package linux-image-5.10.0-4-amd64:amd64
E: Couldn't find any package by glob 'linux-image-5.10.0-4-amd64'
E: Couldn't find any package by regex 'linux-image-5.10.0-4-amd64'
E: Unable to locate package linux-image-5.9.0-5-amd64:amd64
E: Couldn't find any package by glob 'linux-image-5.9.0-5-amd64'
E: Couldn't find any package by regex 'linux-image-5.9.0-5-amd64'
안타깝게도 이러한 패키지는 이제 아카이브에서 사라졌고 최신 커널 패키지로 대체되었습니다... 그래서 그날 해당 패키지를 제거했습니다. (저는 최신 커널을 오랫동안 설치한 상태로 유지할 필요가 없었습니다. 이전 커널로 되돌려야 하는 경우)