반응형

전체 글 2439

CentOS 7 : Node.js, npm 설치 방법, 예제, 명령어

Node.js는 JavaScript 코드의 서버측 실행을 허용하는 교차 플랫폼 JavaScript 런타임 환경입니다. Node.js는 주로 백엔드에서 사용되지만 풀 스택 및 프런트 엔드 솔루션으로도 인기가 높습니다. npm(Node Package Manager의 줄임말)은 Node.js의 기본 패키지 관리자이자 오픈 소스 Node.js 패키지를 게시하는 세계 최대의 소프트웨어 저장소입니다. 이 튜토리얼에서는 Node.js 및 npm을 CentOS 7에 설치하는 단계를 안내합니다. Node.js와 npm을 설치하는 두 가지 방법을 보여 드리겠습니다. 이번 포스팅에서는 첫 번째 부분에서는 NodeSource 저장소의 yum 패키지 관리자를 사용하여 Node.js 및 npm을 설치합니다. 두 번째 파트에서는 ..

SW/리눅스 2020.10.14

Ubuntu : Sudo 권한 사용자 만드는 방법, 예제, 명령어

sudo 명령은 기본적으로 루트 사용자의 보안 권한으로 프로그램을 실행할 수 있도록 설계되었습니다. Ubuntu 시스템에서 sudo 액세스 권한을 가진 새 사용자를 생성하는 방법을 알아보겠습니다. 그런 다음 이 사용자 계정을 사용하여 Ubuntu 서버에 루트 사용자로 로그인할 필요 없이 관리 명령을 실행할 수 있습니다. Sudo 사용자 생성 아래 단계에 따라 새 사용자 계정을 만들고 sudo 액세스 권한을 부여합니다. 기존 사용자에 대해 sudo를 구성하려면 3단계로 건너뜁니다. 1. 서버에 로그인합니다. 루트 사용자로 시스템에 로그인합니다. ssh root@server_ip_address 2. 새 사용자 계정을 만듭니다. adduser 명령을 사용하여 새 사용자 계정을 만듭니다. 사용자 이름을 생성할 ..

SW/리눅스 2020.10.13

SW 테스팅 : 완벽한 테스팅은 가능한 것일까? : KMOOC

완벽한 테스팅의 불가능성 완벽한 테스팅이 불가능하다고 이야기하는 게 조금 이상하다고 느낄 수 있다. 테스팅에는 분명히 이론적인 한계가 있다. 오히려 이 한계가 무엇인지 정확히 이해할 때만 올바른 테스팅 기법을 적재적소에 사용할 수 있다. Undecidable Problem 본질적으로 테스팅이 묻는 질문, 즉 ‘내가 작성한 소프트웨어가 올바르게 작동하는가?’라는 질문 자체가 답하기 어려운 한계를 가지고 있다. 이 질문에 대해서 정말 완벽한 답을 하려면 상당히 깊은 이론적인 논의를 해야 된다. 컴퓨터 알고리즘 그리고 무엇이 계산 가능한지에 대한 이론을 깊게 공부하시면 어떤 종류의 계산 문제는 알고리즘이 답을 하는 것 자체가 불가능한 문제들이 있다. undecidable한 문제라고 하고 아니면 결정 불가능한 ..

SW/테스팅 2020.10.12

Ubuntu 18.04 : Tomcat 8.5 설치 방법, 예제, 명령어

Apache Tomcat은 Java Servlet, JavaServer Pages, Java Expression Language 및 Java WebSocket 기술의 오픈 소스 구현체입니다. 오늘날 세계에서 가장 널리 채택된 응용프로그램과 웹 서버 중 하나입니다. Tomcat은 사용이 간편하고 강력한 애드온 에코시스템을 갖추고 있습니다. 이번 포스팅에서는 Ubuntu 18.04에 Tomcat 8.5를 설치하는 방법을 보여줍니다. Ubuntu 16.04 및 Linux Mint 및 Firmary OS를 비롯한 모든 Ubuntu 기반 배포에도 동일한 지침이 적용됩니다. 필수 구성 요소 이 튜토리얼을 계속하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다. OpenJDK 설치 OpenJDK, Jav..

SW/리눅스 2020.10.11

Ubuntu 18.04 : Nginx에 Let's Encrypt로 SSL/HTTPS 적용 방법, 예제, 명령어

Let Encryption은 ISRG(Internet Security Research Group)에서 개발한 무료 개방형 인증 기관입니다. Let's Encrypt에서 발급한 인증서는 오늘날 거의 모든 브라우저에서 신뢰됩니다. 이 튜토리얼에서는 Ubuntu 18.04의 certbot 도구를 사용하여 Let's Encryption으로 Nginx를 보호하는 방법에 대한 단계별 지침을 제공합니다. 필수 구성 요소 이 튜토리얼을 계속하기 전에 다음 필수 구성 요소를 충족했는지 확인합니다. - 공용 서버 IP를 가리키는 도메인 이름이 있습니다. 이 튜토리얼에서는 example.com을 사용할 것입니다. - 다음 지침에 따라 Nginx를 설치했습니다. - 도메인에 대한 서버 블록이 있습니다. 이 지침에 따라 작성 ..

SW/리눅스 2020.10.10

Ubuntu 18.04 : Nginx 서버 블락 설정 방법, 예제, 명령어

Nginx 서버 블록을 사용하면 한 컴퓨터에서 두 개 이상의 웹 사이트를 실행할 수 있습니다. 서버 블록을 사용하여 사이트 문서 루트(웹 사이트 파일이 들어 있는 디렉토리)를 지정하고, 각 사이트에 대해 별도의 보안 정책을 만들고, 각 사이트에 대해 서로 다른 SSL 인증서를 사용하는 등의 작업을 수행할 수 있습니다. 이 문서에서는 Ubuntu 18.04에서 Apache Virtual Hosts와 유사한 Nginx 서버 블록을 설정하는 방법에 대한 단계별 지침을 제공합니다. 필수 구성 요소 자습서를 계속 진행하기 전에 다음 필수 구성 요소를 충족했는지 확인합니다. - 공용 서버 IP를 가리키는 도메인 이름이 있습니다. example.com을 사용할 것입니다. - 다음 지침에 따라 Nginx를 설치했습니다..

SW/리눅스 2020.10.09

Ubuntu 18.04 : Nginx 설치 방법, 예제, 명령어

Nginx는 인터넷에서 가장 큰 사이트 중 일부의 로드를 처리하는 무료 오픈 소스 고성능 HTTP 및 역방향 프록시 서버입니다. Nginx는 독립 실행형 웹 서버로 사용할 수 있으며 Apache 및 기타 웹 서버의 역방향 프록시로 사용할 수 있습니다. Apache에 비해 Nginx는 많은 수의 동시 연결을 처리할 수 있으며 연결당 메모리 설치 공간이 작습니다. 이번 포스팅에서는 Ubuntu 18.04에 Nginx를 설치하는 데 필요한 단계를 설명합니다. 필수 구성 요소 튜토리얼로 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인하고 포트 80 또는 443에서 Apache 또는 다른 웹 서버를 실행하지 않아야 합니다. Nginx 설치 Nginx 패키지는 기본 Ubuntu 리포지토리에서 사용할 ..

SW/리눅스 2020.10.08

Ubuntu 16.04 에서 18.04로 업그레이드 하는 방법, 예제, 명령어

최신 Ubuntu LTS 릴리즈인 Ubuntu 18.04(바이오닉 비버)는 2018년 4월 26일 출시되었으며, 2023년 4월까지 5년간 지원될 예정입니다. 이 튜토리얼에서는 Ubuntu 16.04 이상 설치를 Ubuntu 18.04(Bionic Beaver)로 업그레이드하는 방법에 대해 설명합니다. 필수 구성 요소 튜토리얼로 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다. 데이터 백업 무엇보다도 먼저 운영 체제의 주요 업그레이드를 시작하기 전에 데이터를 백업해야 합니다. 가상 시스템에서 Ubuntu를 실행하는 경우 전체 시스템 스냅샷을 생성하는 것이 가장 좋습니다. 업데이트가 중단될 경우 시스템을 쉽게 복원할 수 있습니다. 현재 설치된 패키지 업데이트 릴리스 업그레이드를 시작하기..

SW/리눅스 2020.10.07

Cent OS 7 : Apache 설치 방법, 예제, 명령어

Apache HTTP 서버는 세계에서 가장 인기 있는 웹 서버입니다. 다양한 모듈로 확장 가능한 강력한 기능을 제공하는 무료 오픈 소스 교차 플랫폼 HTTP 서버입니다. 다음 지침은 CentOS 7에 Apache 웹 서버를 설치하고 관리하는 방법을 설명합니다. 필수 구성 요소 튜토리얼로 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다. Apache 설치 Apache는 기본 CentOS 7에서 사용할 수 있습니다. 리포지토리와 설치 과정은 매우 간단합니다. CentOS 및 RHEL에서는 Apache 패키지 및 서비스를 httpd라고 합니다. 패키지를 설치하려면 다음 명령을 실행합니다. sudo yum install httpd 설치가 완료되면 Apache 서비스를 활성화하고 시작합니다. ..

SW/리눅스 2020.10.06

Debian 9 : Java 설치 방법, 예제, 명령어

이 포스팅에서는 Debian 9에 Java를 설치하는 과정을 살펴보겠습니다. Java는 다양한 종류의 애플리케이션과 시스템을 구축하는 데 사용되는 가장 인기 있는 프로그래밍 언어 중 하나입니다. Java에서 개발된 애플리케이션은 확장 가능하고 유연하며 유지 관리가 가능합니다. Java 패키지에는 JRE(Java Runtime Environment)와 JDK(Java Development Kit) 두 가지가 있습니다. Java 프로그램만 실행하려면 JRE가 필요하고, Java 개발자라면 JRE와 개발/디버깅 도구 및 라이브러리가 포함된 JDK가 필요합니다. 또한 Java에는 OpenJDK와 Oracle Java의 두 가지 구현이 있으며 Oracle Java에는 몇 가지 추가 상용 기능이 있다는 점 외에는 ..

SW/리눅스 2020.10.05

CentOS 7 : Nginx에 Let's Encrypt로 HTTPS, SSL 적용하기

Let Encryption은 ISRG(Internet Security Research Group)에서 개발한 무료 개방형 인증 기관입니다. Let's Encrypt에서 발급한 인증서는 오늘날 거의 모든 브라우저에서 신뢰됩니다. 이번 포스팅에서는 CentOS 7의 certbot 도구를 사용하여 Let's Encryption으로 Nginx를 보호하는 방법에 대한 단계별로 알아보겠습니다. 필수 구성 요소 이 튜토리얼을 계속하기 전에 다음 필수 구성 요소를 충족했는지 확인합니다. - 공용 서버 IP를 가리키는 도메인 이름이 있습니다. 이 튜토리얼에서는 example.com을 사용할 것입니다. - CentOS 7에 Nginx를 설치하는 방법에 따라 EPEL 리포지토리를 사용하고 Nginx를 설치했습니다. Cert..

SW/리눅스 2020.10.04

Debian 9 : Pip 설치하는 방법, 예제, 명령어

Pip은 Python Package Index(Python Package Index) 에 있는 것과 같이 Python에서 작성된 소프트웨어 패키지의 설치 및 관리를 단순화하는 패키지 관리 시스템입니다. 이 튜토리얼에서는 Debian 9에 Python Pip을 설치하는 방법을 안내하고 Pip을 사용하여 Python 패키지를 설치하고 관리하는 방법에 대해 설명합니다. 필수 구성 요소 이 튜토리얼을 계속하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다. Python 모듈을 전체적으로 설치하려면 적절한 관리자를 사용하여 패키지로 설치하는 것이 좋습니다. pip을 사용하여 사용 가능한 패키지가 없는 경우에만 python 모듈을 전체적으로 설치합니다. 일반적으로 가상 환경 내에서만 pip을 사용합니다..

SW/리눅스 2020.10.04

SW 테스팅 : 결함, 에러, 실패 : 개념, 기법, 관계, 사례 : KMOOC

소프트웨어의 오류 결함 흔히 소프트웨어 오류, 결함이라고 우리말로는 하나의 개념으로, 하나의 단어로 많이 부르는데요. 실제로 기술적인 맥락을 따지면 Fault와 Error, Failure라는 세 가지 개념을 구별합니다. 물론 테스팅의 목적은 세 가지 종류의 결함 자체를 모두 다 없애는 것입니다. 용어 자체의 정의를 보면 Fault는 소스코드 자체에 있는 비정상적인 요소이고 Error로 연결될 수 있는 요인입니다. 그다음 단계인 Error는 실제 실행 중에 소스코드에 존재하는 Fault가 실행이 돼서 Failure로 연결될 수 있는 요인입니다. 마지막으로 Failure는 소스코드에 존재하는 Fault가 실행돼서 에러상태를 낳았습니다. 이것이 프로그램 외부에서 관찰할 수 있는 상태까지 이어지는 것을 Fail..

SW/테스팅 2020.10.03

SW테스팅 : 소프트웨어 품질 : 개념, 측면, 항목 : KMOOC

소프트웨어 품질 어디서나 자주 들을 수 있는 이야기이지만 소프트웨어는 지금 정말 우리 주변에 사용되지 않는 곳이 없습니다. 예전에 하드웨어로 만들었던 혹은 사람이 담당했던 업무의 상당 부분을 소프트웨어가 자동화된 기술로 처리하고 있습니다. 그렇기 때문에 점차 단순히 기술적인 진보만을 뜻하는 것이 아닙니다. 경제적인 가치를 예전보다 훨씬 더 많은 부분 소프트웨어가 만들어내고 있습니다. 전통적인 시장의 많은 부분을 소프트웨어가 대체하고 있습니다. 소매는 아마존, 그다음에 우리나라에도 있는 많은 온라인 숍들이 예전의 소매 경로를 대체하고 있습니다. 그다음에 동영상 같은 경우도 고전적인 방송사가 아니라 유튜브나 여타 많은 비디오 채널들, 엔터테인먼트의 경우에는 게임 혹은 영화의 배급채널도 요즘에는 전부 다 소프..

SW/테스팅 2020.10.02

네트워크 : 유선 LAN : Ethernet : 구성, 종류, 개념

IEEE 표준 프로토콜 Xerox사의 미국 팔로알토 연구소 Ethernet이라고 부르는 프로토콜은 어느 책에서는 이더넷이라고 쓰기도 하고 이써넷이라고 하기도 합니다. 이더넷이라고 부르는 이 프로토콜의 역사는 굉장히 오래됐습니다. 복사기 만드는 회사 Xerox, 그 Xerox사의 Palo Alto라는 곳에 연구소가 있었습니다. Palo Alto의 Research Center라고 하는 연구소에 있는 Robert Melancton Metcalfe란 연구원이 만들었습니다. 그게 굉장히 오래됐습니다. 1976년에 만들었습니다. 근데 그걸 지금까지도 쓰고 있습니다. 근거리에서 데이터를 전송하는데 이만한 속도를 내는게 없습니다. 그 당시에 이게 10Mb는 정말 어마어마한 속도였습니다. 근데 이걸 만들고 나니, 이걸 ..

SW/네트워크 2020.10.01

네트워크 : LAN 매체와 유선 랜

전송매체의 종류 유도 매체, 비유도 매체란 말이 있습니다. 첫 번째로 매체의 종류에 대해서 살펴보아야 합니다. 이 매체라는 것은 데이터를 전송하는 송신자와 데이터를 받는 수신자가 존재하게 됩니다. 그럼 중간에 신호를 전달해주는 무엇인가를 통틀어서 매체라고 부릅니다. 이런 매체를 크게 두 가지로 나누게 됩니다. 하나는 선이 있는 매체와 선이 없는 매체로 유선, 무선이라고 부릅니다. 다른 말로 유도체, 비유도체라고도 부릅니다. 유도체라는 말은 Guided media로 부르고, 선이 있다는 뜻입니다. PC하고 프린터가 있습니다. PC하고 프린터가 사이에 연결되는 케이블이 있습니다. 케이블에 컴퓨터에서 케이블에서 신호를 보냅니다. 그러면 신호가 딴데로 가지 않고, 그 케이블을 따라서 쭉 가서 프린터로 가게 됩니..

SW/네트워크 2020.09.30

네트워크 : 다중접속 프로토콜 개념과 종류

다중 접속 Multiple Access라고 부릅니다. 이 매체에 여러 대의 컴퓨터들이 접속해서 데이터를 보내고자 할 때 문제가 발생할 수가 있습니다. 일상생활에서 공기라는 매체를 다 공유하고 있습니다. 여러 친구이랑 이야기를 하다보면 A라는 친구가 이야기하고 B라는 동시에 이야기를 하게 되면 서로 말이 섞입니다. 그럴 경우에 조정이 필요하게 됩니다. 하물며, 컴퓨터는 지능이 없습니다. 데이터를 보냈을 때 섞여버리면 구분해낼 수가 없습니다. 사람 간에도 두 사람이 동시에 얘기하면 대충 상대방이 무슨 얘기를 했는지 들을 수가 있는데, 구분해낼 수가 있습니다. 물론 이야기가 길어지면 내가 처리를 못하니까 무슨 말인지 모를 수도 있지만 여러 개의 컴퓨터들이 혹은 사람들이 하나의 매체를 서로 공유할 때 발생하는 ..

SW/네트워크 2020.09.29

네트워크 : 스위칭 방법과 종류 : 개념, 정리

스위칭의 필요성 스위칭이라는 것은 노드와 노드 사이에 링크가 있는데, 그거를 임시로 잠시 연결해주는 것을 스위칭이라고 부릅니다. 스위칭이라는 것이 없게 되면 네트워크는 노드와 링크로 구성이 되는데 이 노드하고 링크가 연결이 되어야 데이터를 보냅니다. 예를 들어서 두 개만 있다고 가정합니다. 그러면서 이제 선하나만 연결되면 됩니다. 그러면 노드가 3개가 되면 어떻게 될까요? 그러면 어차피 연결이 되어야 우리가 정보를 주고받을 수 있으니까 또 선이 연결됩니다. 4개가 되면, 5개가 되면, 6개가 되면, 10개가 되면, 무지막지한 선들이 필요하게 될 겁니다. 그러면 선은 공자가 아니기에, 비용이 들어갑니다. 그런데 가만히 생각을 해보면 내가 선이 10개가 있으면 그 10개를 다 쓰는게 아니고, 어차피 내가 데..

SW/네트워크 2020.09.28

Cent OS : sudo 사용자를 생성하는 방법, 명령어

sudo 명령은 기본적으로 루트 사용자의 보안 권한으로 프로그램을 실행할 수 있도록 설계되었습니다. 이 포스팅에서는 CentOS에 대한 sudo 권한을 가진 새 사용자를 생성하는 방법을 보여드리겠습니다. sudo 사용자를 사용하여 루트 사용자로 로그인할 필요 없이 CentOS 컴퓨터에서 관리 작업을 수행할 수 있습니다. Sudo 사용자를 만드는 중 기본적으로 CentOS에서는 그룹 휠의 사용자에게 sudo 액세스 권한이 부여됩니다. 기존 사용자에 대해 sudo를 구성하려면 4단계와 같이 사용자를 휠 그룹에 추가하기만 하면 됩니다. 다음 단계에 따라 Cent OS 7에 sudo 사용자를 만듭니다. 1. 서버에 로그인합니다. 먼저 Cent에 로그인합니다.OS 서버는 SSH를 통해 루트 사용자로 사용됩니다. ..

SW/리눅스 2020.09.27

MySQL : 루트 암호 재설정 방법, 명령어

MySQL 루트 비밀번호를 잊어버렸습니까? 걱정하지 마세요, 우리 모두에게 그런 일이 일어납니다. 이 포스팅에서는 명령줄에서 MySQL 루트 암호를 재설정하는 방법에 대해 설명합니다. 서버 버전을 식별 시스템에서 실행 중인 MySQL 또는 MariaDB 서버 버전에 따라 루트 암호를 복구하려면 다른 명령을 사용해야 합니다. 다음 명령을 실행하여 서버 버전을 찾을 수 있습니다. mysql --version 시스템에 MySQL이 설치되어 있는 경우 출력은 다음과 같습니다. mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper 아니면 마리아 디비를 위해 이렇게 출력하세요. mysql Ver 15.1 Distrib 10.1.33-Ma..

SW/MySQL 2020.09.26
반응형