arrow_back필드 노트로 돌아가기
DIGITAL FORENSICS 게시됨 9 Aug 2026

Linux 명령줄 시작하기

Linux 셸 기초를 다루는 실용적인 용어 설명: 네비게이션, 파일 작업, 권한, 그리고 작업을 빠르게 하는 습관들.

명령줄은 운영체제와 직접 대화하기 위한 텍스트 인터페이스입니다. 아이콘을 클릭하는 대신 셸에 지시사항을 입력하면 셸이 실행합니다. 대부분의 Linux 배포판에서는 bash가 셸이지만, zsh도 흔해졌으며 특히 macOS의 기본값이고 Linux 설정에서도 인기가 높아지고 있습니다. 명령줄을 배우는 것은 수백 개의 명령을 암기하는 것이 아닙니다. 작은 도구 세트를 내재화하고 이들을 잘 조합하는 것입니다.

셸이 실제로 하는 것

터미널을 열면 터미널 에뮬레이터가 실행되고 그 안에 셸 프로세스가 입력을 기다립니다. 명령을 입력하고 엔터를 누르면 셸이 파싱하고, 지정한 프로그램을 찾아 주어진 인수와 함께 실행합니다. 출력은 텍스트로 돌아옵니다. 이것이 전체 루프입니다. 터미널(창)과 셸(텍스트를 해석하는 프로그램) 사이의 이 구분을 이해하면 초기 혼동이 많이 해소됩니다.

돌아다니고 것들을 보기

네 개 명령으로 대부분의 초기 네비게이션을 다룹니다:

pwd          # print working directory
ls -la       # list files, including hidden ones, with details
cd projects  # change into a directory
cd ..        # go up one level

ls -la는 처음에는 완전히 입력하는 것이 좋습니다. 별칭에 의존하기보다 권한, 소유권, 파일 크기를 출력에서 보는 데 익숙해지기 위함입니다. 권한 문자열의 앞 d 또는 -는 무언가 디렉토리인지 일반 파일인지를 알려주며, 이는 많은 초보자를 초기에 헷갈리게 합니다.

파일 읽기 및 조작하기

cat somefile.txt는 전체 파일을 화면에 출력합니다. 더 긴 파일의 경우 less somefile.txt를 사용하면 스크롤하고 /pattern으로 검색할 수 있습니다. head -n 20 file.logtail -n 20 file.log는 처음이나 마지막 줄을 보여주며, tail -f file.log는 새 줄이 추가되면서 파일을 따라가므로 디버깅 중에 로그를 실시간으로 감시하는 방법입니다.

복사, 이동, 삭제는 cp, mv, rm을 사용합니다:

cp report.txt report.bak
mv report.bak archive/
rm archive/report.bak

rm은 것들을 휴지통으로 옮기지 않습니다. 삭제합니다. -i를 추가하면 확인을 묻는데, 근육 기억이 아직 구축 중일 때 합리적인 습관입니다.

권한, 신비 없이

파일에서 ls -l을 실행하면 -rwxr-xr-- 같은 것을 봅니다. 이를 세 그룹 세 개씩으로 나눕니다: 소유자, 그룹, 기타. 각 그룹은 읽기, 쓰기, 실행을 가집니다. chmod 755 script.sh는 소유자를 읽기/쓰기/실행(7)으로, 그룹/기타를 읽기/실행(5)으로 설정합니다. chmod +x script.sh는 전체 번호를 다시 계산하지 않고 파일을 실행 가능하게 하는 단축형입니다. chown은 파일 소유자를 변경하며, 이미 자신의 파일이 아닌 한 보통 sudo가 필요합니다.

파이핑 및 리디렉션

여기가 명령줄이 파일 브라우저를 벗어나 진정한 도구가 되는 지점입니다. 파이프 |는 한 명령의 출력을 다른 명령으로 보냅니다:

ps aux | grep nginx
ls -la | wc -l
cat access.log | grep 404 | sort | uniq -c | sort -rn

마지막 명령은 로그에서 각 404를 생성하는 줄이 몇 번 나타나는지 세고 빈도순으로 정렬하며, 작은 명령들을 함께 연결하여 완전히 만들어집니다. >>>를 사용한 리디렉션은 화면 대신 파일로 출력을 보냅니다: >는 덮어쓰고, >>는 추가합니다. 2>는 오류 출력을 구체적으로 리디렉션하며, 일단 정상 출력과 오류를 분리해야 하는 스크립트를 작성하기 시작하면 중요합니다.

것들 찾기

find는 이름, 타입, 수정 시간으로 검색합니다:

find /var/log -name

AI 도움을 받아 작성했으며, Michal Pilch(CISSP), Korra Studio에서 검토 및 게시했어요.

더 나아가고 싶으신가요?

이것은 Korra Studio 나레지베이스의 한 노트예요. 플랫폼은 모든 주제를 1-to-1 멘토링과 함께 제공해요.

무료로 시작하기arrow_forward