우당탕탕

Linux 명령어 실무에서 매일 쓰는 것들, 저도 이걸 몰라서 고생했어요 본문

Linux

Linux 명령어 실무에서 매일 쓰는 것들, 저도 이걸 몰라서 고생했어요

모찌모찝 2026. 6. 20. 19:53

제가 인프라 세팅하면서 Linux 명령어 때문에 얼마나 고생했는지 이야기를 해보려고 해요. 사실 이런 기본 명령어들을 잘 몰라서 자꾸 삽질하고, 되돌아가고, 또 같은 실수를 반복했거든요. 그래서 이번에는 제가 직접 매일 쓰는 Linux 명령어들 중에서 꼭 써야 하는 것들과 제 실수 사례, 그리고 해결법까지 꼼꼼히 정리해봤습니다.

일단 이 글을 읽고 나면 매일 쓸 만한 기본 명령어들, 자주 못 써서 오히려 더 헷갈렸던 부분, 그리고 제가 이렇게 해서 시간을 아꼈다는 팁들까지 알게 되실 거예요.

개발 환경 / 버전 정보

저는 주로 Ubuntu 20.04 LTSCentOS 7 환경에서 작업해요. 클라우드 인프라로 AWS EC2 인스턴스를 많이 쓰고 있고, SSH 접속과 서버 설정을 주로 하죠.

가장 기본인데도 매번 실수했던 명령어들

사실 터미널에서 가장 자주 쓰는 명령어가 cd, ls, cat인 건 다들 아실 거예요. 그런데 저는 제가 너무 안쓰던 옵션이나 잘못 쓴 경로 때문에 X번씩 다시 실행했더라고요.

# 잘못된 경로로 cd 하다가 헤맸던 경우
cd /var/www/htmlss
# "No such file or directory" 에러 발생

경로 오타 때문에 계속 실패했는데, tab 키로 자동완성을 자주 활용하면 이런 실수를 줄일 수 있어요. 저는 이걸 알려주는 동료 덕에 엄청 편해졌어요.

그리고 ls 명령어도 그냥 쓰면 리스트가 너무 많거나 컬러가 없어서 헷갈렸는데 옵션을 알면 훨씬 편해요. 제가 자주 쓰는 건:

  • ls -alh로 숨김파일 포함, 사람 눈에 편한 용량 단위로 보기
  • ls --color=auto 컬러 출력 (기본값인 배포판도 있지만 안 되는 경우도 있어요)

이렇게 쓰니까 파일 종류 구분도 쉽고, 권한이나 크기까지 한눈에 보여서 다시 ls만 여러 번 치는 일이 줄었어요.

파일 권한 설정, 여기서 많이 삽질했어요

파일 권한 때문에 한참 고생한 적이 있습니다. 특히 웹서버 설정하면서 Permission denied 에러가 자꾸 났거든요.

# 권한 문제 때문에 접속 안 될 때 확인용
ls -l /var/www/html
# 권한 확인
chmod 755 /var/www/html
# 디렉토리는 755, 파일은 644로 설정하는 것이 일반적

처음에는 모든 걸 다 chmod 777로 풀어버리다가 관리도 어렵고 보안 문제도 크다는 걸 깨달았어요. 저는 디렉토리와 파일 권한을 정확히 구분해서 설정하는 습관을 들였죠.

그리고 사용자의 소유권도 헷갈렸는데, chown 명령으로 웹서버가 해당 파일을 쓸 수 있도록 맞춰줘야 한다는 걸 알게 된 게 컸어요.

로그 확인할 때 쓴 명령어 모음

서버 세팅 후 문제가 생겼을 때 로그 확인은 필수인데요, 처음엔 로그 파일이 너무 커서 한참 헤맸어요. 그래서 저도 로그를 좀 다루기 편하게 하는 명령어들을 모아봤습니다.

  • tail -f /var/log/syslog : 실시간 로그 모니터링할 때 최고예요.
  • grep 'error' /var/log/syslog : 특정 단어 포함 로그만 필터링할 때 필수.
  • less /var/log/nginx/access.log : 스크롤하며 길게 보는 용도.

특히 tail -f 쓸 때 Ctrl+C로 꼭 빠져나와야 하는데, 이걸 모르고 터미널 닫거나 했던 적도 있었죠. 그리고 로그가 너무 많으면 grep으로 원하는 부분만 걸러서 보는 게 시간을 확 줄여줘요.

프로세스 관리, 제가 자꾸 놓쳤던 부분

서버가 느려지거나 이상할 때 프로세스를 확인하는 게 중요한데, 저는 처음에 ps 명령을 제대로 모르는 바람에 전체 프로세스를 안 보고 내 프로세스만 확인하는 실수를 했어요.

# 전체 프로세스 보기
ps aux

# 특정 프로세스 찾기
ps aux | grep nginx

# 프로세스 강제 종료
kill -9 12345  # PID 12345 종료

특히 프로세스 아이디(PID)를 정확히 모르면 프로세스를 종료하지 못해 계속 문제가 생겼죠. 그리고 top 명령어로 CPU, 메모리 사용량을 실시간으로 보는 것도 완전 유용했어요. 저는 이걸 통해서 서버에서 무거운 프로세스를 찾아내고 조치를 했었거든요.

파일 편집기, vim 쓰다가 포기 직전까지 갔던 이야기

사실 저는 vim 명령어를 처음 접하고 진짜 고생했어요. 초반에 저장도 못 하고 나오는 방법도 몰라서 여러 번 재부팅하면서 포기하고 싶었거든요.

가장 기본적인 꿀팁은 다음과 같아요:

  • 입력 모드로 전환하려면 i 키를 누르기
  • 편집 끝나면 Esc 키 누르기
  • 저장하려면 :w, 저장하고 나가려면 :wq 입력 후 엔터
  • 나가기만 하려면 :q!로 강제 종료

이 기본 명령어만 안다면 vim과 좀 친해질 수 있어요. 저는 이걸 안 몰라서 자꾸 잘못 꺼내고 다시 들어갔던 기억이 있어요.

네트워크 확인, 이건 정말 매일 써요

서버 접속 문제, 포트 문제 등 네트워크 이슈도 진짜 많았는데요. 처음에 제가 이걸 몰라서 터미널에서 막 헤맸죠.

# IP 확인
ip addr show

# 네트워크 연결 상태 확인
netstat -tulnp

# 특정 포트가 열려있는지 확인
ss -tnlp | grep 22

# ping으로 네트워크 상태 체크
ping google.com -c 4

이 중 netstat은 기본 설치 안 되어 있는 경우가 많아서 저는 ss명령어를 더 즐겨 쓰고 있어요. 그리고 ping을 통해 네트워크가 살아있는지도 바로 체크할 수 있어서 무척 편했죠.

패키지 관리, 의존성 문제로 엄청 헤맸던 경험

서버 세팅하다보면 필요한 패키지나 라이브러리를 깔아야 할 때가 많은데, 저는 버전 문제나 저장소 문제 때문에 몇 번 반려당했었어요.

Ubuntu에서는 apt, CentOS에서는 yum 또는 dnf를 쓰고, 패키지 업데이트 명령어는 이렇게 해요:

# Ubuntu에서 패키지 업데이트 및 설치
sudo apt update
sudo apt upgrade -y
sudo apt install nginx

# CentOS에서 패키지 설치
sudo yum update -y
sudo yum install httpd

저는 처음에 저장소 설정을 안 해서 설치 오류가 났던 적이 많았는데, /etc/apt/sources.list/etc/yum.repos.d/ 안을 잘 확인하고 설정해야 한다는 걸 배웠죠.

여기서 많이 틀렸던 명령어 조합과 팁

처음엔 파일 권한과 프로세스 명령어를 붙여 쓰거나, sudo 빼먹고 실패하는 게 많았어요. 예를 들어, 로그 파일을 확인할 때 권한 문제 때문에 확인이 안 되는 경우가 많았죠.

sudo tail -f /var/log/nginx/error.log
# 안 하면 권한 부족으로 로그 확인 실패

또, 프로세스 종료 시 잘못된 PID를 입력해서 다른 프로세스를 종료할 뻔한 적도 있어 조심해야 했어요. 그러니까 ps aux | grep 로 정확한 프로세스 확인부터 해야겠더라고요.

자주 물어보시는 것들

Q. sudo 없이 명령어 실행하면 무조건 실패하나요?

A. 꼭 그렇진 않아요. 하지만 시스템 설정이나 로그 접근 같은 작업은 권한이 필요해서 sudo가 없으면 "Permission denied" 에러가 자주 납니다. 이럴 때 당황하지 말고 sudo를 붙여서 다시 시도하면 돼요.

Q. 파일을 잘못 수정했는데 복구 방법 없나요?

A. Linux에는 기본적으로 자동 백업 기능이 없어서 직접 백업을 습관화하는 게 좋아요. 예를 들어 cp filename filename.bak 으로 복사본을 만들어두거나 git으로 관리하는 식이죠.

제가 이걸 몰라서 몇 번 날려먹고 시간이 아까웠던 경험이 있습니다.

실제로 Linux 명령어는 단순하지만 옵션이나 권한, 경로가 조금만 틀려도 문제가 생기니 조심스럽게 접근해야 해요. 저도 초반에는 '그냥 다시 하면 되겠지' 했는데, 반복 작업 시간 낭비가 크더라고요.

한 가지 팁을 드리자면, 명령어 실행 전에 --help 옵션으로 간단히 사용법 확인하거나, man 명령어로 매뉴얼을 보는 습관을 들이면 실수를 줄일 수 있어요.

마지막으로, Linux는 꾸준히 써보면서 익숙해지는 게 중요한데요. 저는 이 글 정리하면서 다시 한 번 복습하는 느낌이 들어서 도움 많이 됐어요. 여러분도 꼭 하나씩 실습해보면서 익히시길 추천합니다.

Comments