루트 사용자의 bash 기록은 어디에 저장됩니까?


25

나는 .bash_history내 홈 디렉토리에서 이야기하고 있지 않습니다 . 나는 일반적 으로 루트 사용자로 sudo -i또는 sudo su명령 을 사용하는 것을 선호합니다 .

이 명령 후에 히스토리가 .bash_history내 홈 디렉토리 의 파일에 저장되지 않기 때문에이 히스토리가 어딘가에 저장되어 있는지 여부와 예인 경우 어디에 있는지 알고 싶습니다.


나는 알고 있지만 루트 쉘 내부의 명령을 알고 싶었고 대답을 찾았습니다.
Devesh Khandelwal

나는 알고 있었지만 여전히 감사합니다.
Devesh Khandelwal

답변:


32

루트로 로그인하면 bash 기록이 /root/.bash_history파일에 저장 됩니다. 여기서 /root루트 사용자의 기본 홈 디렉토리입니다. 이를 증명하려면 루트로 로그인 할 때 다음 명령을 실행하십시오.

echo $HISTFILE

$HISTFILE당신의 역사를 포함하는 파일에 변수를 가리 킵니다.

출처: $HISTFILE

일반적으로 다른 사용자 계정으로 로그인하면 bash 기록은 .bash_history해당 사용자의 홈 디렉토리 에있는 파일에 저장됩니다 .

또한 루트 사용자의 bash 기록을 다른 파일에 저장하려면 .bash_history내 홈 디렉토리의 파일에서 /root/.bashrc파일 을 편집하고 파일의 끝에 다음 내용으로 새 줄을 추가해야합니다.

HISTFILE="/home/username/.bash_history"       #change username with your user name

1

키보드 의 up 키 를 통해 바로 가기 목록을 사용하는 데 익숙합니다 . 루트로 로그인하면 루트 사용자의 히스토리가 표시됩니다.

이와 같이 테스트 sudo -i하고 비밀번호를 입력 한 다음 키보드의 위로 키를 누르십시오. 이제 가장 최근에 사용한 명령을 최근에서 가장 오래된 순서로 스크롤합니다.

나는 Radu Rădeanu의 대답이 당신이 원하는 것임을 알고 있습니다. 그러나 이것은 또한 당면한 문제를 해결합니다. 내 솔루션은 시간과 번거 로움을 줄일 수있는 오래된 명령을 기억하는 편리한 방법입니다.


업 키에 대해 잘 알고 많이 사용합니다. 내가 원했던 것은 완전한 기록 파일이었고 설명해 주셔서 감사합니다.
Devesh Khandelwal

@DeveshKhandelwal 원하는 솔루션은 아니지만 다른 사람이 유용하다고 생각할 수도 있습니다. Radu의 대답은 좋습니다. 이것은 단지 다른 것입니다. :)
Alvar

1

history쉘에 입력 하면 히스토리의 모든 명령이 나열됩니다. 다음 명령을 사용하여 기록을 다른 파일에 저장할 수 있습니다.

history > *textfile*
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.