CentOS, Rocky Linux 등

  • dmesg 명령어: 사용법과 -T 시각, -l 등급, 권한 오류

    리눅스 커널이 부팅할 때부터 남긴 메시지는 dmesg 명령어로 커널 링 버퍼에서 읽어 터미널에 출력합니다. AlmaLinux 9 서버의 root 계정과 Debian 12 서버의 일반 계정에서 같은 dmesg를 실행해 본 결과, root 계정에서는 -T와 -l 옵션으로 시각과 등급을 고르고 grep으로 디스크 메시지를 찾았고 일반 계정에서는 dmesg_restrict 설정 때문에 버퍼를 읽지 못했습니다. AlmaLinux 9.8 서버의 출력은…

  • PM2 + Nginx 리버스 프록시: Node.js 앱을 80번 포트에 연결

    Ubuntu 24.04 서버에 Node.js PM2 Nginx 리버스 프록시 구성을 올려, 앱 실행은 PM2가 담당하고 80번 포트로 들어온 요청은 Nginx가 앱으로 넘기게 설정했습니다. 앱 프로세스를 강제로 종료하거나 서버를 재부팅해도 PM2가 앱을 다시 실행하는 것까지 확인했습니다. 아래 결과 상자는 일반 사용자 deploy로 실행한 출력입니다. 도메인 자리에는 예시 값 example.com을 두고, 서버 안에서 Host 헤더를 붙여…

  • 우분투 서버 초기 설정: 신규 설치 후 Ubuntu 서버에서 시작할 9단계

    새 서버를 받으면 서비스를 올리기 전에 우분투 서버 초기 설정을 한 번 거칩니다. 디지털오션에서 만든 Ubuntu 24.04 서버에 root로 접속해 패키지 업데이트부터 sudo 사용자, 키 로그인, 방화벽, 시간대, 자동 보안 업데이트, 스왑까지 차례로 설정하고, 재부팅한 뒤에도 설정이 그대로 남는 것까지 확인했습니다. 아래 결과 상자는 명령을 이 순서대로 실행한 출력입니다. 서버 IP 203.0.113.10은 예시…

  • watch 명령어: 사용법과 -n 간격, -d 강조, 출력이 바뀌면 끝내기

    watch 명령어는 지정한 명령을 2초마다 다시 실행해 그 출력을 터미널 화면 전체에 새로 그리는 리눅스 명령어입니다. AlmaLinux 9 서버에서 다른 창으로 파일을 바꾸며 watch로 지켜본 결과, -d 옵션은 바뀐 글자를 강조했고 -g 옵션은 출력이 바뀐 뒤 watch를 끝냈습니다. 아래 출력은 AlmaLinux 9.8 서버(root 계정)의 작업 폴더에서 실행한 결과이고, Debian 12 서버에서는 버전만 확인했습니다….

  • su 명령어: su와 su -의 차이, sudo su와 sudo -i까지 계정 바꾸는 법

    리눅스에서 지금 계정을 로그아웃하지 않고 다른 계정으로 바꿔 명령을 실행할 때는 su 명령어를 사용합니다. AlmaLinux 9 서버의 root 계정에서 로그인할 수 없는 시스템 계정 daemon으로 su를 실행해 비교한 결과, 하이픈 하나로 작업 폴더와 PATH가 달라졌고 셸을 지정해야 명령이 실행되었습니다. 아래 출력은 AlmaLinux 9.8 서버(root 계정)와 Debian 12 서버(일반 계정)에서 실행한 결과입니다. 비밀번호를 묻는…

  • zip 명령어: 폴더 압축과 unzip 풀기, 압축 옵션

    zip 명령어는 리눅스에서 파일과 폴더를 zip 파일 하나로 묶어 압축하고, 압축을 풀 때는 unzip을 함께 사용합니다. AlmaLinux 9 서버에서 웹 사이트 폴더를 zip -r로 압축한 결과 35,825바이트가 4,158바이트로 줄었고, Windows에서 만든 zip 파일의 깨진 파일 이름은 unzip -O로 바로잡았습니다. 아래 출력은 AlmaLinux 9.8 서버의 root 계정으로 작업 폴더 안에서 실행한 결과이고, 시각은 UTC…

  • nohup 명령어: 사용법과 nohup.out, 터미널을 닫아도 계속 실행하기

    터미널을 닫거나 SSH 접속이 끊겨도 작업이 계속 돌게 하려면 nohup 명령어로 실행합니다. nohup은 터미널이 닫힐 때 오는 끊김 신호(SIGHUP)를 무시하게 한 채 명령을 실행합니다. AlmaLinux 9 서버에서 nohup을 붙인 sleep과 붙이지 않은 sleep을 함께 띄우고 터미널을 닫아 본 결과, nohup으로 띄운 쪽만 남아 계속 실행되었습니다. 아래 출력은 AlmaLinux 9.8 서버(root 계정)와 Debian 12…

  • gzip: 리눅스 파일 압축과 gzip 압축 풀기, gunzip, zcat 사용법

    gzip은 리눅스에서 파일 하나를 .gz 파일로 압축하는 명령어이고, 압축을 풀 때는 같은 명령에 -d를 붙이거나 gunzip을 사용합니다. AlmaLinux 9 서버에서 31,878바이트 접속 로그를 압축한 결과 4,424바이트로 줄었고, 압축을 풀자 원래 크기와 수정 시각이 그대로 돌아왔습니다. 아래 출력은 AlmaLinux 9.8 서버의 root 계정으로 시험용 폴더에서 실행한 결과이고, 시각은 UTC 기준입니다. 접속 로그와 메모, 설정…

  • ssh-keygen: SSH 키 생성과 공개 키 등록, ssh-copy-id 사용법

    ssh-keygen은 SSH 접속에 쓰는 개인 키와 공개 키 한 쌍을 만들고, 지문 확인과 암호 변경, known_hosts 정리까지 맡는 OpenSSH 명령어입니다. AlmaLinux 9 서버에서 ed25519 키와 rsa 키를 만들어 지문을 확인하고 암호와 주석을 바꾼 뒤 ssh-copy-id의 dry-run으로 확인해 보니, 서버로 건너가는 것은 .pub 파일의 공개 키 한 줄뿐이었습니다. 아래 출력의 계정 이름과 키 파일…

  • journalctl 명령어: 사용법과 서비스별 로그, 저널 용량 정리

    서비스와 커널이 남긴 로그를 systemd 저널에서 골라 읽는 도구가 journalctl 명령어입니다. systemd를 쓰는 리눅스에서는 systemd-journald가 이 로그를 저널에 모아 둡니다. AlmaLinux 9 서버와 Debian 12 서버에서 서비스와 시간, 중요도별로 로그를 골라 읽은 결과, 일반 계정에는 자기 로그만 보였고 저널을 메모리에 두는 서버는 이전 부팅을 고를 수 없었습니다. 아래 출력은 두 서버에서 실행한 결과입니다….

End of content

End of content