disqus: brainbackdoor | false
kakaoChannel: false
floatFirstTOC: right
<aside> 📌 리눅스가 처음인 분들을 대상으로 작성한 포스팅입니다. cheatsheet을 함께 활용해주셔도 좋고, Bash 쉘스크립팅 가이드를 따라가보시는 것도 좋습니다. 리눅스가 프로그램의 명령을 수행하는 과정이나, 서버의 각 메트릭의 의미는 강의를 통해 확인할 수 있어요.
</aside>
# 현재 위치를 확인합니다.
$ pwd
# 명령어의 메뉴얼을 확인
$ man pwd
# 파일시스템별 가용공간을 확인합니다.
$ df -h
# 각 디렉토리별로 디스크 사용량을 확인합니다.
$ sudo du -shc /*
# <https://ko.wikipedia.org/wiki/Sudo>
# du -h : 하위디렉토리까지 표현
# du -sh : 해당 디렉토리만 표현
# du -ah : 파일에 대한 정보도 표현
# 현재 경로의 파일들(숨김파일 포함)의 정보를 확인합니다.
$ ls -al
## 서버의 공인 IP 확인해봅니다.
$ curl wgetip.com
# git 명령어의 위치를 확인해봅니다.
$ which git
# 스크립트를 활용하여 서버 상세 정보를 확인해봅니다.
## 물리 Storage 정보 조회
## 메모리 갯수 조회
## NIC 정보 조회
## 프로세스별 메모리 사용량 조회
## Routing table 조회
## cron 스케줄 정보 조회
## 방화벽 정보 조회
$ git clone <https://github.com/woowacourse/script-practice>
$ cd script-practice/script/
$ sudo chmod 755 ./*
$ sudo ./server_resource.sh all
# 소스코드를 관리할 디렉토리를 생성하고 이동합니다.
$ mkdir brainbackdoor && cd brainbackdoor
# GitHub 저장소를 clone해봅니다.
$ git clone <https://github.com/brainbackdoor/infra-workshop>
# 하위경로까지 복제합니다.
$ cp -R [원본디렉토리] [목적지디렉토리]
$ cp -R ./infra-workshop ../
$ ls -al ../infra-workshop
# 디렉토리의 이름을 변경합니다.
$ mv [원본디렉토리] [목적지디렉토리]
$ mv ../infra-workshop ./infra-bak
# 파일 및 디렉토리를 삭제합니다.
$ rm -rf ./infra-bak
# 파일 내용을 표준출력해봅니다.
$ cat ./infra-workshop/README.md
# 파일 이름으로 파일을 찾아봅니다.
$ sudo apt install mlocate
$ sudo updatedb
$ locate build.gradle*
# find ./* -name "*java"
# find . -type f -user root \\( -perm 4000 -o -perm -2000 \\) -exec ls -al {} \\;
# find . -type f -mtime -2 -exec ls -al {} \\;
# find . -type f -size 3M -exec ls -al {} \\;
A. 자바 설치
$ which java
$ sudo apt update
$ sudo apt install default-jre
$ sudo apt install default-jdk
B. 빌드
$ git clone [저장소]
$ cd [저장소]
$ ./gradlew clean build
# jar파일을 찾아본다.
$ find ./* -name "*jar"
# 프로세스를 정기 스케줄에 등록하고 관리할 수 있습니다.
# crontab -l : list crontab
# crontab -e : edit crontab
# vi /etc/crontab : 특정 사용자 권한으로 실행이 가능