맨 페이지는 cd와 같은 쉘 내장 명령어에 대한 매뉴얼은 제공하지 않음.npm과 같이 외부에서 제공하는 소프트웨어의 경우도 마찬가지임맨 페이지에서 대괄호는 Optional을 상징> type npm npm is /home/octavesop/.nvm/versions/node/v18.14.0/bin/npmtype 명령어는 특정 명령어의 위치를 알려준다.alias인 경우 alias라고 출력해줌> which clear/usr/bin/clearwhich 명령어도 마찬가지긴 함help 명령어를 쓰면 cd, pwd, echo와 같은 쉘 빌트인 명령어들의 도움말도 확인해볼 수 있음 윈도우 체제에서는 물리적 / 논리적으로 드라이브가 분리되어있음. ex) C드라이브, D드라이브...그러나 ..
ssh ssh -t는 해당 쉘에 직접 접속해 명령어를 입력하는 대신 매개변수로 커맨드를 실행하는 방법이다. 다음과 같이 사용할 수 있다. $ ssh test@test.com -t "npm install" 그러나 막상 명령을 실행해보면 제대로 동작하지 않을 것이다. command not found 오류가 뜨게 되는데, 막상 직접 접속해서 사용할 때는 해당 문제가 발생하지 않는다. 왜 발생하는가 단순히 말하자면, 이는 .bashrc의 실행 여부와 환경 변수인 PATH의 문제에 의해 발생한다. ssh -t 명령어를 실행할 때, 사용자의 권한은 ssh 키나 패스워드를 통해 검증되나 실제로 로그인 세션은 발생하지 않는다. 때문에 원격 접속과는 달리 빠르고 편리하게 명령어를 실행하는 것이 가능해지므로, 주로 크론잡..
> sudo vim ~/.bashrc 마지막 줄에 다음 명령어를 추가한다. export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S " 적용되지 않았다면 한 번 로그아웃하고 다시 접속하자. 적용 시 이전의 명령어는 적용된 시간으로 표기되며, 이후 명령어부터는 입력된 시간값이 추가되어 출력된다.
최근 서버에서 redis 관련한 이슈가 몇번 나왔었다. 우리 서비스의 redis는 사내의 쿠브플로우 온프레미스 서버에 레플리카셋으로 올라가있는데(sentinel은 안 쓰는 상태), 개발 api 서버에서는 strict하게 master의 url만 사용했다. 이 때문에 인터넷이 끊기는 등 redis에 이상이 생겨서 기존 master가 slave로 전향해버리면 set이나 incr, expire 등의 명령어가 적용되지 않았다. 일반적으로 slave replica는 readonly 상태이므로 삽입이 불가능하기 때문이다. 때문에 프로덕션 환경 redis에 sentinel이 적용되었고, 개인 로컬 환경도 sentinel을 사용할 필요성이 생겼다. local 환경은 대충 가볍게 써서 이런 정도만 나오게 되었다. glob..