일부 파일을 수정하지 않고 찾아보고 싶습니다. 특정 명령을 사용하지 않을 수 있다는 것을 알지만, 예상치 못한 일이 일어날까 봐 걱정됩니다.
아무것도 쓸 수 있는 권한이 없는 bash 하위 쉘을 생성하는 방법이 있습니까? 그것은 마치 bash donotmakechanges
.
다른 사용자를 생성할 수도 있겠지만 그건 너무 지나친 것 같습니다.
답변1
바인드 마운트를 사용하여 디렉토리 트리를 읽기 전용으로 마운트할 수 있습니다. 루트 액세스가 필요합니다.
# mount -o ro --bind /home /home_ro
# cd /home_ro
# touch file
touch: cannot touch ‘file’: Read-only file system
그런 다음 /home_ro를 탐색하세요.
답변2
sudo -u nobody bash
지침
다른 모든 사용자가 액세스할 수 있는 파일에는 계속 액세스할 수 있습니다. 예를 들어,
everyone's
파일:$ touch everyone\'s $ chmod 222 everyone\'s
여전히 다음과 같이 작성할 수 있습니다
nobody
.$ sudo -u nobody touch everyone\'s
당신은 다른 누구도 접근할 수 없는 파일에 접근할 수 있습니다. 예를 들어,
nobody's
파일:$ touch nobody\'s $ sudo chown nobody nobody\'s
일반 사용자는 다음을 쓸 수 없습니다:
$ touch nobody\'s touch: cannot touch "nobody's": Permission denied
그러나 다음을 통해 작성할 수 있습니다
nobody
.$ sudo -u nobody touch nobody\'s
사용자는
nobody
다음에 설명된 대로 이 목적으로 이를 사용할 수 없습니다.https://askubuntu.com/a/674397/1086669실행하려면 권한이 필요합니다.
sudo
그 외에도 일반적으로 쓰기 가능한 파일을 읽기 전용으로 렌더링합니다.
$ touch mine
$ sudo -u nobody touch mine