실수로 /bin/ 디렉토리를 이동하고 복구했지만 지금은 su할 수 없습니다.

실수로 /bin/ 디렉토리를 이동하고 복구했지만 지금은 su할 수 없습니다.

실수로 /bin디렉토리를 으로 옮겼습니다 /usr/bin/bin. 어쨌든 원래 위치로 되돌렸습니다.

# /usr/bin/bin/mkdir /bin
# /usr/bin/bin/mv /usr/bin/bin /

그러면 루트로 로그인할 수 있지만 su사용자로는 로그인할 수 없고 인증 오류가 발생합니다. 루트로 실행했더니 chmod +s /bin/su해결 chmod u+s /bin/su됐네요.

내가 알아차린 또 다른 점은 다음과 같은 ping오류가 발생한다는 것입니다.

$ ping 192.168.1.1
ping: icmp open socket: Operation not permitted

이것은 내 핑 파일입니다.

-rwxr-xr-x 1 root root 44K Jun 30 20:38 /bin/ping

폴더의 모든 권한과 SGID를 엉망으로 만든 것 같습니다 /bin. 이 문제를 해결할 방법이 있나요? (포맷 제외)

참고로 저는 Debian 8 64비트를 사용하고 있습니다.

답변1

기본 시스템을 다른 디렉토리로 부팅하겠습니다.

debootstrap --variant=minbase --arch=amd64 jessie /tmp/bootstrap http://ftp.us.debian.org/debian/

그런 다음 권한을 유지하면서 /tmp/bootstrap/bin의 모든 파일을 /bin으로 복사합니다.

cp -a /tmp/bootstrap/bin/* /bin/

/bin에 있는 많은 파일(및 기본 파일)은 이제 문제가 없으며 타임스탬프를 사용하여 어떤 파일이 손대지 않았는지 확인할 수 있습니다(이전 파일에는 잘못된 권한이 있을 수 있음).

나머지는 사용할 수 있습니다

apt-get install --reinstall PACKAGE

권한을 다시 설정하세요.

다음을 사용하여 파일에서 패키지를 찾을 수 있습니다.

dpkg -S /path/to/file

이것은 심지어 스크립트 가능합니다 ...

행운을 빌어요!

관련 정보