728x90 반응형 🌐OS/Linux17 [Linux] 노트북으로 개인 Linux 서버 만들기 백엔드 개발자로 살다보면 서버가 필요한 경우가 많은데 그럴 때 마다 AWS를 사용하기에는 비용적인 부담이 크다.. 남는 노트북(PC)이 있다면 직접 서버를 만들어 사용하면 된다. 💡준비물 : 노트북, USB 혹시 이렇게 노트북 모니터가 깨져서 뽑아버렸다면 HDMI 케이블로 다른 모니터에 연결해주면 된다. ⏩️ 진행 단계 : Ubuntu 설치 - USB 부팅 디스크 만들기 - USB로 부팅 1. Ubuntu 설치*Ubuntu 말고 다른 배포판을 사용하고 싶다면 원하는 운영체제를 다운받으면 된다. 아래의 링크에서 Ubuntu Server 다운로드https://ubuntu.com/download/serverUbuntu Desktop도 있지만 서버로 사용할거면 굳이 GUI는 필요 없기 때문에 서버로 사용하는.. 2024. 10. 3. [Linux & Postgres] TestServer DB 자동으로 Patch하기 TestServer DB에 DevServer DB 변경사항을 자동으로 반영하여 데이터베이스 구조 동기화 개발을 하면 보통 개발 환경, 운영 환경, 테스트 환경, 데모 환경 등 각각의 이유로 다양한 환경에서 개발하고 테스트하게 된다.이 때 서로 다른 서버의 Database에 각각의 데이터는 유지하되 DDL과 같이 Database(table)의 구조를 변경하는 작업에 대해서는 다른 서버의 Database에 똑같이 변경해줘야 한다. 이러한 작업을 위해서는 Liquibase, Flyway 등 다양한 방법이 있지만 나 같은 경우 개발 환경, 보안, 인증, 리소스 등 다양한 조건을 생각해본 결과 서버에서 직접 Script를 작성하여 동작시키는 것이 가장 좋은 방법이라고 생각하여 Script로 개발하였다. 개발 환.. 2024. 5. 25. [Linux] 모니터링 파일을 유지시키며 내용만 제거 cp /dev/null ??text cpu 사용량이 가장 많았던 시간대 추출 sar -u | grep -v 'Average' | sort -nrk 9 | head -n 1 Disk io가 가장 높았던 시간대 추출 sar -b | grep -v 'Average' | sort -nrk 6 | head -n 1 모니터링 방법 yum install sysstat /usr/lib64/sa/sa1 1 1 sar 5분에 한번씩 쌓기 crontab -e */5 * * * * /usr/lib64/sa/sa1 1 1 모니터링 방법들 httpd서비스 cpu사용량 확인 database(maria) 메모리 사용량 확인 ~ 2023. 8. 27. [Linux] 백업 / 복구 passwd파일에서 root가 들어간 라인만 찾음 cat /etc/passwd |grep root grep root /etc/passwd (같은 결과) grep은 현대 디렉토리 대상, find는 전체에서 찾음 패스워드가 비어있는 사용자 도출 awk -F: '{if ($2=="!!") print $1}' /etc/shadow cat /etc/shadow | awk -F: '{if ($2=="!!") print $1}' pw는 2번째 자리에 있으며, 없으면 !!으로 채워져있다. 7일 동안 변경된 파일 카운트 find / -ctime -7 | wc 사용자가 없는 파일 찾기 find -nouser | wc 소유자가 없는 파일의 소유자 id와 일치하는 계정이 있으면 해당 계정의 파일이 된다. (/etc/passw.. 2023. 8. 27. [Linux] Shell 프로그램 **셸 스크립트(Shell script)**는 셸 프로그래밍 언어를 사용하여 작성된 스크립트입니다. 셸 스크립트는 셸에서 실행되는 일련의 명령어들을 포함하고 있으며, 여러 명령어를 순차적으로 실행하거나 제어 구문을 사용하여 조건부로 실행할 수 있습니다. #쉘 프로그램 (https://wikidocs.net/24935) 참고 쉘 스크립트(명령)를 이용해 명령어를 작성하여 커널에 전달. (*.bat, 프로그램명.sh ~) 쉘스크립트 첫 줄의 '#!'는 실행프로그램으로 사용한다는 것을 알려주는 명령 (#!/bin/bash) ftype = 'date'는 date란 문자열을 ftype변수로 넣는거고, ftype = date는 date의 실행 결과를 ftype변수에 넣는다. #은 주석, echo는 출력 (변수 출력.. 2023. 8. 27. [Linux] Cron 스케줄러 MySQL(workbench) 다운로드 https://dev.mysql.com/downloads/workbench/ (Windows (x86, 64-bit), MSI Installer 8.0.32 45.7M) https://dev.mysql.com/downloads/windows/installer/8.0.html (Windows (x86, 32-bit), MSI Installer 8.0.32 437.3M) 스케줄러 cron 주기적으로 반복되는 일을 자동적으로 실행하도록 설정 (/etc/crontab) crontab -l (작업 리스트 보기) crontab -e (작업 만들기) 스케줄 세팅: ***** (분.시.일.월.요일) - 일요일부터 '0' */2 * * * * (2분마다 실행) 10,30 * * *.. 2023. 8. 27. [Linux] FTP 접속 FTP접속 sftp b2145055@13.125.209.139 sftp 계정@ip주소 파일 보내기 (put) 보낼 파일의 경로와 파일명 sftp> put /home/inhatc/work0411/ftptest 파일 가져오기 (get) 자기 계정의 홈으로 가져옴 (/home/inhatc) sftp> get ftptest 파일 만들어서 전송하기 (리다이렉션) [명령어] >> [파일명] 으로 복붙하지 않고 바로 파일로 넣을 수 있다. vi 202145055_20230411 last > 202145055_20230411 history >> 202145055_20230411 df >> 202145055_20230411 전송 sftp> put /home/inhatc/work0411/202145055_20230411 .. 2023. 8. 27. [Linux] 데이터베이스 사용 Server Client sshd -(22)- putty httpd -(80,443)- browser mysql -(3306)- app(DBA) app 데이터베이스 접속 DBA => app -> mysql로 직접적으로 접근 User => putty -> sshd -> mysql로 우회하여 접근 DataBase mariadb설치 yum install mariadb-server 서비스 가동 service mariadb start sql문 mysql -u root [-p] show databases; use mysql; show tables; desc [table name] select * from [user] DB명 : inhatc_db *DB유저 : inhatcdb *password : inhatcdb!@.. 2023. 8. 27. [Linux] VirtualHost 💡 가상 호스트란? 기본적으로 웹서버에 존재하는 주 호스트 도메인을 등록하여 사용하고 있지만 추가적으로 한 서버에 여러 도메인을 등록하여 사용한다는 의미이다. 가상 호스트 서버를 이용하여 제한된 공간 안에서 여러 개의 홈페이지를 제공해주는 서비스가(웹, 메일 등) 호스팅 서버스이다. 1. Name-based Virtual Host Name-based 방식의 가상 호스트는 같은 IP 주소를 가지고 여러 개의 호스트명을 가진다.(가장 보편적인 방법) 2. IP-based Virtual Host IP Address 기반의 가상 호스트라고 하며, 각 웹 사이트마다 IP Address 또는 Port를 다르게 가지는 방식이다. VirtualHost Setting 1. /etc/httpd/conf.d 디렉토리에 vh.. 2023. 8. 27. 이전 1 2 다음 728x90 반응형