반응형

최근 발표된 이 보고서는 OpenLogic과 Open Source Initiative(OSI) 간의 협력으로 작성되었으며, 다양한 산업에서 오픈소스 소프트웨어의 사용 및 도입에 대한 통찰을 제공합니다.

https://www.openlogic.com/success/resources/state-of-open-source-report

 

2024 State of Open Source Report Success Page | OpenLogic by Perforce

Want More Insights and Analysis? In this on-demand webinar, experts from Perforce Software, the Open Source Initiative, and the Eclipse Foundation discuss key findings from the 2024 State of Open Source report, highlighting the most actionable findings for

www.openlogic.com

 

오픈소스 소프트웨어(OSS)를 채택하는 주요 이유

2024년 오픈소스 현황 보고서의 "오픈소스를 왜 사용하는가" 페이지에서는 오픈소스 소프트웨어(OSS)를 채택하는 주요 이유로 비용 절감이 가장 큰 요인으로 나타났습니다. 응답자의 37%가 라이선스 비용이 없고 전반적인 비용 절감이 주요 동기라고 답했으며, 특히 정부 및 공공 서비스 분야에서 이 비율이 51%로 가장 높았습니다. 이는 전 세계적인 경제 상황이 악화됨에 따라 비용 절감이 더욱 중요한 요인으로 작용한 결과로 보입니다.

그 외에도 응답자들은 개발 속도 향상, 안정적인 기술 및 커뮤니티의 장기 지원, 최신 기술에 대한 접근성, 벤더 종속성 감소, 오픈 표준 및 상호 운용성 등을 오픈소스를 사용하는 주요 이유로 꼽았습니다. 각 지역별로도 이러한 이유들의 중요도가 다르게 나타나고 있습니다. 예를 들어, 북미, 유럽, 영국에서는 비용 절감이 더 큰 요인으로 작용하는 반면, 다른 지역에서는 최신 기술 접근성과 같은 요소가 더 중요한 동기로 나타났습니다.

가장 많이 사용하는 배포판

 


2023년에 발생한 리눅스 생태계의 변화, 특히 Red Hat의 RHEL 코드 접근 제한과 CentOS 7의 지원 종료가 다가오면서 Ubuntu의 사용이 증가했습니다. 조사에 따르면 응답자의 46%가 Ubuntu를 사용하고 있으며, 이는 작년의 26%에서 크게 증가한 수치입니다. CentOS를 사용하는 응답자는 22%로, 이는 Debian보다 1% 낮아 세 번째로 많이 사용되는 배포판입니다. 특히 기술 업계에서는 28%가 여전히 CentOS를 사용하고 있으며, 이들은 많은 수의 CentOS 배포를 관리하는 기업들일 가능성이 큽니다. 2024년 6월 30일 이후로 CentOS 7에 대한 커뮤니티 지원이 종료되기 때문에, CentOS 사용자들은 빠른 전환이 필요할 것입니다.

CentOS의 공백을 메울 배포판으로는 Rocky Linux와 AlmaLinux가 소폭 성장했으며, Amazon Linux의 사용도 6% 증가했습니다. CentOS Stream의 사용률은 10% 이하로 떨어졌으며, AlmaLinux는 차량 및 물류 업계에서, Rocky Linux는 헬스케어 및 제약 산업에서 인기를 끌고 있습니다. 아직 "리눅스 전쟁"에서 승자를 결정하기에는 이르지만, 각 배포판의 향후 성장이 주목됩니다.

오픈소스 보안 도구

오픈소스 보안 도구에 대한 페이지에서는 이러한 도구들이 취약점 스캔, 방화벽 보안, SBOM(소프트웨어 빌딩 자료) 생성 등 다양한 기능을 수행하며, 소프트웨어 개발 단계뿐만 아니라 네트워킹과 운영에서도 점점 더 중요해지고 있음을 강조합니다.

이번 설문조사에서 처음으로 이러한 기술에 대해 질문했을 때, 27%의 응답자가 자사에서 어떤 오픈소스 보안 도구를 사용하는지 "모른다"고 답한 것이 주목할 만합니다. 이는 일부 조직이 오픈소스 대안에 대한 인식 부족으로 인해 상용 소프트웨어를 사용하고 있거나, 오픈소스 보안 도구 사용에 주저하고 있을 가능성을 시사합니다. 이러한 질문이 응답자들의 호기심을 자극하여 더 많은 오픈소스 보안 도구를 탐색하게 되기를 기대하고 있습니다.

오픈소스 성숙도 및 관리


"오픈소스 성숙도 및 관리" 페이지에서는 조직의 오픈소스 참여와 투자 성숙도를 평가하고 있습니다. 이 섹션에서는 오픈소스 소프트웨어의 소비자이자 사용자로서 조직이 어떤 방식으로 오픈소스에 참여하고 있는지를 분석합니다.  주요 내용은 다음과 같습니다:

1. **보안 스캔과 정책**: 가장 일반적인 활동으로, 조직들은 오픈소스 패키지에서 취약점을 식별하기 위해 보안 스캔을 수행하며, 보안 정책 또는 컴플라이언스를 유지하는데 중점을 두고 있습니다. 이는 모든 조직 규모에서 중요한 요소로 강조되었습니다.
    
2. **오픈소스 프로젝트 기여**: 많은 조직이 오픈소스 프로젝트에 기여하거나 오픈소스 조직을 후원하고 있지만, 특히 중소기업이나 스타트업에서 이 활동이 활발한 것으로 나타났습니다.
    
3. **오픈소스 법적 지원**: 대기업의 28%가 오픈소스 라이선스에 익숙한 법률팀을 보유하고 있지만, 이는 필수적인 성숙도 요소로는 볼 수 없습니다.
    
4. **내부 오픈소스 프로젝트(Innersource)와 OSPO**: 스타트업들이 중대형 기업들보다 더 많은 내부 오픈소스 프로젝트(Innersource)와 오픈소스 프로그램 사무소(OSPO)를 운영하고 있다는 점이 흥미롭게 나타났습니다.
    
결론적으로, 오픈소스 성숙도는 조직의 규모보다는 오픈소스 사용과 투자에 대한 전략과 우선순위에 따라 더 많이 결정된다는 점이 강조됩니다.

또한, 오픈소스 비영리 단체 후원 측면에서는 Linux Foundation, Apache Software Foundation, Open Source Initiative(OSI), Eclipse Foundation이 가장 많이 지원받는 단체들로 나타났습니다.

보고서 전체 내용

출처 : https://view.flipdocs.com/state-of-open-source

 

2024 State of Open Source Report

 

view.flipdocs.com

 

이 보고서의 전체 내용에 대한 요약은 다음과 같습니다.

1. **오픈소스 소프트웨어 사용 증가**: 보고서에 따르면 응답자의 95%가 지난 1년 동안 오픈소스 소프트웨어(OSS) 사용을 유지하거나 증가시켰으며, 특히 대기업과 아프리카, 아시아, 라틴 아메리카 지역에서 사용 증가가 두드러졌습니다.
    
2. **오픈소스 채택 이유**: 비용 절감(특히 라이선스 비용 없음)이 오픈소스 소프트웨어 채택의 주요 이유로 나타났습니다. 이는 특히 정부나 공공 서비스 분야에서 강하게 나타났으며, 경제적 압박이 증가하면서 비용 절감이 더 중요해졌습니다.
    
3. **투자 분야**: 데이터베이스와 데이터 기술이 가장 많이 투자된 분야로 나타났으며, 클라우드와 컨테이너 기술이 그 뒤를 이었습니다. 데이터가 디지털 경제에서 중요한 역할을 하기 때문에 이와 관련된 기술에 대한 투자가 증가하고 있습니다.
    
4. **지원 도전 과제**: 보안 정책 유지 및 컴플라이언스, 오픈소스 소프트웨어의 수명 종료 버전 관리, 고급 기술 지원 부족 등이 주요 도전 과제로 지적되었습니다.
    
5. **오픈소스 리눅스 배포판**: Ubuntu가 가장 많이 사용되는 배포판으로 나타났으며, CentOS는 여전히 많은 조직에서 사용되고 있지만, CentOS 7의 지원 종료로 인해 향후 전환이 필요할 것으로 보입니다.
    
6. **클라우드 네이티브 오픈소스 기술**: Docker와 Kubernetes의 사용이 크게 증가했으며, 특히 유럽과 북미에서 클라우드 네이티브 기술로의 전환이 활발히 이루어지고 있습니다.
    
7. **프로그래밍 언어 및 런타임**: Python이 JavaScript를 제치고 가장 많이 사용되는 프로그래밍 언어로 부상했습니다.
    
8. **오픈소스 성숙도 및 관리**: 많은 조직이 오픈소스 보안을 강화하고 있으며, 보안 스캔 및 컴플라이언스 정책을 도입하고 있습니다. 하지만, 오픈소스 프로젝트에 대한 기여나 전문 인력 보유는 상대적으로 부족한 것으로 나타났습니다.
    
오픈소스 소프트웨어는 전 세계적으로 계속해서 중요성이 증가하고 있으며, 다양한 산업과 지역에서 그 활용도가 확산되고 있습니다.

반응형
반응형

오늘 커뮤니티에 올라온 질문입니다.

안녕하세요

커널 설치를 하다가 궁금한게 있어 질문드립니다

새로 설치한 커널은 6.8.0-40-generic 인데요. 

리눅스 민트 업데이트 매니저의 커널설치 기능으로 하니까 별탈없이 잘 되긴 하는데..

설치한 커널의 동일버전 바이너리 파일들을 검색해보니 아래와 같은것들도 있습니다.

linux-buildinfo-6.8.0-40-generic 

linux-cloud-tools-6.8.0-40-generic

linux-image-uc-6.8.0-40-generic

linux-image-unsigned-6.8.0-40-generic

linux-modules-nvidia-470-6.8.0-40-generic

파일 이름에 cloud, unsigned, nvidia.. 하는 식으로 뭔가 다르다는 느낌을 주고, 위 파일 말고도 상당히 많이 있던데, 어떤 용도로 설치하는 커널인가요? 

 

리눅스 커널 패키지의 종류

리눅스 커널을 설치하다보면 이런 궁금증이 생길 수 있는데, 이 커널 패키지들은 다음과 같은 용도로 제공되고 있습니다.

- Generic 커널: 범용적이고 광범위한 하드웨어 호환성을 제공하는 기본 커널.

- Lowlatency 커널: 실시간 응답이 중요한 환경에 최적화.

- RT 커널: 실시간 처리 보장이 필요한 임베디드 및 산업 환경에 사용.

- HWE 커널: 최신 하드웨어 지원이 필요한 경우 사용하는 커널.

- Xen 커널: Xen 하이퍼바이저 가상화 환경에 최적화.

- Edge 커널: 최신 기술을 실험적으로 도입한 커널.

- Virtual 커널: 가상화 환경에 최적화된 경량 커널.

- AWS/Azure 커널: 특정 클라우드 플랫폼에서 최적화된 커널.

- Cloud 커널: 클라우드 환경에 최적화된 경량 커널

- Unsigned 커널: 서명되지 않은 커널로 Secure Boot 없이 사용.

- Nvidia 커널: Nvidia GPU와의 호환성을 강화한 커널.

 

그 외 게임을 하는데 더 최적화된 커널이라던지, 특정한 성능을 더 최적화 한 다음과 같은 커널들도 있습니다.

1. Liquorix 커널

용도: Liquorix는 특히 데스크탑 성능, 게임, 오디오/비디오 작업을 위한 최적화된 커널로, 고성능 사용자와 개발자를 위한 것입니다.
특징: 더 낮은 레이턴시(지연시간)와 향상된 스케줄링을 제공하며, 일반적인 작업에서 더 부드러운 성능을 보여줍니다. 주로 BFS(Brain Fuck Scheduler)와 같은 대체 스케줄러를 사용하여 CPU의 성능을 향상시키는 방향으로 최적화되어 있습니다.

https://liquorix.net/

2. Zen 커널

용도: Zen 커널은 성능을 최대화하고 사용자 경험을 개선하는 데 중점을 둔 커널입니다. 주로 데스크탑 환경에서의 반응성을 높이는 데 집중합니다.
특징: Zen 커널은 주로 더 높은 인터랙티브 성능을 위해 스케줄링 및 메모리 관리 기능을 개선했습니다. Liquorix 커널과 유사하게 데스크탑 환경에서 더 낮은 레이턴시와 빠른 응답성을 제공합니다.

https://github.com/zen-kernel/zen-kernel

3. TuxOnIce 커널

용도: TuxOnIce는 리눅스 커널에 하이버네이션 기능을 개선하는 패치를 추가한 커널입니다. 특히 랩톱과 같은 휴대용 장치에서 하이버네이션 기능을 더 빠르고 안정적으로 사용하기 위한 용도로 만들어졌습니다.
특징: 일반 커널의 하이버네이션 기능을 개선하여, 더 큰 메모리 이미지 처리와 더 빠른 복원 시간을 제공합니다. 이는 랩톱 사용자가 시스템을 하이버네이트 및 복원할 때 성능을 크게 개선시킵니다.

https://tuxonice.net/

4. Clear Linux 커널

용도: Intel에서 제공하는 Clear Linux OS는 성능 최적화에 중점을 두고 있으며, 이와 함께 Clear Linux 커널은 최신 Intel 하드웨어에서 최상의 성능을 제공하도록 특별히 최적화되어 있습니다.
특징: Intel의 CPU 아키텍처에 맞춘 최적화가 이루어져 있으며, 빠른 부팅 시간과 효율적인 에너지 관리 등을 제공합니다.

https://clearlinux.org/

반응형
반응형

Ubuntu 24.04에서는 서버나 데스크탑 배포 시, 수작업을 최소화하고, 반복적인 설치 작업을 자동화할 수 있는 Autoinstall 기능을 제공합니다. 이 글에서는 autoinstall.yml 파일을 활용하여 Ubuntu 24.04를 자동 설치하는 방법을 소개하겠습니다. 

Autoinstall ?

Ubuntu의 Autoinstall는 Ubuntu 서버나 클라우드 이미지를 설정할 때 사용하는 무인 설치(자동 설치) 방법입니다. 사용자가 정의한 설정 파일(autoinstall.yml)에 따라 설치 과정이 자동으로 이루어집니다. 이 방법을 사용하면 여러 대의 시스템을 손쉽게 동일한 설정으로 설치할 수 있습니다.

Autoinstall 파일 (autoinstall.yml) 준비

# autoinstall.yml example based on the preseed content

version: 1

# Locale and keyboard configuration
locale: ko_KR.UTF-8
keyboard:
  layout: kr
  variant: kr104

# Timezone configuration
timezone: Asia/Seoul

# Identity configuration
identity:
  hostname: ubuntu
  username: user
  password: # "openssl passwd -6 비밀번호" 명령으로 비밀번호 생성해서 입력

# Storage layout
storage:
  layout:
    name: direct  # Use direct layout, change this if needed

# Packages to be installed
packages:
  - htop
  - openssh-server
  - gparted

# Updates and upgrades
updates:
  policy: unattended-upgrades

# SSH configuration
ssh:
  install-server: true
  allow-pw: true

# Early command to unmount
early-commands:
  - umount -l -r -f /isodevice

# User-data or any additional scripts can be added here

웹서버로 파일 접근 가능하게 설정

이제 설정한 파일을 사용중인 홈 경로에 저장하고, 터미널을 이용해서 파일이 있는 경로로 이동 후 다음과 같이 8000 번 포트로 파일을 가져갈 수 있게 준비합니다.

cd ~/
python3 -m http.server 8000

sudo ufw allow 8000/tcp

이제 이 파일은 http://자신의 IP:8000/autoinstall.yml 주소로 가져갈 수 있습니다.

Ubuntu 설치

설치를 진행하고 아래 화면에서 다음과 같이 자동설치를 선택후 http://자신의 IP:8000/autoinstall.yml 를 입력합니다.

automatic.yml

이 방법을 사용하면 autoinstall.yml 파일을 로컬 네트워크에서 웹 서버로 제공하여 Ubuntu 24.04를 자동으로 설치할 수 있습니다. 이 방식은 여러 대의 서버를 효율적으로 관리하고 설치하는 데 매우 유용하며, Python의 간단한 웹 서버 기능을 활용하므로 설정이 매우 쉽습니다.

반응형
반응형

오늘 proxmox 구축을 하다가  헤놀로지 부트로더 개발자의 깃허브 저장소가 없어진것을 확인했습니다.

개발자가 저장소를 더 이상 제공하지 않기로 결정했다는데 자세한 내용은 아래 링크에 참고하실 수 있습니다.

https://www.2cpu.co.kr/nas/44055

이 글을 읽으면서 저도 오픈소스를 개발하고 배포하는 입장에서 여러가지 생각이 들어서 생각을 정리해봅니다.

 

 

Heartbleed 보안 취약점 사건에 대해서 들어보셨나요? 

이 사태는 2014년에 발생한 중요한 보안 취약점 사건입니다. OpenSSL 소프트웨어에서 발견된 이 취약점은 암호화된 통신 중에 사용자 데이터를 노출시킬 수 있는 위험이 있었습니다.  카드결제, SSL인증서 등에 사용되는 필수 라이브러리이기 때문에 이 사건은 많은 웹 사이트와 서버에 영향을 미쳤으며, 사용자 정보가 유출될 수 있는 위험을 야기했습니다.

이 개발팀의 내부를 들여다보면 얼마나 오픈소스 개발자들이 힘들게 희생하는지 알 수 있습니다. 

이 사고 이전까지 OpenSSL은 일년에 2,000달러(약 260만원)으로 유지되고 있다가, 문제가 생긴후 지금은 9,000달러(약 1100만원)의 기부금으로 운영되고 있습니다. OpenSSL 개발팀은 프로젝트 유지에 상시 개발자 6명 정도가 필요하지만, 프로젝트 지속할 비용을 충당하기 위해 다른 개발 계약을 계속하고 있다고 합니다.

아래 글에서는 오픈소스 개발자들이 자신의 소프트웨어가 수익성 있는 상업 제품에 사용되는 동안에도 아무런 보상없이 무료로 일하는 어려움을 다루고 있으니 한번 읽어보세요. 

https://techcrunch.com/2022/01/18/open-source-developers-who-work-for-free-are-discovering-they-have-power/

또 다른 예로 curl 명령을 자주 사용하실텐데, 이 명령어가 25년 동안 다니엘 스타인버그라는 개발자 한명에 의해 무료로 유지되고 있는것을 아시나요? 만약 cURL처럼 수백만 대의 기기에 라이브러리로 사용되는 프로젝트들이, 만약 개발자가 지원하는 것에 스트레스를 받아서 배포를 중단하기로 결정한다면 어떻게 될까요?

많은 사용자들과 기업들은 오픈소스를 자신의 제품이나 서비스에 많이 사용하지만, 오픈소스 소프트웨어가 무료로 제공되는 노력과 그 뒤에 있는 개발자들의 기여를 간과합니다. 

또한, 오픈소스 프로젝트는 종종 소수의 개발자들에 의해 유지되지만, 이들의 노력은 상업적인 가치와 비교할 때 충분히 인정받지 못합니다. 

오픈소스 공동체의 지속 가능성을 위해서는 오픈소스 사용자들이 이러한 개발자들에 대한 적절한 인정과 지원이 필요합니다. 

오픈소스 사용자는 공동체를 지속가능하게 하기 위해서 오픈소스 프로젝트에 대한 책임감 있는 태도를 가져야 합니다. 

책임감 있는 태도란 특정 프로젝트를 사용하고 있다면 프로젝트에 대한 적극적인 참여, 버그 리포트 및 피드백 제공, 커뮤니티 활동 참여, 후원 등을 포함합니다.

개발자들의 노력을 존중하고, 그들의 작업에 대한 가치를 인식함으로써, 오픈소스 생태계의 건강과 지속 가능성을 지원하는 것이 중요합니다. 

이러한 상호 존중과 협력은 오픈소스 커뮤니티의 성장과 발전에 필수적이라고 생각합니다.

결국 오픈소스 세계에서는 서로 돕고 존중하며 모두가 '함께' 즐길때 오픈소스 커뮤니티가 진정으로 번창할 수 있으니까요!

반응형
반응형

Subsai

유튜브 동영상에 자막을 입히는 일은 많은 노력을 필요로 하는 일입니다. 하지만 자막은 다양한 언어의 관객을 대상으로 콘텐츠를 보다 친근하게 만들 수 있기 때문에 가능하다면 추가하는 것이 좋죠. Subsai는 동영상 자막을 자동으로 생성하는 혁신적인 오픈 소스 프로젝트로 인공지능을 이용한 자막 생성 프로그램입니다.

https://github.com/abdeladim-s/subsai

기능 및 이점

  • 자동 자막 생성: Subsai는 오디오에서 텍스트로의 변환을 통해 자동으로 자막을 생성합니다.
  • 다양한 언어 지원: 여러 언어의 자막 생성이 가능하여 글로벌 시장을 대상으로 활용할 수 있습니다.
  • 사용자 친화적: 간편한 설치 및 사용법으로 사용자가 쉽게 접근할 수 있습니다.

사용 방법

자신의 PC에 직접 설치해서 사용하거나 Docker 를 이용하여 쉽게 구동할 수 있습니다.

1. 도커가 설치되어 있는지 확인합니다.
2. 리포지토리에 복제하고 CD로 복사합니다.
3. docker compose build
4. docker compose run -p 8501:8501 -v /path/to/your/media_files/folder:/media_files subsai-webui
5. 마운트된 media_files 폴더를 통해 미디어 파일에 액세스할 수 있습니다.

 

Subsai는 동영상 자막 생성의 새로운 방향을 제시하며, 콘텐츠 제작자들에게 유용한 도구로 자리 잡을 것으로 보입니다. 
오픈 소스로 제공되기 때문에 개발자 커뮤니티와 함께 성장할 가능성이 크며, 계속해서 주목해 볼 만한 프로젝트입니다.

오픈AI의 wisper 를 이용하는 방식으로 리눅스, 윈도우, 맥에서 동작하고 모든 소스코드를 제공하기 때문에  CLI 또는 파이썬 패키지를 이용하여 자신만의 어플리케이션을 개발할 때 사용할 수 도 있고, 테스트 한 결과 한국어 자막 자동생성도 지원됩니다.

 

반응형
반응형

오늘은 디스코드에서 Midjourney Bot을 사용하는 방법을 알아보겠습니다. 

Midjourney 란 무엇인가요?

Midjourney는 텍스트 기반의 프롬프트를 기반으로 복잡하고 상세한 이미지를 생성하는 AI 기반의 서비스입니다. 이 서비스는 기계 학습 모델을 사용하여 사용자가 입력한 텍스트의 시각적 표현을 만들어냅니다.

Midjourney와 다른 Text-to-Image 엔진의 차이점

Midjourney는 다른 텍스트-이미지 생성 엔진들과 비교하여 몇 가지 주요한 차이점을 가지고 있습니다:

  • Midjourney는 매우 상세한 이미지를 생성할 수 있는 능력이 탁월합니다. 복잡한 씬이나 특정 객체를 설명하는 텍스트를 입력하면, Midjourney는 그에 맞는 정교한 이미지를 만들어냅니다.
  • Midjourney는 텍스트의 뉘앙스를 잡아내는 데 탁월합니다. 같은 텍스트 프롬프트를 사용하더라도, 프롬프트 내의 작은 변경사항에 따라 다른 결과를 만들어냅니다.
  • Midjourney는 디스코드와 같은 플랫폼에 통합되어 있어, 사용자들이 쉽게 사용하고 공유할 수 있게 해줍니다.

디스코드에서 Midjourney Bot 사용하기: 단계별 가이드

다음은 디스코드에서 Midjourney Bot를 사용하는 방법에 대한 단계별 가이드입니다.

Step 1: 먼저, 디스코드에 로그인합니다. 디스코드 계정이 없다면 먼저 계정을 생성해야 합니다.

Step 2: Midjourney Bot의 공식 웹사이트를 방문하여 '디스코드에 추가하기' 버튼을 클릭합니다.

Step 3: 디스코드 서버를 선택하고, Midjourney Bot이 필요로 하는 권한을 확인한 후에 '권한 부여'를 클릭하여 Bot을 서버에 추가합니다.

Step 3: 디스코드 서버에서 Midjourney Bot을 활성화합니다. 이를 위해 서버에서 '/midjourney start'라고 입력하면 됩니다.

Step 4: Midjourney 서비스를 사용하려면 구독을 해야 합니다. '/midjourney subscribe'를 입력하면 구독 페이지로 연결됩니다. 해당 페이지에서 결제 정보를 입력하고 구독을 완료하세요.

Step 5: 이제 텍스트 프롬프트를 입력하면 됩니다. '/imagine prompt: [프롬프트]'를 입력하면 이미지를 생성하게 됩니다.

예를 들어, "/imagine prompt: 노을 지는 바다 위에 떠 있는 작은 섬" 이라고 입력하면, 이 설명에 기반한 이미지가 생성됩니다.

Step 6: 생성된 이미지를 저장하고 싶다면, 디스코드에서 이미지를 우클릭하고 '이미지 저장' 옵션을 선택하면 됩니다.

이렇게, Midjourney를 사용하여 디스코드에서 텍스트 프롬프트를 통해 고도로 복잡하고 상세한 이미지를 생성하고, 그 결과를 저장하는 방법에 대한 가이드를 마무리합니다. 이제, '/imagine prompt:' 명령어를 사용하여 자신만의 독특한 시각적 표현을 만들어 보세요!

프롬프트 예시:

"/imagine prompt: 화산이 폭발하는 모습"

"/imagine prompt: 사막에 있는 외딴 오아시스"

"/imagine prompt: 어린 왕자가 달에서 바라보는 지구"

"/imagine prompt: 야생에서 놀고 있는 아프리카 사자 가족"

"/imagine prompt: 도시 위로 떠오르는 풀 달 아래의 풍경"

참고 링크들:

  1. Midjourney 공식 웹사이트
  2. Midjourney를 이용한 예시 작업들
  3. Midjourney에 대한 자주 묻는 질문
  4. Midjourney 디스코드 서버 가이드
  5. 미드저니 사용법 총정리 : https://edmblackbox.tistory.com/901
  6. 미드저니 개인서버 만들기 : https://www.nanumpress.com/ai%EC%A0%95%EB%B3%B4/midjourney/%EB%AF%B8%EB%93%9C%EC%A0%80%EB%8B%88-%EA%B0%9C%EC%9D%B8-%EC%84%9C%EB%B2%84-%EB%A7%8C%EB%93%A4%EA%B8%B0/#:~:text=%EB%B2%84%ED%8A%BC%EC%9D%84,%EB%B4%87%20%EC%B4%88%EB%8C%80%EA%B0%80%20%EC%99%84%EB%A3%8C%EB%90%A9%EB%8B%88%EB%8B%A4.
  7. Prompt 생성기 : https://prompt.noonshot.com/

 

반응형
반응형

오늘은 엑셀을 넘어서, 구글 문서도구의 Google Sheets를 더욱 효율적으로 활용하는 방법을 소개하려고 합니다. 이를 위해 사용할 도구는 바로 https://gptforwork.com/에서 제공하는 GPT for Sheets입니다.

전통적으로 엑셀이나 구글 시트에서 복잡한 데이터를 처리하려면 복잡한 수식이나 코드를 작성해야 했습니다. 하지만 이제 GPT for Sheets를 이용하면, 직관적인 자연어 질문을 통해 데이터를 처리하고 분석할 수 있습니다. 예를 들어, '이 달의 매출 합계는 얼마인가요?'라는 질문을 시트에 입력하면 GPT for Sheets가 이를 처리하고 답변을 제공합니다. 이처럼 자연어 질문을 이용하면 복잡한 수식을 사용하지 않고도 원하는 데이터 분석을 쉽게 수행할 수 있습니다.

이제 GPT for Sheets를 통해 구글 문서도구를 어떻게 활용하는지 알아보겠습니다.

1단계: GPT for Sheets 설치

먼저, Google Sheets에 GPT for Sheets를 추가해야 합니다. 이를 위해, Google Sheets를 열고 상단 메뉴에서 "확장 프로그램" > "확장 프로그램 추가"로 이동합니다. 검색창에 "GPT for Sheets"를 입력하고 "설치"를 클릭하면 확장 프로그램이 설치됩니다.

2단계: OpenAI API 키 설정

다음으로, OpenAI 웹사이트 (https://openai.com)에서 개인 API 키를 받아야 합니다. "API Keys" 섹션에서 새 키를 생성할 수 있습니다. API 키를 받은 후, Google Sheets에서 "확장 프로그램" > "GPT for Sheets" > "설정"으로 이동하여 OpenAI API 키를 입력합니다. API 키를 입력한 후에는 "저장"을 클릭하여 설정을 완료합니다.

3단계: 확장 프로그램 활성화

이제 설치된 GPT for Sheets 확장 프로그램을 활성화해야 합니다. Google Sheets에서 열려진 문서에서 상단 메뉴의 "확장 프로그램" > "GPT for Sheets" > "시작하기"를 선택하면 활성화가 됩니다.

4단계: GPT for Sheets 사용

GPT for Sheets를 활성화하면, 셀에 데이터를 입력하거나 셀에 질문을 통해 대답을 받을 수 있게 됩니다.

데이터 분석: 예를 들어, A1부터 A10까지 셀에 판매 데이터가 있고, B1 셀에 "A1:A10의 평균은 무엇인가요?"라는 질문을 작성하면, GPT for Sheets가 자동으로 계산하여 답변을 제공합니다.

자연어 질문: 또한, "A1:A10의 가장 큰 값은 무엇인가요?" 또는 "A1:A10에서 가장 작은 값은 무엇인가요?"와 같은 질문에 대해서도 GPT for Sheets는 대답을 제공합니다.

5단계: 고급 기능 사용

GPT for Sheets는 데이터 분석과 자연어 처리뿐만 아니라, 각 셀의 데이터를 기반으로 한 예측도 제공합니다. 예를 들어, 과거의 판매 데이터를 바탕으로 미래의 판매 예측을 요청할 수 있습니다. 이는 "A1:A10의 판매 트렌드를 바탕으로 다음 주의 판매량을 예측해주세요."와 같은 질문을 작성함으로써 가능합니다.

추가로, 실제 사용 예제와 더 자세한 설명을 원하신다면 아래의 링크를 확인해주세요.

GPT for Sheets는 구글 문서도구에서 데이터를 분석하고, 이해하며, 예측하는데 강력한 도구로 업무 생산성을 향상시키기 위해 활용할 수 있는 좋은 방법입니다.

반응형
반응형

오늘은 OpenAI의 ChatGPT와 Mermaid를 사용하여 간단하고 명확한 시퀀스 다이어그램을 만드는 방법을 다룰 것입니다. 이것은 복잡한 시스템이나 프로세스를 설명하는 데 매우 유용하며, 서로 간의 통신을 효과적으로 시각화하는 데 도움이 됩니다.

다이어그램 예시

1단계: 시나리오 설계

첫 번째 단계는 시나리오를 설계하는 것입니다. 예를 들어, 온라인 쇼핑 웹사이트에서 상품을 구매하는 시나리오를 가정해 보겠습니다. 시나리오는 다음과 같습니다:

  1. 사용자가 상품을 선택합니다.
  2. 사용자가 장바구니에 상품을 추가합니다.
  3. 사용자가 체크아웃을 합니다.
  4. 결제 시스템이 사용자의 결제를 처리합니다.
  5. 결제가 완료되면, 시스템은 사용자에게 결제 완료 메시지를 보냅니다.

2단계: ChatGPT를 사용하여 시퀀스 다이어그램 작성

이제 시나리오가 준비되었으므로, ChatGPT에 다음과 같은 지시를 내립니다: "위에 설명된 시나리오를 기반으로 한 시퀀스 다이어그램을 만들어주세요."

ChatGPT의 응답:

sequenceDiagram
    participant User
    participant System
    participant Payment

    User->>System: Selects product
    System->>User: Confirms product selection
    User->>System: Adds product to cart
    System->>User: Confirms product added to cart
    User->>System: Checkout
    System->>Payment: Process payment
    Payment-->>System: Payment confirmation
    System->>User: Sends payment confirmation message

3단계: Mermaid에 시퀀스 다이어그램 입력

이제 Mermaid를 사용하여 다이어그램을 그릴 준비가 되었습니다. Mermaid Live Editor에 위에서 얻은 코드를 붙여넣습니다. 그러면 시퀀스 다이어그램이 실시간으로 그려집니다.

저는 구글 문서도구에 확장기능을 설치해서 아래와 같은 다이어그램을 작성했습니다.

4단계: 다이어그램 확인 및 저장

마지막으로, 다이어그램이 정확하게 표현되었는지 확인하고, 필요한 경우 수정합니다. 만족하면, 다이어그램을 이미지나 PDF 형식으로 내보낼 수 있습니다.

그러면 완성된 다이어그램은 시나리오의 각 단계를 명확하게 보여주며, 사용자, 시스템, 결제 처리 시스템 간의 상호작용을 시각화합니다.

이 방법은 복잡한 프로세스를 이해하고 문서화하는 데 매우 유용합니다. ChatGPT는 효과적인 시퀀스 다이어그램을 작성하는 데 필요한 논리와 순서를 제공하며, Mermaid는 이러한 정보를 빠르게 시각화합니다. 이 두 가지 도구를 함께 사용하면, 시스템의 행동을 빠르고 쉽게 표현할 수 있습니다.

결론

이렇게, ChatGPT와 Mermaid를 이용해 빠르고 효과적인 시퀀스 다이어그램을 만들 수 있습니다. 이는 소프트웨어 개발, 시스템 설계 및 문서화 작업에 많은 도움이 될 것입니다. 이 두 가지 도구의 강력한 조합을 활용하여 여러분의 작업을 쉽게 만들어보세요!

참고 : https://mermaid.js.org/intro/

반응형
반응형
E: Could not get lock /var/lib/dpkg/lock - 잠금 파일을 얻을 수 없습니다 - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

apt update 또는 apt install 을 할 때 나타나는 오류 메세지로 이전의 작업 내용으로 잠금 파일이 있는 경우 패키지의 인덱스를 갱신하지 못해서 생기는 오류입니다. 클라우드 가상머신에 접속했을때 인스턴스 이미지의 템플릿에서 종종 나타납니다.

해결 방법

1) 어떤 프로세스가 잠금파일을 생성하고 있는지 확인합니다.

lsof /var/lib/dpkg/lock

lsof 명령어는 프로세스가 사용중인 파일을 표시하는 명령어로 특정 네트워크 포트를 사용하는 프로세스도 확인할 수 있습니다.

lsof [ 옵션 [ : 포트번호 | 서비스 ]] [ 파일 | 프로세스 ]

lsof 로 특정 네트워크 포트를 사용하는 프로세스 확인

2) 잠금파일을 생성하고 있는 프로세스 제거

kill PID
#wait
kill -9 PID

 

3) 잠금파일 제거

sudo rm /var/lib/dpkg/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

 

4) dpkg 명령으로 문제 수정

sudo dpkg --configure -a
반응형
반응형

몇일 전 제로트러스트 가이드라인 1.0이 발표되어 한국인터넷진흥원 홈페이지에서 배포되고 있습니다.

 

KISA 한국인터넷진흥원

 

www.kisa.or.kr

이 가이드라인을 토대로 제로트러스트라는 용어에 대해서 이해를 높일 수 있도록 한번 정리해 보았습니다.

사이버 공격 침투방법 단계

① 최초 침투 단계 해커는 공격대상 기업의 사용자 계정 등을 다크웹 등에서 구입하거나 업무 관련으로 위장한 악성 메일를 보내 계정을 수집하는 등 다양한 방식을 활용하였으며, 일회용 비밀번호 등의 추가 계정 인증 요구도 우회하는 형태를 보임

② 내부망 침투 단계  내부 시스템에 침투한 이후, 다수 계정·단말을 관리하는 중앙서버 또는 기업 내 프로그램 관리 서 등에 접속하여 추가 정보 습득을 위한 악성코드를 배포하는 방식 등으로  접근하기도 함

③ 내부자료 유출 단계 내부망 침투 이후에는 제품 및 영업 관련 정보 또는 내부 직원 정보 등이 저장된 데이터 수집소에 접근한 뒤 관련 파일을 확보하여 외부 반출로 이어짐

사이버 보안 기술 이슈 및 동향

최근 발생한 수많은 해킹 및 랜섬웨어 공격 사례는 경계 기반 보안모델의 한계점을 드러내고 있으며, 최근 등장하는 보안 솔루션만으로는 완벽한 해결책을 제공하지 못함

기존의 경계기반 보안모델은  내부자에 대한 암묵적 신뢰와 함께 높은 권한을 부여함에 따라 고도화·지능화되는 보안 위협에 한계 노출
- 내부 접속 사용자·기기 또는 내부 트래픽에 대해 외부에서 요구하는 접속과 비교하여 높은 수준의 신뢰성을 부여
- 공격자는 악성코드, 크리덴셜 스터핑* 등을 통한 내부 시스템 침투 후 횡적이동**을 통한 DB 관리자 권한 획득 및 데이터 유출

전통적인 경계 기반 보안(Perimeter Security)으로는 업무 환경의 변화와 진화하는 사이버 위협에 효과적으로 대응하기 어려워 ‘제로트러스트(Zero Trust)’ 개념 등장

제로트러스트

제로트러스트(Zero Trust)란 보안위협이 언제 어디서든 발생 가능하다는 전제하에 요건*을 갖추지 않은 사용자·기기는 자원(데이터, 컴퓨팅 서비스 등) 접근을 제한하고, 신뢰도 평가, 지속적 인증, 세밀한 권한 부여 등 각종 접근제어 기관·기업의 ‘경계’ 기반 보안체계 구축보다 ‘내부 데이터 보호’에 집중하는 새로운 보안 패러다임을 의미.

기 존   경계 기반 보안모델은 네트워크 내부 접속 요구(사용자, 기기 등)는 어느 정도 신뢰할 수 있다는 가정에서 시작
- 반면, 제로트러스트 모델은 해커가 네트워크 내·외부 어디든 존재할 수 있으며, 모든 접속 요구는 신뢰할 수 없다는 가정에서 시작

경계 기반 보안모델은 신뢰하는 자원(내부 네트워크)과 신뢰하지 않은 자원(인터넷) 사이에 보안 경계의 벽을 세움
* 내부자 공모 또는 권한탈취 후 침투, 권한 상승 및 횡적이동을 통한 데이터 유출
- 반면, 제로트러스트 모델은 보호해야할 모든 데이터와 컴퓨팅 서비스를 각각의 자원(Resource)으로 분리·보호
* 모든 자원의 경계를 구분하여 분리·보호, 하나의 자원에 접속한 후에는 정해진 권한만큼만 활동이 가능하고, 인근 자원에 대한 추가 접속 요구 시 지속적 인증으로 침투 제한

제로트러스트는 ①SW Defined Perimeter, ②Micro-Segmentation, ③Enhanced Identity Governance에 기반을 두며, 각각의 자원에 대한 접속요구에 동적인증을 통한 선인증 후 접속, 이후에도 가시성 확보를 통한 지속적 모니터링으로 보안 수준을 높임

제로트러스트 기본철학

① 모든 종류의 접근에 대해 신뢰하지 않을 것(명시적인 신뢰 확인 후 리소스 접근 허용)
② 일관되고 중앙집중적인 정책 관리 및 접근제어 결정·실행 필요
③ 사용자, 기기에 대한 관리 및 강력한 인증
④ 자원 분류 및 관리를 통한 세밀한 접근제어(최소 권한 부여)
⑤ 논리 경계 생성 및 세션 단위 접근 허용, 통신 보호 기술 적용
⑥ 모든 상태에 대한 모니터링, 로그 기록 등을 통한 신뢰성 지속 검증·제어

기존 경계 기반 VS 제로트러스트 보안모델 비교

미국의 제로트러스트 도입 동향

美 민간의 제로트러스트 논의 및 도입, NIST의 문서 발표(’20.8월 SP 800-207) 후 미 연방 정부 행정명령(EO 14028)을 통해 연방정부 차원의 제로트러스트 본격 도입 중

출처 : 제로트러스트 가이드라인 1.0(KISA,2023)

 

반응형

+ Recent posts