본문 바로가기
임베디드리눅스시스템

2강 VMWare

by udeserveit1 2024. 7. 30.

tools 

 

 

  • Virtualization and VMWare

 

 

실제 환경과 가상 환경 간의 유사성과 차이에 관한 것으로 보입니다. 이러한 개념들을 포괄하는 프레임워크를 설계하기 위해서는 다양한 컴퓨팅 자원을 조합하거나 분할하여 하나 이상의 환경을 투명하게 제공하는 방법들을 고려해야 합니다. 여기에는 하드웨어 및 소프트웨어 분할(또는 집계), 부분적 또는 완전한 기계 시뮬레이션인 에뮬레이션이 포함됩니다. 시간 공유 및 일반적으로 자원 공유(일반적으로 M개의 "실제" 자원과 N개의 "가상" 자원 간의 M

매핑) 역시 이 개념에 포함될 수 있습니다.

예를 들어, 가상 머신(VM)은 실제 자원(M)에서 가상 자원(N)으로의 매핑을 제공하며, 그리드 컴퓨팅은 여러 실제 자원(M)에서 단일 가상 자원(1)으로의 매핑을 제공할 수 있습니다. 또한 멀티태스킹은 단일 실제 자원(1)에서 여러 가상 자원(N)으로의 매핑을 가능하게 합니다.

 

 

  • 가상화 기술은 여러 가지 이유로 사용
 

가상화 기술은 여러 가지 이유로 사용될 수 있습니다. 주요한 응용 사례들은 다음과 같습니다:

  1. 서버 통합(Server Consolidation):
    • 가상화를 사용하여 여러 대의 서버를 단일 물리 서버에 통합함으로써 하드웨어 자원을 효율적으로 관리할 수 있습니다. 이는 전력 소비를 줄이고 데이터 센터 공간을 절약하는 데 도움이 됩니다.
  2. 응용 프로그램 통합(Application Consolidation):
    • 여러 응용 프로그램을 단일 서버 또는 가상 환경에 통합하여 관리 및 유지보수 비용을 절감할 수 있습니다. 이는 응용 프로그램 간의 자원 공유와 호환성을 증가시킬 수 있습니다.
  3. 샌드박싱(Sandboxing):
    • 가상 환경을 사용하여 응용 프로그램을 격리된 환경에서 실행함으로써 보안을 강화하고, 시스템 전체에 영향을 미치지 않고 테스트 및 개발을 할 수 있습니다.
  4. 다중 실행 환경(Multiple Execution Environments):
    • 하나의 물리적 시스템에서 여러 개의 가상 머신을 실행함으로써 서로 다른 운영 체제나 응용 프로그램 환경을 독립적으로 유지할 수 있습니다.
  5. 가상 하드웨어(Virtual Hardware):
    • 가상화는 가상 하드웨어를 제공하여 응용 프로그램이 호환되지 않는 하드웨어 플랫폼에서도 실행될 수 있도록 합니다.
  6. 디버깅(Debugging):
    • 가상화 환경에서는 실제 하드웨어 환경과 유사하게 실행되므로, 시스템의 문제를 분석하고 디버그하는 데 유용합니다.
  7. 소프트웨어 이전(이동성)(Software Migration (Mobility)):
    • 가상화를 사용하여 응용 프로그램을 서로 다른 하드웨어나 운영 체제로 이전할 수 있습니다. 이는 시스템 업그레이드나 데이터 센터 이전 시에 유용합니다.
  8. 앱라이언스 소프트웨어(Appliance Software):
    • 가상 앱라이언스 형태로 제공되는 소프트웨어를 사용하여, 특정 응용 프로그램이나 서비스를 쉽게 배포하고 관리할 수 있습니다.
  9. 테스트/품질 보증(Testing/Quality Assurance):
    • 가상 환경에서는 다양한 시나리오에서 소프트웨어의 성능을 테스트하고, 품질을 보증할 수 있습니다. 여러 가지 환경에서 실행될 수 있는 호환성 테스트도 가능합니다.

이러한 이유들로 인해 가상화 기술은 현대의 IT 환경에서 중요한 역할을 하고 있으며, 자원의 효율성과 유연성을 제공합니다.

 
 
 

 

 

 

 

 

 

 

둘을 나누는 주요 System Calls

 

 

 

 

 

 

 

 

VMware는 가상화 소프트웨어로, 실제 물리적 컴퓨터와 운영 체제 위에 가상의 컴퓨터(가상 머신 또는 VM)을 생성하고 운영할 수 있게 해줍니다. 이를 통해 하나의 물리적 컴퓨터에서 여러 개의 독립적인 운영 체제 환경을 구축할 수 있습니다.

주요 특징과 작동 방식은 다음과 같습니다:

  1. 가상 컴퓨터 (가상 머신, VM):
    • VMware를 사용하면 각각의 가상 머신이 실제 운영 체제와 물리적 하드웨어를 공유하지 않고 독립적인 환경에서 실행됩니다. 각 VM은 자체 BIOS 설정, 가상 CPU, 메모리, 하드 디스크 및 기타 입출력 장치를 가질 수 있습니다.
  2. 실제 장치와의 시뮬레이션:
    • 각 가상 머신은 VMware를 통해 실제 운영 체제와 물리적 하드웨어에 대한 접근 없이, 가상화된 형태로 실제 장치와 상호 작용할 수 있습니다. 이는 하이퍼바이저(Hypervisor)라는 소프트웨어 계층을 통해 구현됩니다.
  3. 운영 체제 호환성:
    • VMware는 여러 종류의 운영 체제를 지원하며, Windows, Linux, macOS 등 다양한 플랫폼에서 가상 머신을 생성하고 실행할 수 있습니다. 이는 애플리케이션의 호환성을 유지하면서도 플랫폼 간 이동성을 제공하는 데 유리합니다.
  4. 자원 관리 및 격리:
    • VMware 환경에서는 각 가상 머신의 자원 사용을 관리하고, 각 VM 간에 자원을 격리시켜 서로의 성능에 영향을 미치지 않도록 합니다. 이는 서버 컴퓨팅 환경에서 자원 효율성과 보안을 강화하는 데 중요한 역할을 합니다.
  5. 백업 및 복구:
    • 가상 머신은 하드웨어와 분리되어 있기 때문에, VMware 환경에서는 가상 머신의 스냅샷을 쉽게 생성하고 복원할 수 있습니다. 이는 시스템 복구와 장애 복구에 유리한 점을 제공합니다.

이와 같은 VMware의 기능은 IT 인프라의 관리와 유지보수를 단순화하며, 자원을 효율적으로 활용할 수 있도록 지원합니다.

VMWare Architecture
 
 

 

호스트 운영 체제 (Host Operating System):

  • 호스트 운영 체제는 물리적 컴퓨터나 서버에 직접 설치된 기본 운영 체제를 의미합니다.
  • 이 운영 체제는 물리적 장비 자원을 관리하고, VMware Workstation과 같은 가상화 소프트웨어를 실행하는 환경을 제공합니다.
  • 호스트 운영 체제는 Windows (NT 기반의 Windows XP, Windows 7, Windows 10 등) 또는 리눅스의 다양한 배포판 (RedHat, Ubuntu, Fedora 등) 등이 될 수 있습니다.

게스트 운영 체제 (Guest Operating System):

  • 게스트 운영 체제는 VMware Workstation 내에서 동작하는 가상 운영 체제를 의미합니다.
  • 각 게스트 운영 체제는 VMware가 제공하는 가상 하드웨어 자원을 이용하여 마치 별도의 물리적 컴퓨터에 설치된 것처럼 동작합니다.
  • 지원되는 게스트 운영 체제는 x86 아키텍처와 호환되는 여러 운영 체제들로, DOS부터 모든 윈도우 버전, 다양한 리눅스 배포판, BSD 등이 포함됩니다.

기능:

  • 호스트 운영 체제: 물리적 컴퓨터의 자원을 관리하고 VMware Workstation을 실행하여 게스트 운영 체제를 호스팅하고 관리합니다.
  • 게스트 운영 체제: VMware가 제공하는 가상 환경 내에서 동작하여 동시에 여러 운영 체제를 독립적으로 실행할 수 있게 합니다.

사용 사례:

  • 개발 및 테스트: VMware를 사용하여 여러 운영 체제를 가진 가상 머신을 생성하여 애플리케이션을 다양한 플랫폼에서 테스트할 수 있습니다.
  • 레거시 지원: 호스트 운영 체제와 호환되지 않을 수 있는 오래된 운영 체제나 애플리케이션을 실행할 수 있습니다.
  • 서버 통합: 가상 서버를 사용하여 리소스 이용률을 개선하고 하드웨어 비용을 절감할 수 있습니다.

VMware는 다양한 운영 체제와 애플리케이션의 호환성과 유연성을 제공하여 IT 환경에서의 자원 관리와 유지보수를 간편하게 해주는 도구입니다.

 

 

 

 

 

imager는 라즈베리파이

 

ubuntu 리눅스 가상머신을 까는  

 

가상머신을 만트는 tool이 vmware

VNC Viewer로 라즈베리 파이 화면을 볼 수 있다

 

PL2303 

 

 

 

 

여기까지 os깔기전 컴퓨터 구매 정도 

그 하드웨어 사양

 

 

다음

ubuntu깔기

 

호스트 Linux 설치

우분투 20.04는 데비안 기반의 리눅스 운영 체제입니다. 이 운영 체제는 개발자들에게 안드로이드 애플리케이션 개발을 위한 편리한 개발 환경을 제공합니다.

  • 데비안 기반의 Linux 운영 체제: 우분투는 데비안 리눅스를 기반으로 하며, 데비안은 안정성과 신뢰성이 높은 리눅스 배포판으로 잘 알려져 있습니다. 이는 개발자들이 안정적이고 예측 가능한 환경에서 작업할 수 있게 합니다.
  • 개발 환경 제공: 우분투 20.04는 다양한 개발 도구와 라이브러리를 포함하고 있어 안드로이드 애플리케이션 개발에 필요한 환경을 쉽게 구축할 수 있습니다. 예를 들어, Java 개발 도구, Android SDK (소프트웨어 개발 키트), Android Studio 등을 우분투에서 설치하고 설정할 수 있습니다.
  • 안드로이드 개발: 안드로이드 애플리케이션 개발은 Java 또는 Kotlin 언어를 사용하여 이루어지며, 이러한 언어와 관련된 개발 환경을 우분투에서 쉽게 설정할 수 있습니다. 또한, 안드로이드 SDK를 통해 디바이스 에뮬레이션 및 애플리케이션 테스트를 용이하게 할 수 있습니다.

이와 같이 우분투 20.04는 안드로이드 애플리케이션 개발자들에게 필수적인 도구와 환경을 제공하여 효율적이고 원활한 개발 프로세스를 지원합니다.

 

 

 

 

 

lts 버전 6gb

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

비번

건너뛰

system 안보내고 

 

 

 

컨트롤 알트 티 같이 하면 프롬프트 

 

관리자 이름 root로 전체 다 바꿔주기 #은 프롬프트에 그리고 그 밑에는 텍스트 창에