배쉬 명령 기록이 작동하지 않습니다


13

세션 간 명령 기록이 저장되지 않습니다. guake를 사용하고 있으며 세션 기록이 정상적으로 작동합니다.

나는 것으로 나타났습니다 .bash_history 파일은 내가 실행 일부 명령했다 sudo -s내가 노력 있도록 세션에서 저장되었다 동안 모드와 다시 같은 시도하고 모든 명령을chmod 777 .bash_history

이제 이전 명령이 세션 시작시 나타나지만 새 명령이 저장되지 않습니다

미리 감사합니다


2
그래서 ... 정확히 무엇을 성취하려고합니까? 당신은 여기서 질문을하지 않는 것 같습니다 : /
Thomas Ward

4
모드 777은 불필요하며 특히 '실행 가능'플래그와 관련이 없습니다 (기본 모드는 600). 은 ~/.bash_history당신이 (손이 닿지을 로그 아웃 할 때 작성됩니다 새로운 명령 당신이 사용할 수있는 history명령). 하지만
나도

답변:


16

Bash는 쉘이 종료 된 후에 만 ​​히스토리를 .bash_history 파일에 저장하기 때문에 명령이 보이지 않으며 이는 Guake에서는 거의 발생하지 않습니다. 모든 명령 후에 Bash가 파일을 덮어 쓰는 대신 히스토리를 추가하도록 하는 간단한 해결 방법 이 있습니다.

shopt -s histappend
PROMPT_COMMAND="history -a;$PROMPT_COMMAND"

4
굉장 해요 이 5 년 전에 알고 있었으면 좋겠다.
HDave

8

일반적으로 .bash_history 파일을 만들기 전에 명령을 sudo하면 사용자 대신 root가 소유하게됩니다.



2

또한 root : root는 .bash_history를 소유합니다 (ROOT는 소유자가 아니어야하며 사용자는 소유자가되어야합니다).이 경우 다음을 수행해야합니다.

#chown user:user .bash_history

당신이 sudo bash많이 한다면 이것은 분명히 일어날 수 있습니다 !

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