전체 글 66

리눅스 서버 정리(웹 서버 및 FTP/NFS/Samba 서버 설치와 운영)

웹 서버 설치 및 운영APM리눅스를 가장 많이 활용하는 것 중 하나 => 웹 서버APM = Apache 웹 서버 + 프로그래밍 언어 PHP + 데이터베이스 MariaDB(이전 MySQL)리눅스 환경에서 사용될 경우 => LAPM(Linux, Apache, PHP, MariaDB)이라고도 부름DNF 명령으로 편리한 설치를 제공클라우드 서비스 개념도FTP/NFS/Samba 서버 설치 및 운영FTP(File Transfer Protocol)파일을 전송하기 위한 서비스웹에서 FTP의 고유 기능인 파일 전송을 편리하게 할 수 있게 되어서 예전보다 인기가 많이 떨어짐파일 전송 자체를 위해서는 성능 Goodvsftpd는 Rocky Linux에서 제공*vsftpd(Very Secure FTPD)는 Rocky Linux..

CS/운영체제 2024.12.11

리눅스 서버 정리(메일 서버 설치 및 운영 / 데이터베이스 서버 구축 및 운영)

메일 서버 설치 및 운영E-mail 송수신에서 사용되는 프로토콜SMTP(Simple Mail Transfer Protocol)클라이언트가 메일을 보내거나, 메일 서버끼리 메일을 주고 받을 때 사용POP3(Post Office Protocol)메일 서버에 도착되어 있는 메일을 클라이언트로 가져올 때 사용IMAP(Internet Mail Access Protocol)POP3와 동일센드 메일 서버의 자세한 작동 원리센드 메일 서버의 구현웹 메일의 설치 및 사용라운드 큐브는 PHP로 작성,Sendmail 및 IMAP 서버(Dovecot)를 기반으로 하는 웹 메일 프로그램반드시 아파치 웹 서버(httpd) 및 PHP가 설치되어 있어야 함. 데이터베이스 서버 구축 및 운영DB와 관련된 SQL 문DB 이름 조회SHO..

CS/운영체제 2024.12.11

리눅스 서버 정리(원격지 시스템 관리 및 네임 서버 설치 및 운영)

원격지 시스템 관리텔넷 서버오랫동안 전통적으로 사용되어 온 원격 접속 방법보안에 취약 텔넷 서버 구축- 원격지에서 서버 접속할 경우 필요 텔넷 서버 설치 과정 요약서버에 접속하기 위해서는 꼭 클라이언트 프로그램이 필요서버가 리눅스라고 클라도 리눅스일 필요 없음각각의 서버 프로그램은 자신에 맞는 별도의 클라이언트 프로그램 필요OpenSSH 서버- 텔넷과 용도 동일- 보안이 더 강화됨- 데이터를 전송할 때 암호화를 하는 특징이 있음 원격지에서 보안이 강화된 서버 접속할 경우 필요 OpenSSH 서버 설치 과정 요약XRDP 서버X 윈도우 환경으로 원격접속을 사용하고 싶을 때원격지로 그래픽 화면을 전송하는 원리속도 느림XRDP 서버 구축- 원격지에서 X 윈도우 모드로 접속할 경우 필요- 클라이언트는 Window..

CS/운영체제 2024.12.11

리눅스 서버 정리(셸 스크립트 프로그래밍)

쉘- 사용자가 입력한 명령 해석 후 커널에 전달- 커널의 처리 결과는 사용자에게 전달한 마디로 사용자와 커널의 중간 매개체라고 생각하면 된다. 기본 쉘은 bashbash 특징- Alias 기능(명령어 단축 기능)- History 기능(위아래 화살표키)- 연산 기능- Job Control 기능- 자동 이름 완성 기능(탭키)- 프롬프트 제어 기능- 명령 편집 기능 환경 변수"echo $환경변수이름" 으로 확인 가능"export 환경변수=값"으로 환경 변수의 값을 변경 쉘 스크립트 프로그래밍- 별도로 컴파일 하지 않고 텍스트 파일 형태로 바로 실행- nano나 gedit으로 작성- sh 로 실행- “chmod +x ” 명령으로 실행 가능 속성으로 변경한 후에, “./”명령으로 실행 모든 변수는 문자열로 취급..

CS/운영체제 2024.12.09

[우리FIS아카데미 4기] 클라우드 서비스 개발 과정 합격 후기

부트캠프와 인턴, 올라오는 채용 공고에 올해 10월부터 조금씩 지원을 해보기 시작했다.이력서와 지원서를 작성하면서 여태 내가 해온 개발 프로젝트에 대해 하나씩 되돌아보았다. 프로젝트 경험은 다른 사람들만큼이나 여러 번 해왔다고 생각한다. 여러 프로젝트를 해본 결과 느낀 것은 프론트엔드 개발 지식에서 내가 정확히 어떤 것을 모르고 어떤 것을 알고 있는 상태인지 확실하게 짚고 넘어가야 하는 시간이 필요하다고 생각을 했다. 추가로, 프론트엔드에 머물러있지 않고 백엔드와 클라우드까지 다방면으로 넓은 지식과 경험을 쌓고 싶었다. 혼자 학습하는 것에는 한계가 있으니 사람들과 함께 교육을 받으면서 공부한 것들을 녹여낸 심도있는 프로젝트를 해보고 싶었다. 결론적으로, 우리FIS에서 운영하는 우리FIS아카데미로 교육캠프..

[React] Context API 개념 및 사용 방법 정리

React Context API란?컴포넌트에 props를 직접 전달하지 않고 여러 컴포넌트 간에 전역으로 상태를 쉽게 공유하고 관리할 수 있게 해준다.일반적으로 React에서는 데이터를 위에서 아래로(부모 -> 자식) props를 통해 전달하는데, 실제로 개발을 하다보면 목표 컴포넌트까지 props를 전달해주기 위해 여러 컴포넌트를 통과해야 하는 props drilling 문제가 발생하게 된다. 이 문제를 해결하기 위해 전역으로 관리할 수 있게 React에서 만든 것이 바로 Context API이다.주로 UI 테마(라이트 모드, 다크 모드 등), 언어 설정, 인증된 사용자 등 전역으로 사용될 수 있는 상태를 공유할 때 사용된다. 그렇다면 전역 상태 관리를 할 때 사용하면 되는가?그건 아니다.전역으로 관리..

React 2024.11.26

[Prettier] Prettier 설정 정리

코드를 이쁘게 포맷팅해주는 prettier에 관련된 포스트이다.{ "trailingComma": "es5", "printWidth": 100, "semi": true, "singleQuote": true, "tabWidth": 2, "arrowParens": "always", "endOfLine": "auto"} 나는 위 옵션을 자주 사용한다. 위 옵션들을 포함한 그 외 옵션들에 관해서는 다음과 같다.{ "arrowParens": "always", // 화살표 함수의 매개변수가 하나일 때 괄호를 사용할지 여부 "bracketSpacing": true, // 객체 리터럴에서 중괄호 내부에 공백 삽입할지 여부 "endOfLine": "auto", // EoF 방식, OS별로 처리 방식이 ..

Prettier 2024.11.25

[Algorithm/Python] MST(최소 신장 트리) 알고리즘 + 크루스칼(Kruskal), 프림(Prim) 알고리즘 정리

신장 트리(Spanning Tree)란?하나의 그래프가 있을 때 모든 노드를 포함하면서 사이클이 존재하지 않는 부분 그래프를 의미 1. 모든 정점을 포함해야 한다.2. 연결 그래프이자 부분 그래프여야 한다.3. 사이클이 존재하지 않아야 한다. 최소 비용 신장 트리(Minimum Cost Spanning Tree)란?그래프에서 모든 노드를 연결할 때 간선의 가중치 합이 최소가 되는 경우의 신장 트리 최소 비용 신장 트리에는 대표적으로 크루스칼 알고리즘과 프림 알고리즘이 존재한다. 크루스칼 알고리즘(Kruskal Algorithm)그리디 알고리즘을 통해 최소 신장 트리를 구하는 알고리즘이다.간선 데이터를 비용에 따라 오름차순으로 정렬한다.간선을 하나씩 확인하며 현재의 간선이 사이클을 발생시키는지 확인한다.사..

[Algorithm/Python] Disjoint Set(서로소 집합)이란? Union-Find 알고리즘 정리

서로소 집합(Disjoint Set)이란?서로 중복되지 않는 부분(서로소) 집합. 서로 다른 원소들이 같은 집합에 속해 있는지 여부를 확인하는데 사용. 이 서로소 집합을 나타내기 위해 사용되는 알고리즘으로 Union-Find 알고리즘이 있다. Union-Find 알고리즘각 그룹을 트리의 형태로 표현. 각 트리는 항상 최상위 노드인 루트 노드를 가진다.이 루트 노드를 가지고 그룹을 판별한다.(root 노드는 자신을 부모 노드로 설정) union 연산을 확인하며, 서로 연결된 두 노드 A, B를 확인한다.A와 B의 루트 노드를 각각 찾는다.A의 루트 노드를 B의 부모 노드로 설정한다.모든 union 연산 처리할 때까지 이전 과정을 반복한다. Find어떤 노드가 주어졌을 때 이 노드가 속한 집합의 root 노..