[태그:] 리눅스 입문

  • 리눅스 배포판 선택 가이드

    💡 리눅스 배포판은 수백 가지가 넘지만, 처음 시작한다면 우분투 하나만 기억해도 충분합니다. 목적에 맞는 배포판을 고르는 기준을 지금 정리해 드릴게요.

    리눅스 배포판, 왜 이렇게 많은 건가요?

    윈도우는 딱 하나잖아요. 그런데 리눅스는 검색만 해봐도 우분투, 데비안, 페도라, 아치, 민트, 라즈비안… 끝도 없이 나옵니다. 처음 리눅스를 알아보기 시작한 주변 지인도 “뭘 설치해야 하는지부터 모르겠다”며 며칠을 헤맸다고 했어요.

    사실 이건 리눅스의 특성 때문입니다. 리눅스는 오픈소스 운영체제 커널이고, 누구든 이걸 기반으로 자기만의 시스템을 만들 수 있어요. 그 결과물이 바로 배포판(Distribution)입니다. 정부 기관, 기업, 개인 개발자 그룹이 각자의 목적에 맞게 만든 거예요.

    그래서 배포판이 많은 건 사실 좋은 신호입니다. 선택지가 많다는 뜻이니까요. 근데요, 그게 오히려 처음엔 더 헷갈리죠.

    리눅스 배포판의 두 가지 큰 흐름

    💡 배포판 계열만 이해해도 절반은 이해한 겁니다. 크게 데비안 계열과 레드햇 계열, 두 줄기로 나뉩니다.

    리눅스 배포판에는 뿌리가 있습니다. 마치 언어에 어족이 있듯이요. 가장 크게 나뉘는 두 계열이 데비안(Debian) 계열레드햇(Red Hat) 계열입니다.

    데비안 계열은 패키지 관리자로 apt를 씁니다. 우분투, 리눅스 민트, 라즈베리 파이 OS가 전부 여기에 속해요. 커뮤니티가 크고, 인터넷에 한국어 자료도 많아서 초보자한테 훨씬 유리합니다.

    레드햇 계열yum이나 dnf를 씁니다. 페도라, CentOS, RHEL이 대표적이에요. 기업 서버 환경에서 많이 씁니다. 사실 취업 준비하는 분이라면 이쪽도 알아두면 좋긴 해요. 근데 처음 시작이라면 굳이 지금 당장은 아니어도 됩니다.

    잠깐, 이건 꼭 알아야 해요. 아치 리눅스(Arch Linux)라는 것도 있는데, 이건 완전히 다른 철학으로 만들어진 배포판입니다. 배우는 재미가 있지만, 초보자한테 절대 권하지 않아요. 설치 자체가 하나의 시험입니다.

    flowchart TD
        A[리눅스 배포판 선택 시작] --> B{사용 목적이 뭔가요?}
        B --> C[개인 학습 / 일상 사용]
        B --> D[서버 / 기업 환경]
        B --> E[임베디드 / IoT]
        C --> F[우분투 / 리눅스 민트]
        D --> G[CentOS / RHEL / 페도라]
        E --> H[라즈베리 파이 OS / 알파인]
        F --> I[✅ 초보자 강력 추천]
        G --> J[취업 준비생도 참고]
        H --> K[라즈베리 파이 보드 사용자]
    

    초보자에게 솔직하게 추천하는 배포판 비교

    💡 우분투가 1순위, 리눅스 민트가 2순위입니다. 이 두 가지 중 하나를 고르면 대부분의 문제가 해결됩니다.

    제가 올해 초에 개발자 커뮤니티 설문 결과를 여러 개 찾아서 비교해봤어요. 국내외 초보 사용자들이 처음 선택한 배포판 순위를 보면 거의 예외 없이 우분투가 1위였습니다. 이유는 간단해요. 자료가 많고, 문제가 생겨도 검색하면 답이 나오고, 설치도 쉽고, 업데이트도 잘 됩니다.

    배포판 계열 난이도 추천 대상 특징
    우분투 (Ubuntu) 데비안 ★☆☆ 모든 초보자 자료 풍부, GUI 지원, 커뮤니티 최대
    리눅스 민트 (Linux Mint) 데비안 ★☆☆ 윈도우 전환자 윈도우 UI와 유사, 안정적
    페도라 (Fedora) 레드햇 ★★☆ 개발자 지망생 최신 기술 도입 빠름, 기업 연계
    라즈베리 파이 OS 데비안 ★☆☆ IoT / 교육용 라즈베리 파이 전용 최적화
    아치 리눅스 (Arch) 독립 ★★★ 고급 사용자 높은 자유도, 진입장벽 높음

    혹시 “그냥 다 해보면 안 되나요?” 싶은 분도 계실 텐데요. 물론 가능합니다. USB 하나만 있으면 여러 배포판을 라이브 부팅으로 설치 없이 체험할 수 있어요. 그렇게 직접 써보고 고르는 게 사실 제일 정확한 방법이기도 합니다.

    설치 전에 반드시 확인해야 할 세 가지

    💡 하드웨어 사양, 사용 목적, 커뮤니티 지원 여부. 이 세 가지만 확인하면 배포판 선택에서 실패할 일이 없습니다.

    그런데 말이에요, 배포판 이름보다 중요한 게 있습니다. 내 컴퓨터에서 잘 돌아가는지, 내 목적에 맞는지를 먼저 따져야 해요.

    첫째, 하드웨어 사양을 확인하세요. 우분투는 최소 2GB RAM, 25GB 저장공간을 권장합니다. 오래된 노트북이라면 루분투(Lubuntu)나 리눅스 민트 XFCE 에디션처럼 경량 버전이 훨씬 쾌적합니다. 주변 직장인 한 분이 10년 된 구형 노트북에 우분투 기본판 설치했다가 너무 느려서 포기한 적이 있거든요. 경량 버전 권하니까 바로 해결됐습니다.

    둘째, 사용 목적이 중요합니다. 웹 개발 공부라면 우분투가 정답에 가깝습니다. 취업해서 서버 다뤄야 한다면 페도라나 CentOS도 알아두면 좋습니다. 라즈베리 파이로 뭔가 만들고 싶다면 라즈베리 파이 OS, 고민할 것도 없어요.

    셋째, 지원 기간과 커뮤니티를 확인하세요. 우분투 LTS 버전은 5년 지원됩니다. 안정성을 중시한다면 LTS를 선택하는 게 맞습니다. 최신 버전은 6개월마다 나오는데, 이건 얼리어답터 성향이 있는 분들에게 어울려요.

    아 그리고, 가상머신(VirtualBox 같은 거)으로 먼저 테스트해보는 방법도 있습니다. 윈도우 안에서 리눅스를 돌려볼 수 있어서, 기존 환경을 전혀 손대지 않아도 됩니다. 처음엔 이 방법이 제일 안전하고 마음 편해요.

    어떤 배포판을 선택하셨나요? 아니면 아직 고민 중이신가요? 저는 개인적으로 첫 배포판으로 우분투를 선택한 걸 한 번도 후회한 적이 없습니다. 자료가 넘쳐나서 모르는 게 없었거든요. 시작이 반이라고, 일단 하나 골라서 설치해보는 게 가장 빠른 길입니다.


    관련 글 더 보기

    전체 가이드로 돌아가기: 리눅스 입문 가이드: 설치부터 기본 명령어까지 완벽 정리

  • 리눅스 기본 명령어 정리

    💡 리눅스 명령어는 외우는 게 아닙니다. 자주 쓰는 20개만 손에 익히면 나머지는 자연스럽게 따라옵니다.

    터미널 앞에서 얼어붙었던 그 기억

    처음 터미널 창을 열었을 때 어떠셨나요? 저는 솔직히 그 검은 화면 앞에서 5분은 가만히 있었습니다. 커서만 깜빡이고, 뭘 입력해야 하는지 하나도 몰랐어요.

    그게 맞아요. 터미널은 익숙하지 않으면 무섭습니다. 근데 알고 보면 몇 가지 리눅스 명령어 패턴만 반복하는 구조예요. 오늘은 그 핵심만 뽑아서 정리해 드릴게요. 한 번 읽고 나면 “아, 별거 아니었네”라는 생각이 드실 겁니다.

    파일과 폴더를 다루는 기본 명령어

    💡 ls, cd, mkdir, rm. 이 네 가지가 파일 관리의 90%입니다. 여기서 시작하세요.

    리눅스에서 파일 탐색기 역할을 하는 게 바로 이 명령어들입니다. 윈도우에서 마우스로 하던 걸 글자로 하는 것뿐이에요.

    • ls — 현재 폴더 안의 파일/폴더 목록 보기. ls -la를 쓰면 숨김 파일까지 전부 보입니다.
    • cd — 폴더 이동. cd Documents라고 치면 Documents 폴더로 들어가요. cd ..는 상위 폴더로 이동.
    • mkdir — 새 폴더 만들기. mkdir 프로젝트 하면 바로 생깁니다.
    • rm — 파일 삭제. 이건 진짜 조심해야 합니다. 휴지통이 없어요. rm -rf는 특히 신중하게.
    • cp — 파일 복사. cp 원본파일 복사본 형태로 씁니다.
    • mv — 파일 이동 또는 이름 바꾸기. 이름 바꿀 때도 mv를 씁니다.

    제가 지난달에 직접 리눅스 서버에서 대용량 파일 정리를 해봤는데, 이 여섯 개 명령어만으로 수백 개 파일을 20분 만에 정리했습니다. GUI로 했으면 한 시간은 걸렸을 작업이에요.

    잠깐, 이건 꼭 알아야 해요. 명령어 뒤에 붙는 옵션(플래그)이 기능을 바꿔줍니다. ls만 치면 그냥 목록인데, ls -l은 상세 정보까지 보여주고, ls -a는 숨김 파일까지 보여줘요. 옵션 조합이 명령어 활용의 핵심입니다.

    시스템 정보 확인하는 명령어

    💡 내 시스템이 어떤 상태인지 알아야 문제를 해결할 수 있습니다. uname, df, ps, top, 이 네 가지로 웬만한 상태 파악이 됩니다.

    뭔가 이상하다 싶을 때, 또는 서버 상태를 점검해야 할 때 자주 쓰는 명령어들입니다.

    • uname -a — 운영체제, 커널 버전, 아키텍처 한 번에 확인.
    • df -h — 디스크 사용량. 어느 파티션이 꽉 찼는지 바로 보입니다.
    • free -m — 메모리 사용량. RAM이 얼마나 남았는지 확인.
    • ps aux — 현재 실행 중인 프로세스 전체 목록.
    • top — 실시간 CPU·메모리 사용률. 윈도우 작업관리자랑 비슷해요.
    • whoami — 현재 로그인된 사용자 이름 확인. 단순하지만 꽤 자주 씁니다.

    이 명령어들은 외우려고 하기보다 “시스템이 이상하다 → df, free, top부터 확인한다”는 루틴으로 기억하시는 게 훨씬 오래 남습니다.

    mindmap
      root((리눅스 명령어))
        파일 관리
          ls
          cd
          mkdir
          rm
          cp
          mv
        시스템 확인
          uname
          df
          free
          top
          ps
        텍스트 편집
          nano
          grep
          cat
          less
        권한 관리
          chmod
          chown
          sudo
          su
    

    텍스트 편집과 검색 명령어

    💡 nano는 가장 쉬운 터미널 텍스트 편집기입니다. grep은 파일 안에서 원하는 내용을 찾아주는 검색 도구입니다.

    여기서 반전인데, 리눅스 초보자한테 vi(vim)를 먼저 가르치는 곳이 많아요. 근데 솔직히 이 부분은 저도 좀 의아합니다. vi는 진입장벽이 꽤 있거든요. 처음엔 nano가 훨씬 낫습니다.

    • nano 파일명 — 파일 열기. Ctrl+O 저장, Ctrl+X 종료. 직관적입니다.
    • cat 파일명 — 파일 내용 바로 출력. 짧은 파일 확인할 때 편합니다.
    • less 파일명 — 긴 파일 페이지 단위로 보기. q 누르면 종료.
    • grep ‘찾을내용’ 파일명 — 파일 안에서 특정 텍스트 검색. 로그 분석할 때 정말 많이 써요.

    (이건 진짜 꿀팁) grep에 -r 옵션을 붙이면 폴더 전체를 재귀 검색합니다. grep -r '에러' /var/log/ 이렇게 치면 로그 폴더 전체에서 ‘에러’ 텍스트가 포함된 줄을 다 찾아줍니다. 이것만 알아도 로그 분석이 훨씬 쉬워집니다.

    권한 설정과 sudo 명령어

    💡 리눅스에서 권한은 보안의 핵심입니다. sudo는 관리자 권한이 필요할 때만 쓰고, chmod로 파일 권한을 조절합니다.

    그런데 말이에요, 이 권한 개념을 처음에 이해 못 해서 막히는 분들이 정말 많습니다. 저도 처음엔 “왜 파일을 못 여는 거지?” 싶어서 한참 헤맸어요.

    리눅스는 모든 파일에 읽기(r), 쓰기(w), 실행(x) 권한이 있고, 소유자·그룹·기타 사용자로 나뉩니다. chmod 755 파일명 같은 숫자 조합이 이 권한을 나타냅니다.

    • sudo — 관리자 권한으로 명령어 실행. 패키지 설치할 때 항상 앞에 붙여요.
    • chmod — 파일 권한 변경. chmod +x 스크립트.sh는 실행 권한 부여.
    • chown — 파일 소유자 변경. 서버 관리할 때 자주 씁니다.

    혹시 “sudo 쓰면 안 위험한가요?” 하는 분들도 있는데, 위험한 건 맞아요. 그래서 꼭 필요한 경우에만 쓰는 습관이 중요합니다. 아무 명령어나 앞에 sudo 붙이는 건 절대 권하지 않습니다.

    처음엔 많아 보여도 실제로 매일 쓰는 명령어는 10개도 안 됩니다. 오늘 정리한 것들 중에서 ls, cd, mkdir, grep, sudo, chmod 이 여섯 개만 먼저 손에 익혀보세요. 나머지는 필요할 때 자연스럽게 찾게 됩니다.


    관련 글 더 보기

    전체 가이드로 돌아가기: 리눅스 입문 가이드: 설치부터 기본 명령어까지 완벽 정리

  • 리눅스 터미널 사용법

    💡 터미널은 처음엔 낯설지만, 자동 완성(Tab)과 히스토리(↑↓)만 익혀도 작업 속도가 3배는 빨라집니다.

    터미널, 처음 열면 뭐가 보이나요?

    터미널을 처음 열었을 때 가장 먼저 보이는 건 이런 모양입니다.

    user@hostname:~$

    이게 뭔지 몰라서 그냥 꺼버린 경험, 있으시죠? 주변에서 리눅스 배운다고 했던 20대 초반 지인도 딱 이 화면에서 멈췄다고 했어요. “아무것도 없는데 어디에 뭘 입력해요?”라고요.

    하나씩 뜯어보면 별거 없습니다. user는 현재 로그인 사용자 이름, hostname은 컴퓨터 이름, ~는 홈 디렉토리, $는 일반 사용자라는 표시예요. 관리자(root)면 $가 #으로 바뀝니다.

    여기까지만 이해해도 터미널 사용법의 첫 관문은 통과한 겁니다.

    명령어 입력과 실행의 기본 흐름

    💡 명령어는 항상 프롬프트 뒤에 입력하고 Enter를 누르면 실행됩니다. 결과가 나오면 읽고, 다시 프롬프트가 뜨면 준비 완료입니다.

    터미널 사용법의 기본 흐름은 단순합니다. 명령어 입력 → Enter → 결과 출력 → 다음 명령어 입력. 이 반복이에요.

    근데 중요한 포인트가 있습니다. 결과가 없을 때도 있어요. 예를 들어 mkdir 새폴더를 치면 아무것도 안 나옵니다. 그게 정상입니다. 리눅스는 문제가 없으면 조용한 게 기본 철학이에요.

    웃긴 건, 처음에 이걸 몰라서 “명령어가 안 먹혔나?” 하고 같은 걸 세 번 입력해서 폴더를 세 개 만든 경험이 있어요. (이미 있다는 에러가 나오면 그때서야 알아챘습니다.)

    오류가 났을 때는 빨간 글씨나 ‘error’, ‘permission denied’ 같은 메시지가 뜹니다. 이 메시지를 그대로 검색하면 해결책이 나오는 경우가 대부분입니다. 에러 메시지가 나왔다고 당황하지 마세요. 오히려 힌트입니다.

    sequenceDiagram
        participant U as 사용자
        participant T as 터미널
        participant S as 시스템
    
        U->>T: 명령어 입력 (예: ls -la)
        T->>S: 명령어 전달
        S->>S: 명령어 처리
        S->>T: 결과 반환
        T->>U: 출력 표시
        T->>U: 프롬프트 재표시 ($)
        U->>T: 다음 명령어 입력
    

    작업 속도를 3배 올려주는 히스토리와 자동 완성

    💡 Tab 키 자동 완성과 ↑↓ 히스토리는 터미널의 가장 강력한 기능입니다. 이것만 써도 작업 속도가 완전히 달라집니다.

    이 두 가지를 모르고 터미널 쓰는 건 진짜 손해입니다.

    Tab 자동 완성은 파일명이나 명령어를 일부만 입력하고 Tab을 누르면 나머지를 자동으로 채워줍니다. 예를 들어 Documents 폴더로 이동하려면 cd Doc까지만 치고 Tab을 누르면 cd Documents/가 됩니다. 긴 파일명 치다가 오타 낼 일이 없어요.

    참고로 Tab을 두 번 누르면 해당 글자로 시작하는 모든 항목이 나열됩니다. 뭐가 있는지 탐색할 때도 씁니다.

    히스토리 기능은 방향키 ↑를 누르면 이전에 입력한 명령어가 차례로 나옵니다. 같은 명령어를 반복할 때 다시 타이핑할 필요가 없어요. history 명령어를 치면 최근 사용한 명령어 목록이 번호와 함께 나오고, !번호 형식으로 재실행도 됩니다.

    단축키 / 명령어 기능 사용 빈도
    Tab 명령어·파일명 자동 완성 매우 높음
    ↑ / ↓ 이전/다음 명령어 히스토리 탐색 매우 높음
    Ctrl + C 실행 중인 명령어 강제 종료 높음
    Ctrl + L 터미널 화면 지우기 (clear와 동일) 높음
    Ctrl + A / E 커서를 줄 맨 앞/뒤로 이동 중간
    history 명령어 사용 기록 전체 보기 중간
    Ctrl + R 히스토리 역방향 검색 중간

    Ctrl+R은 처음엔 좀 어색한데, 익숙해지면 정말 자주 씁니다. 긴 명령어를 일부 키워드로 검색해서 꺼낼 수 있거든요.

    스크립트 작성으로 반복 작업 자동화하기

    💡 셸 스크립트는 명령어를 파일에 저장해두고 한 번에 실행하는 방식입니다. 반복 작업을 자동화하는 가장 첫 걸음입니다.

    아 그리고, 터미널 사용법에서 스크립트를 빼놓을 수 없습니다. 어렵게 생각할 필요 없어요. 그냥 명령어 모음을 파일에 저장하는 겁니다.

    예를 들어 매일 특정 폴더를 백업하는 작업을 한다면, 매번 명령어를 치는 대신 스크립트 파일 하나를 만들어놓고 실행하면 끝입니다. 직접 지난 주말에 해봤는데, 10줄짜리 스크립트 하나로 매일 하던 5분짜리 수동 작업을 완전히 없앴습니다.

    기본 스크립트 만드는 방법입니다.

    1. nano로 파일 만들기: nano backup.sh
    2. 첫 줄에 반드시 입력: #!/bin/bash
    3. 그 아래에 명령어 순서대로 입력
    4. 저장 후 실행 권한 부여: chmod +x backup.sh
    5. 실행: ./backup.sh

    처음엔 ‘이게 되나?’ 싶었는데, 막상 해보면 진짜 됩니다. 스크립트가 실행되면서 명령어가 하나씩 순서대로 처리되는 걸 보면 꽤 뿌듯합니다.

    💡 팁 — 스크립트 첫 줄의 #!/bin/bash를 ‘셔뱅(shebang)’이라고 부릅니다. “이 파일은 bash로 실행하라”는 선언이에요. 빠뜨리면 오류가 날 수 있으니 습관적으로 넣어두세요.

    터미널이 처음에 무섭게 느껴지는 건 당연합니다. 그런데 Tab 자동 완성과 히스토리 두 개만 익혀도 체감이 확 달라져요. 그다음엔 자주 쓰는 명령어가 몇 개씩 쌓이고, 어느 순간 마우스보다 터미널이 더 편해지는 순간이 옵니다. 이거 저만 그런 건 아니겠죠?


    관련 글 더 보기

    전체 가이드로 돌아가기: 리눅스 입문 가이드: 설치부터 기본 명령어까지 완벽 정리

  • 윈도우에서 리눅스 사용: WSL 설치 및 설정

    💡 WSL은 윈도우에서 리눅스를 별도 설치 없이 사용할 수 있는 가장 빠른 방법입니다. 명령어 한 줄로 설치하고, 실무 개발 환경까지 그대로 쓸 수 있어요.

    윈도우에서 리눅스 쓰려면 WSL이 답입니다

    리눅스 써보고 싶은데, 컴퓨터 포맷하기가 겁난다는 분들 많으시죠. 맞아요. 저도 처음엔 그랬어요.

    솔직히 말하면, 몇 년 전만 해도 리눅스를 쓰려면 USB에 설치 이미지 굽고, 파티션 나누고, 부트로더 건드리는 복잡한 과정을 거쳐야 했습니다. 잘못하면 윈도우까지 날아가는 상황이 생기기도 했고요. 저도 그렇게 한 번 날렸습니다. 진짜로.

    근데요, 지금은 완전히 달라졌습니다. WSL(Windows Subsystem for Linux)을 사용하면 윈도우 위에서 리눅스를 그냥 앱처럼 실행할 수 있거든요. 파티션? 필요 없습니다. 듀얼 부팅? 몰라도 됩니다. 그냥 명령어 하나면 끝나요.

    이 글에서는 WSL 설치 전 확인 사항부터, 실제 설치 방법, 터미널 사용법, 그리고 윈도우 파일과 리눅스를 오가는 방법까지 처음 시작하는 분들 기준으로 하나하나 짚어드리겠습니다.

    WSL 설치 전, 이것만 먼저 확인하세요

    💡 WSL 2는 윈도우 10 2004 버전(빌드 19041) 이상에서 동작합니다. 설치 전 OS 버전부터 확인하는 게 순서입니다.

    급하게 설치부터 시도하다가 오류 메시지 보고 당황하는 분들이 꽤 있습니다. 제 주변 직장인 한 분도 그랬는데, 결국 OS 버전 문제였거든요. 미리 확인했으면 30분을 날리지 않아도 됐을 텐데요.

    확인 방법은 간단합니다. 윈도우 키 + R 눌러서 winver 입력하면 현재 버전이 바로 뜹니다.

    • 윈도우 10 버전 2004 이상 (빌드 19041+)
    • 윈도우 11은 모든 버전에서 지원
    • 64비트 시스템 필수
    • RAM 4GB 이상 권장 (8GB면 더 쾌적)

    잠깐, 이건 꼭 알아야 해요. WSL에는 버전이 두 가지 있습니다. WSL 1과 WSL 2인데, 지금 기준으로는 WSL 2를 쓰는 게 압도적으로 낫습니다. 파일 시스템 성능이 몇 배 차이 나고, 실제 리눅스 커널을 그대로 사용하기 때문에 호환성도 훨씬 좋거든요.

    가상화 기능도 활성화되어 있어야 합니다. 대부분 기본으로 켜져 있지만, 구형 PC라면 BIOS에서 Intel VT-x 또는 AMD-V를 활성화해야 할 수도 있습니다. 이 부분에서 막히는 분이 간혹 있는데, 제조사 홈페이지에서 모델명 검색하면 방법이 나옵니다.

    WSL 설치 및 우분투 배포판 선택하기

    💡 PowerShell에서 명령어 한 줄로 WSL과 우분투를 동시에 설치할 수 있습니다. 2023년 이후 가장 단순한 방법이에요.

    요즘은 정말 쉬워졌습니다. 예전처럼 기능 하나씩 켜고, 재부팅하고, 마이크로소프트 스토어 들어가고 하는 복잡한 과정이 필요 없어요.

    PowerShell을 관리자 권한으로 열고 아래 명령어 하나만 입력하면 됩니다.

    wsl --install

    이 명령어 하나로 WSL 2 활성화, 가상 머신 플랫폼 설정, 기본 배포판인 우분투 설치까지 한 번에 처리됩니다. 설치 완료 후 재부팅하면 우분투가 자동으로 초기 설정을 시작해요.

    아 그리고, 우분투 말고 다른 배포판을 원하는 분들을 위해 선택지를 정리해봤습니다.

    배포판 특징 추천 대상 설치 명령어
    Ubuntu 22.04 가장 많은 자료, 최신 LTS 입문자, 웹 개발자 wsl –install -d Ubuntu-22.04
    Debian 가볍고 안정적 서버 운영 목적 wsl –install -d Debian
    Kali Linux 보안 도구 내장 보안/침투 테스트 학습 wsl –install -d kali-linux
    Fedora 최신 패키지 빠른 반영 Red Hat 계열 학습 별도 수동 설치 필요

    처음 시작하는 분이라면 그냥 기본 우분투 쓰세요. 검색하면 자료가 가장 많이 나오고, 막혔을 때 해결책도 쉽게 찾을 수 있습니다. 저도 처음엔 “있어 보인다”는 이유로 Arch 리눅스를 설치하려다 포기한 적이 있어요. 입문할 때는 메이저 배포판이 답입니다.

    flowchart TD
        A[PowerShell 관리자 실행] --> B[wsl --install 입력]
        B --> C[WSL 2 및 우분투 자동 다운로드]
        C --> D[재부팅]
        D --> E[우분투 초기 설정\n사용자명 + 비밀번호 입력]
        E --> F[WSL 설치 완료 ✅]
        F --> G{다른 배포판 필요?}
        G -- 예 --> H[wsl --install -d 배포판명]
        G -- 아니오 --> I[바로 개발 시작]
    

    WSL 터미널에서 리눅스 명령어 사용하는 방법

    💡 Windows Terminal과 VSCode를 연동하면 WSL 개발 환경이 크게 쾌적해집니다. 기본 터미널보다 훨씬 편해요.

    설치가 끝났으면 이제 실제로 써볼 차례입니다. 그런데 여기서 반전인데, 기본 제공되는 우분투 창보다 Windows Terminal을 사용하는 게 훨씬 편합니다. 마이크로소프트 스토어에서 무료로 받을 수 있고, WSL 배포판을 탭으로 열어서 쓸 수 있거든요.

    더 나아가면 VSCode 설치 후 WSL 확장 프로그램을 추가하면, 리눅스 파일 시스템 안에서 바로 코딩이 가능해집니다. 제가 지난달에 직접 파이썬 프로젝트 환경을 WSL 위에 세팅해봤는데, 속도나 안정성이 진짜 맥북 쓰는 친구들이랑 비교해도 전혀 부족함이 없었어요.

    WSL 터미널에서 기본적으로 알아두면 좋은 명령어들은 이렇습니다.

    • ls — 현재 폴더 내용 보기
    • cd 폴더명 — 폴더 이동
    • pwd — 현재 위치 확인
    • sudo apt update && sudo apt upgrade — 패키지 최신화
    • sudo apt install 패키지명 — 프로그램 설치

    혹시 처음 명령어를 입력할 때 “이게 맞나?” 싶은 느낌 받으신 분 있으신가요? 저도 그랬거든요. 처음엔 엔터 누르는 것도 긴장됐는데, 써보면 금방 익숙해집니다.

    패키지 설치는 apt 명령어를 씁니다. 우분투 기준이고요, 예를 들어 git을 설치하려면 이렇게 합력합니다.

    sudo apt install git

    설치 중간에 “계속하시겠습니까?” 라는 메시지가 나오면 Y를 입력하고 엔터 누르면 됩니다. 솔직히 이 부분은 저도 처음엔 영어라서 좀 당황했어요. (이건 진짜 처음엔 다 그래요)

    윈도우와 WSL 간 파일 공유, 생각보다 훨씬 쉽습니다

    💡 WSL에서 /mnt/c 경로로 이동하면 윈도우 C드라이브에 바로 접근할 수 있습니다. 별도 설정 없이 파일을 주고받을 수 있어요.

    그런데 말이에요, 많은 분들이 “WSL에서 만든 파일을 윈도우에서 어떻게 열지?” 이 부분에서 막힙니다. 저도 처음에 이게 제일 헷갈렸거든요.

    사실 방법은 두 가지입니다. 방향에 따라 접근이 달라요.

    WSL에서 윈도우 파일 접근하기

    WSL 터미널에서 /mnt/c로 이동하면 바로 C드라이브입니다. 예를 들어 윈도우 바탕화면의 파일을 열고 싶다면 이렇게 하면 됩니다.

    cd /mnt/c/Users/사용자명/Desktop

    D드라이브는 /mnt/d, E드라이브는 /mnt/e 이런 식으로 매핑되어 있어요.

    윈도우에서 WSL 파일 접근하기

    파일 탐색기 주소창에 \\wsl$ 을 입력하면 WSL 배포판 폴더가 네트워크 드라이브처럼 보입니다. 클릭해서 들어가면 리눅스 파일 시스템을 윈도우 탐색기에서 그냥 볼 수 있어요. 드래그 앤 드롭으로 파일 복사도 됩니다.

    참고로, 성능 면에서 팁을 드리자면 리눅스용 프로젝트 파일은 윈도우 드라이브(/mnt/c)가 아닌 WSL 파일 시스템 안에 두는 게 훨씬 빠릅니다. 우리 동네 개발자 커뮤니티 모임에서도 이 얘기가 나왔는데, 실제로 같은 프로젝트를 두 곳에 두고 비교해보니 속도 차이가 체감될 정도였거든요.

    flowchart LR
        subgraph Windows
            A[C드라이브\n파일 탐색기]
            B[VSCode\nWindows 앱]
        end
        subgraph WSL2
            C[Ubuntu\n파일 시스템]
            D[개발 프로젝트\n권장 위치]
        end
        A -- /mnt/c 경로 --> C
        C -- \\wsl$ 경로 --> A
        B -- WSL 확장 --> D
        D -- 빠른 I/O --> D
    

    WSL 처음 쓸 때 자주 겪는 문제들

    💡 WSL 설치 오류 대부분은 Windows 업데이트 미적용 또는 가상화 기능 비활성화가 원인입니다. 먼저 이 두 가지부터 확인하세요.

    설치하다가 막히면 굉장히 답답하죠. 자주 나오는 상황들을 정리해봤습니다.

    1. 0x80370102 오류 — 가상화 기능이 꺼져 있는 경우입니다. BIOS 설정에서 Intel VT-x 또는 AMD-V를 활성화하세요.
    2. 0x8007019e 오류 — Windows Subsystem for Linux 기능이 꺼진 상태입니다. wsl --install이 자동으로 켜주지만, 구 버전 윈도우에서는 수동으로 켜야 할 수 있어요.
    3. wsl 명령어를 찾을 수 없음 — PowerShell이 관리자 권한으로 실행되지 않았을 가능성이 높습니다.
    4. 설치는 됐는데 화면이 안 뜸 — 재부팅이 완료된 후 시작 메뉴에서 Ubuntu를 직접 검색해서 실행해보세요.

    이거 저만 그런 건가요? 저도 처음에 관리자 권한 빠뜨리고 한참 헤맸는데, 의외로 이 실수 하는 분들이 많더라고요.

    웃긴 건, 이 오류들 중 90% 이상이 재부팅 한 번으로 해결된다는 겁니다. 윈도우 업데이트도 밀려있으면 먼저 다 적용하고 시작하는 게 좋아요. 그게 제일 확실한 예방책입니다.

    WSL로 개발 환경 세팅, 어디까지 가능한가요

    💡 Node.js, Python, Docker, Git 등 실무에서 쓰는 개발 도구 대부분이 WSL에서 완벽하게 동작합니다. 맥북 없이도 동급 환경 구성이 가능해요.

    WSL이 그냥 “리눅스 체험판” 수준이라고 생각하시는 분들도 있는데, 전혀 그렇지 않습니다. 제 주변 30대 초반 개발자 한 분은 맥북 쓰다가 WSL로 갔는데, 웹 개발 작업에서는 오히려 더 편하다고 했어요. 특히 Docker 연동이나 Git 작업에서는 체감 차이가 없다고요.

    WSL에서 세팅 가능한 것들을 간단히 정리하면:

    • Python, Node.js, Java, Go, Rust — 주요 언어 런타임 전부
    • Git, GitHub CLI — 버전 관리
    • Docker Desktop — WSL 2 백엔드 연동 지원
    • MySQL, PostgreSQL, MongoDB — 데이터베이스
    • nginx, Apache — 웹 서버

    사실은 처음 WSL 접할 때 “이게 진짜 리눅스랑 똑같은 거 맞나?” 의심했는데, 써보니까 맞더라고요. 실제 리눅스 커널이 돌아가는 거라 호환성 문제가 거의 없습니다.

    특히 백엔드 개발자 분들이나 데이터 분석 공부하시는 분들한테는 진짜 강력 추천합니다. 포맷 걱정 없이 바로 시작할 수 있으니까요.

    혹시 이 중에서 특정 도구 설치 방법이나 환경 세팅 방법이 궁금하신 분 있으신가요? 댓글로 남겨주시면 다음 글에서 따로 다뤄보겠습니다.


    관련 글 더 보기

    전체 가이드로 돌아가기: 리눅스 입문 가이드: 설치부터 기본 명령어까지 완벽 정리

  • 리눅스 입문: 윈도우 사용자를 위한 완벽 가이드

    윈도우만 쓰다가 처음 리눅스를 접했을 때 솔직히 좀 당황했습니다. 마우스 클릭 몇 번으로 모든 걸 해결하던 환경에서 갑자기 까만 화면에 명령어를 입력해야 한다니. “이게 진짜 현대 운영체제가 맞나?” 싶었어요.

    근데 이런 낯섦 때문에 많은 분들이 리눅스의 문 앞에서 그냥 돌아서곤 합니다. 아까운 일이에요. 리눅스를 조금만 익히면 윈도우에서는 상상도 못 했던 자유로움과 효율성을 경험할 수 있거든요. 개발자 취업을 준비하는 분들, 서버 관리를 배우고 싶은 분들, 아니면 그냥 “나도 한번 써볼까” 하는 분들 모두에게 리눅스는 분명히 가치 있는 투자입니다.

    이 가이드는 윈도우에서 리눅스로 넘어오려는 분들을 위해 제가 직접 경험하고 정리한 내용입니다. 설치 전 배포판 선택부터 터미널 기초, WSL 활용법까지 — 처음부터 끝까지 순서대로 따라오시면 됩니다.

    목차

    1. 리눅스 배포판 선택 가이드
    2. 리눅스 기본 명령어 정리
    3. 리눅스 터미널 사용법
    4. 윈도우에서 리눅스 사용: WSL 설치 및 설정

    리눅스 배포판, 뭘 골라야 할까요?

    💡 초보자라면 우분투(Ubuntu) 하나면 충분합니다. 나머지는 익숙해진 다음에 탐색해도 늦지 않아요.

    리눅스를 처음 배우는 분들이 가장 많이 막히는 지점이 바로 여기입니다. “배포판이 뭐가 그렇게 많아?” 싶죠. 우분투, 페도라, 데비안, 아치, 민트… 나열하자면 끝이 없어요. 처음 접하면 마치 스마트폰 기종 고르는 것보다 더 복잡하게 느껴지기도 합니다.

    여기서 반전인데, 사실 초보자한테는 선택지가 그렇게 중요하지 않습니다. 어떤 배포판이든 리눅스의 핵심 원리는 동일하거든요. 다만 출발점을 잘못 고르면 불필요하게 고생할 수 있어서, 어떤 기준으로 배포판을 선택해야 하는지 아는 것이 중요합니다.

    제가 처음 리눅스를 설치할 때 아무 생각 없이 아치 리눅스를 골랐다가 설치 과정에서만 반나절을 날린 기억이 있어요. (지금 와서 생각하면 다 추억이지만…) 배포판 선택 기준, 초보자 추천 목록, 그리고 각 배포판의 실질적인 차이점까지 아래 글에서 자세히 다루고 있습니다.

    자세히 읽어보기: 리눅스 배포판 선택 가이드

    터미널이 두렵다면? 기본 명령어부터 시작하세요

    💡 리눅스 명령어는 외우는 게 아니라, 자주 쓰다 보면 손이 먼저 기억합니다.

    솔직히 이 부분은 저도 처음엔 꽤 막막했습니다. 윈도우에서는 파일 복사할 때 그냥 Ctrl+C, Ctrl+V면 되는데, 리눅스에서는 cpmv니 하는 명령어를 써야 한다고 하니까요. “이걸 언제 다 외워?” 싶었죠.

    근데 막상 써보면 그렇게 많지 않습니다. 실제로 일상적인 작업에서 쓰이는 명령어는 20~30개 안팎이에요. ls로 파일 목록 보고, cd로 폴더 이동하고, mkdir로 폴더 만들고. 이것만 알아도 웬만한 건 다 됩니다.

    잠깐, 이건 꼭 알아야 해요. 명령어를 외우려고 하지 말고 먼저 손으로 쳐보는 것이 훨씬 빠릅니다. 사람은 눈으로 읽는 것보다 직접 입력해봤을 때 기억에 더 오래 남거든요. 어떤 명령어가 왜 쓰이는지, 실제 예제와 함께 정리한 내용을 아래에서 확인해보세요.

    자세히 읽어보기: 리눅스 기본 명령어 정리

    리눅스 터미널, 이렇게 쓰면 진짜 빨라집니다

    💡 터미널을 잘 다루는 것과 리눅스를 잘 다루는 것은 거의 같은 말입니다.

    명령어를 하나씩 외우는 것과, 터미널 자체를 효율적으로 활용하는 것은 다른 이야기입니다. 이 차이를 이해하는 순간 생산성이 확 올라가요. 예를 들어, 탭 자동완성 기능 하나만 제대로 써도 타이핑 실수가 절반 이하로 줄어듭니다. 맞아요, 그냥 Tab 키 하나로요.

    주변에 서버 개발을 하는 지인이 있는데, 처음에 터미널을 그냥 “명령어 입력하는 창” 정도로만 알고 썼다고 해요. 히스토리 검색, 단축키, 파이프 활용을 배우고 나서 작업 속도가 체감상 3배는 빨라졌다고 하더라고요. 과장이 아니에요, 진짜로.

    아 그리고, 터미널 커스터마이징도 재미있는 부분입니다. 기본 설정이 워낙 밋밋해 보이다 보니 처음엔 그냥 쓰는 분들이 많은데, 조금만 손보면 훨씬 쓰기 편한 환경을 만들 수 있어요. 터미널 기초부터 효율적인 활용 팁까지 아래 글에서 단계별로 설명하고 있습니다.

    자세히 읽어보기: 리눅스 터미널 사용법

    리눅스 설치 없이 윈도우에서 바로 쓰는 방법: WSL

    💡 WSL은 “리눅스 입문 장벽”을 크게 낮춰준 마이크로소프트의 선물 같은 기능입니다.

    사실 리눅스를 처음 써보고 싶은데 “기존 윈도우 환경을 바꾸기 싫다”는 분들이 꽤 많습니다. 당연하죠. 쓰던 프로그램들, 익숙한 환경을 포기하는 건 쉬운 일이 아니니까요. 그런 분들한테 딱 맞는 방법이 WSL(Windows Subsystem for Linux)입니다.

    WSL을 한 줄로 설명하자면, 윈도우 안에서 리눅스를 실행할 수 있게 해주는 기능입니다. 가상머신처럼 무겁지도 않고, 별도의 파티션 나누기도 필요 없어요. 제가 올해 초 WSL2를 설치해서 약 두 달 정도 써봤는데, 개발 환경 구축할 때 특히 편리했습니다. 윈도우 파일 시스템과 리눅스 환경을 오가면서 쓸 수 있다는 게 생각보다 훨씬 실용적이에요.

    다만 WSL이 완벽한 리눅스 환경을 대체하진 않습니다. 일부 기능 제한이 있고, 그래픽 집약적인 작업에서는 성능 차이가 있기도 해요. 이 부분도 아래 글에서 솔직하게 다루고 있으니 참고해보세요.

    자세히 읽어보기: 윈도우에서 리눅스 사용: WSL 설치 및 설정

    리눅스 vs 윈도우: 핵심 차이 한눈에 보기

    💡 어느 쪽이 더 낫다는 게 아니라, 어떤 상황에서 무엇이 더 맞는지를 알아야 합니다.

    항목 윈도우 리눅스
    인터페이스 GUI 중심, 직관적 CLI 중심, 학습 필요
    소프트웨어 호환성 폭넓은 상용 소프트웨어 오픈소스 생태계 강점
    개발 환경 설정이 다소 복잡 기본적으로 개발 친화적
    보안 업데이트 마이크로소프트 일정 의존 빠른 커뮤니티 패치
    비용 라이선스 비용 발생 대부분 무료
    커스터마이징 제한적 시스템 전반 수정 가능
    게임 지원 압도적으로 우세 Steam Proton으로 개선 중
    서버 환경 일부 엔터프라이즈 사용 전 세계 서버의 대다수

    표를 보면 확실히 느껴지시죠? 리눅스가 절대적으로 우월한 게 아니라, 상황에 따라 선택이 달라집니다. 개인 PC 게임용이라면 윈도우가 맞고, 개발 서버나 클라우드 환경이라면 리눅스가 훨씬 자연스럽습니다.

    flowchart TD
        A[리눅스 입문 시작] --> B{사용 목적은?}
        B -->|개발/서버 학습| C[배포판 선택]
        B -->|윈도우 유지하고 싶음| D[WSL 설치]
        C --> E[우분투 추천]
        C --> F[페도라 / 민트 등]
        E --> G[기본 명령어 학습]
        D --> G
        G --> H[터미널 활용법 익히기]
        H --> I[실무 프로젝트 적용]
    

    자주 묻는 질문 (FAQ)

    리눅스는 윈도우처럼 GUI가 필요 없나요?

    필요 없는 건 아닙니다. 리눅스에도 GNOME, KDE 같은 훌륭한 GUI 데스크탑 환경이 있습니다. 우분투를 설치하면 기본적으로 GNOME이 포함되어 있어서 윈도우와 크게 다르지 않은 마우스 기반 환경을 쓸 수 있어요. 다만 서버나 개발 환경에서는 CLI(명령줄 인터페이스)를 주로 사용하는 게 효율적이기 때문에 터미널 사용이 강조되는 것입니다. 결국 GUI와 CLI 모두 상황에 따라 쓰는 도구라고 생각하시면 됩니다.

    우분투 설치 시 문제가 발생하면 어떻게 해결해야 하나요?

    가장 먼저 해볼 것은 공식 우분투 커뮤니티 포럼이나 Ask Ubuntu 사이트 검색입니다. 대부분의 오류 메시지를 그대로 복붙해서 검색하면 이미 누군가 같은 문제를 겪고 해결한 사례가 나와요. 웃긴 건, 제가 처음 설치할 때 만난 오류 5개 중 4개는 그렇게 해결했습니다. 그리고 설치 전 BIOS 설정에서 Secure Boot 옵션을 확인하는 것도 꼭 챙겨보세요. 이게 켜져 있어서 설치가 안 되는 경우가 꽤 많거든요.

    WSL을 사용하면 리눅스와 동일한 환경을 얻을 수 있나요?

    거의 비슷하지만 완전히 동일하지는 않습니다. WSL2는 실제 리눅스 커널을 사용하기 때문에 대부분의 리눅스 명령어와 개발 도구가 정상 작동합니다. 하지만 하드웨어 직접 접근이 필요한 작업이나, 특정 커널 기능을 요구하는 프로그램에서는 제한이 생길 수 있어요. 일반적인 개발 공부나 서버 스크립트 연습 목적이라면 WSL로 충분합니다. 다만 리눅스를 메인 환경으로 쓰고 싶다면 결국 별도 설치가 더 나은 경험을 줍니다.

    리눅스 입문, 어렵지 않습니다

    처음 리눅스를 접했을 때의 그 막막함, 저도 경험해봐서 압니다. 터미널이 낯설고, 명령어가 생소하고, 배포판 이름도 하나같이 어렵게 느껴지죠.

    그런데 말이에요, 리눅스는 하루 이틀 만에 마스터하는 게 아닙니다. 조금씩, 필요한 것부터 하나씩 배워가는 과정이에요. 위에서 소개한 네 가지 가이드를 순서대로 따라가시면, 어느 순간 터미널 앞에서도 자연스럽게 손이 움직이는 자신을 발견하실 겁니다.

    배포판 선택이 막막하다면 리눅스 배포판 선택 가이드부터, 명령어가 궁금하다면 기본 명령어 정리부터, 윈도우를 그대로 유지하고 싶다면 WSL 설치 가이드부터 시작해보세요. 각자의 출발점이 다를 수 있으니까요.

    💡 리눅스는 배우는 데 시간이 걸리지만, 한번 익히면 그 가치가 오래 갑니다. 지금 시작하는 게 가장 빠른 방법입니다.