전체 글 851

Git을 활용한 코드 동기화

Git을 활용한 코드 동기화Git을 활용한 코드 동기화는 호스트와 우분투 가상머신 간 개발 프로젝트를 효율적으로 관리하는 가장 체계적인 방식입니다. 단순한 파일 이동을 넘어, 코드 버전 관리, 변경 이력 추적, 협업 구조까지 자연스럽게 포함하기 때문에 장기적인 개발 환경 구성에서 필수적인 전략이 됩니다. 또한 이 방식은 실제 서버 배포, CI/CD 파이프라인, GitHub 협업 과정과도 동일하여 학습 가치가 큽니다.● Git 동기화 방식의 핵심 개념Git을 활용하면 호스트와 VM이 동시에 같은 프로젝트를 안전하게 관리할 수 있습니다.구조 예시:GitHub (중앙 저장소) ↕호스트 Windows ↕Ubuntu VM즉, 프로젝트를 중앙 원격 저장소로 관리하고, 호스트와 VM은 서로 코드만 ..

SCP 및 SFTP 파일 전송

SCP 및 SFTP 파일 전송SCP와 SFTP는 호스트와 우분투 가상머신 간에 파일을 전송하는 안전하고 신뢰도 높은 방법입니다. 공유 폴더나 Drag & Drop보다 제어와 보안성이 뛰어나며, 서버 환경과 동일한 방식이기 때문에 실제 운영 서버로 확장할 때도 그대로 적용됩니다. 특히 터미널 기반 작업에 익숙해질수록 가장 강력한 파일 이동 수단으로 활용됩니다.● SCP와 SFTP 개념 방식 특징 사용 상황 SCP (Secure Copy)명령어 기반 파일 복사빠르게 파일 하나 또는 디렉터리 복사SFTP (SSH File Transfer Protocol)SSH 기반 파일 탐색 및 전송GUI 파일 탐색기나 터미널 기반 업·다운로드둘 모두 SSH 기반이기 때문에 SSH 접속 설정만 되어 있으면 별도 설치 없이..

클립보드 공유 및 Drag & Drop

클립보드 공유 및 Drag & Drop클립보드 공유와 Drag & Drop 기능은 호스트와 우분투 가상머신 간에 텍스트나 파일을 빠르게 주고받기 위한 가장 단순하면서도 직관적인 방식입니다. 개발 환경에서 명령어나 URL, 설정 파일 조각을 빠르게 붙여 넣거나, 간단한 이미지·문서 파일을 이동할 때 매우 유용합니다. 단, 안정성과 보안성 측면에서는 SSH·공유 폴더보다 낮기 때문에, 보조 기능으로 활용하는 것이 효율적입니다.● 기능 개요클립보드 공유: 호스트에서 복사한 내용을 VM에 붙여넣기, 또는 그 반대로 가능Drag & Drop: 파일이나 폴더를 마우스로 끌어 VM 화면에 놓으면 자동으로 복사우분투 환경에서는 이 기능이 VMware Tools 설치 여부에 좌우됩니다.● 활성화 방법VMware Work..

공유 폴더(Shared Folder)

공유 폴더(Shared Folder)공유 폴더는 호스트와 우분투 가상머신 사이에서 파일을 빠르고 간편하게 주고받을 수 있는 방법입니다. 특히 코드 파일, 문서, 이미지, 데이터셋 등을 자주 이동해야 하는 개발 환경에서 반드시 활용할 기능입니다. 별도의 네트워크 전송 명령 없이도 마치 같은 PC 안의 폴더처럼 사용할 수 있기 때문에 생산성이 크게 향상됩니다.● 공유 폴더의 핵심 개념호스트 PC에 특정 폴더를 지정하면VMware가 해당 폴더를 우분투 VM 내부에 연결해 줍니다.VM에서 접근하면 파일 읽기·쓰기·편집이 가능합니다.즉, 호스트에서 편집 → VM에서 실행이라는 개발 루틴이 매우 편리해집니다.● 설정 방법 (VMware Workstation 기준)VMware에서 해당 VM 선택Settings(설정)..

SSH 원격 접속과 VS Code 연동

SSH 원격 접속과 VS Code 연동우분투 가상머신을 개발 환경으로 사용할 때 SSH 연결은 가장 안정적이고 전문적인 접근 방식입니다. 단순히 터미널 접속용이라는 수준을 넘어, VS Code와 연동하면 VM 내부를 로컬처럼 개발할 수 있어 생산성이 비약적으로 향상됩니다. 특히 Python·Django·Node.js 개발에서 일반적으로 사용하는 구조이며, 클라우드 서버 연결 방식과 동일하기 때문에 학습 효과도 큽니다.● SSH 연결의 개념SSH(Secure Shell)는 네트워크를 통해 안전하게 리눅스 서버에 접속하는 방식입니다.호스트에서 다음 기능을 수행할 수 있습니다.우분투 VM 터미널 원격 접속파일 전송 및 작업root 또는 일반 사용자 계정으로 명령 실행VS Code 원격 개발 환경 연결즉, 가상..

포트 포워딩 설정

포트 포워딩 설정포트 포워딩은 NAT 환경에서 호스트가 가상머신 내부의 특정 서비스로 접근할 수 있도록 통로를 열어주는 설정입니다. 우분투 VM에서 Django, Flask, Node.js 같은 개발 서버를 실행하거나 MySQL, PostgreSQL 같은 데이터베이스에 연결할 때 반드시 필요합니다. VMware NAT 설정을 통해 포트를 연결하면, 호스트 혹은 동일 PC에서 브라우저나 도구로 VM에서 실행되는 서비스를 편리하게 테스트할 수 있습니다.● 포트 포워딩의 원리가상머신 내부 서비스는 기본적으로 외부에서 직접 접근할 수 없습니다.NAT 모드에서는 가상머신이 내부 IP(예: 192.168.XXX.XXX)를 받습니다.호스트가 특정 포트로 요청하면, VMware가 해당 요청을 VM 포트로 전달합니다.예..

네트워크 연결 방식

네트워크 연결 방식 이해우분투 가상머신을 개발 환경으로 사용할 때 가장 먼저 이해해야 할 요소가 네트워크 연결 방식입니다. 네트워크 설정은 호스트와 가상머신 간 통신 범위를 결정하며, 웹 서버 테스트나 DB 접속, 외부 인터넷 사용, 로컬 개발 환경 구축에 직접적인 영향을 줍니다. VMware는 크게 세 가지 네트워크 모드를 제공합니다. 각 방식의 특징과 활용 목적을 정리하면 다음과 같습니다.● NAT(Network Address Translation)가상머신이 호스트의 네트워크를 공유하되, 독립된 내부 IP를 사용하는 방식입니다.VM이 외부 인터넷에 접속할 수 있고, 호스트는 설정에 따라 VM 서비스에 접근할 수 있습니다.포트 포워딩을 통해 웹 서버, 데이터베이스 등 특정 포트만 개방하여 보안성과 유연..

[VMware] 호스트와 가상머신 사이에 자유로운 소통

우분투 개발 환경에서 호스트와 VMware 가상머신 간의 소통은 개발 효율을 좌우하는 핵심 요소입니다. 특히 웹 개발, 데이터 분석, 서버 실습 환경에서는 코드 편집과 실행, 테스트 및 파일 이동이 반복되기 때문에, 원활한 연결 구조가 곧 생산성입니다. 호스트에서 편하게 코드를 수정하고, VM에서 안정적인 리눅스 환경으로 실행하며, 필요할 때 브라우저 접근이나 파일 공유가 자연스럽게 가능해야 합니다. 이를 위해 네트워크 포워딩, 공유 폴더, 클립보드 공유, SSH 원격 접속, 파일 동기화 방식 등을 체계적으로 구성할 필요가 있습니다. 아래는 우분투 개발 환경에서 호스트와 VMware 가상머신 간 소통을 위해 소개할 항목 목록입니다. 이후 글에서 각 항목을 하나씩 상세히 설명하는 방식으로 진행하겠습니다.■..

와이어샤크(Wireshark)

와이어샤크(Wireshark)는 공식 홈페이지에서 무료로 다운로드하여 설치할 수 있으며, 몇 가지 기본 단계만 익히면 간단한 패킷 분석을 시작할 수 있습니다.와이어샤크 설치 방법 (Windows 기준)공식 홈페이지 접속 및 다운로드와이어샤크 공식 다운로드 페이지에 접속합니다.자신의 운영 체제(OS)에 맞는 버전(Windows Installer 64-bit)을 찾아 다운로드합니다.설치 프로그램 실행다운로드한 설치 파일을 실행하고, Next를 눌러 설치를 진행합니다.라이선스 동의(Noted) 화면이 나오면 확인하고 넘어갑니다.구성 요소 선택 및 Npcap 설치구성 요소 선택 화면은 대부분 기본값을 유지하면 됩니다.설치 중간에 Npcap이라는 추가 프로그램 설치 화면이 나타납니다. Npcap은 와이어샤크가 실..

네트워크를 통해 오가는 데이터 패킷 캡처, 와이어샤크(Wireshark)

와이어샤크(Wireshark)는 네트워크를 통해 오가는 데이터 패킷을 실시간으로 캡처하고 분석하는, 세상에서 가장 널리 사용되는 네트워크 프로토콜 분석기입니다.쉽게 말해, 네트워크 통신을 위한 '현미경' 또는 'CCTV' 라고 할 수 있습니다. 눈에 보이지 않는 네트워크 통신의 모든 과정을 상세하게 들여다볼 수 있게 해주는 강력한 오픈소스 도구입니다.와이어샤크가 하는 일와이어샤크는 컴퓨터의 네트워크 카드(랜카드)를 오가는 모든 데이터를 가로채서 사람이 읽을 수 있는 형태로 보여줍니다. 이를 통해 다음과 같은 정보를 확인할 수 있습니다.누가 누구와 통신하는가? (출발지 및 목적지 IP 주소, MAC 주소)어떤 종류의 대화를 나누는가? (HTTP, DNS, TCP, UDP 등 사용된 프로토콜)무슨 내용을 주..