로그인 기록 추적하기: who, w, last, lastlog, utmp/wtmp/btmp
누가 언제 접속했고 지금 뭘 하고 있는지 — who·w·last·lastlog로 세션을 감사하고, 그 뒤에 있는 바이너리 회계 파일(utmp/wtmp/btmp/lastlog)과 systemd 시대의 변화까지 정리합니다.
누가 언제 접속했고 지금 뭘 하고 있는지 — who·w·last·lastlog로 세션을 감사하고, 그 뒤에 있는 바이너리 회계 파일(utmp/wtmp/btmp/lastlog)과 systemd 시대의 변화까지 정리합니다.
su는 대상 계정의 비밀번호를, sudo는 내 비밀번호를 묻는다 — 이 차이에서 감사 로그·최소 권한·wheel 그룹까지 권한 상승(privilege escalation)의 원리와 sudoers·visudo 실무를 정리합니다.
smug는 Go 단일 바이너리 tmux 세션 매니저다. 설치·기본 config부터, tmux 표준 프리셋에 없는 커스텀 레이아웃을 layout 문자열로 고정하는 법, smug가 하는 일과 안 하는 일(프로그래머블 제어는 tmuxp)까지 실전 정리.
계정을 만들고(useradd) 고치고(usermod) 지우고(userdel), 그룹·sudo 권한을 붙이는 표준 흐름. /etc/passwd·shadow·group 파일이 실제로 무엇을 담는지, Debian과 RHEL의 adduser 차이까지.
터미널 화면이 반반으로 나뉘면 Ghostty split·tmux pane·tmux 세션 셋 중 하나. list-clients로 계층을 특정하고 그 계층 키로 닫는다.
AI 코딩 에이전트를 여러 개 굴릴 때 working/blocked/done을 자동 감지하는 법. 전용 멀티플렉서(herdr)와 훅 기반 tmux 플러그인을 비교하고, tmux에 익숙한 사람에게 왜 후자가 맞는지 정리.
tmux 플러그인엔 런타임도 SDK도 없다. TPM이 실행하는 .tmux 셸 스크립트가 tmux CLI를 호출하는 게 전부. 진입 스크립트 구조·설정형/상호작용형·hooks·배포까지.
여러 줄 vim.notify가 hit-enter 프롬프트를 띄우는 이유와 cmdheight로 없애는 방법.
심링크도 복사도 없이 홈 디렉터리 자체를 git 워크트리로 삼는 bare git 방식과, 그 위에 템플릿·암호화를 얹은 yadm. init --bare + config 알리아스 셋업, showUntrackedFiles·checkout 충돌 같은 함정, 심링크·chezmoi와의 위치까지.
터미널·git이 ~/Desktop 하위를 Operation not permitted로 거부하는 TCC 권한 리셋의 진단과 복구.