Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
public:computer:linux [2021/08/21 02:29] – created alex | public:computer:linux [2021/08/23 23:19] (current) – alex | ||
---|---|---|---|
Line 17: | Line 17: | ||
- | * ls | + | * ls; list 파일 목록 |
< | < | ||
<col sm=" | <col sm=" | ||
<cli prompt=" | <cli prompt=" | ||
- | $ ls | + | $ ls # 현재 디렉토리 파일 목록 |
- | $ ls / | + | $ ls / |
- | $ ls -a | + | $ ls -a # 현재 디렉토리의 목록(숨김 파일 포함) |
- | $ ls -l | + | $ ls -l # 현재 디렉토리의 목록을 자세히 |
- | $ ls *.conf | + | $ ls *.conf |
- | $ ls -l / | + | $ ls -l / |
</ | </ | ||
</ | </ | ||
</ | </ | ||
- | * cd | + | * cd; change directory 디렉토리 이동 |
- | * pwd | + | < |
- | * rm | + | <col sm=" |
- | * cp | + | <cli prompt=" |
- | * touch | + | $ cd |
- | * mv | + | $ cd ~ubuntu |
- | * mkdir | + | $ cd .. |
- | * rmdir | + | </ |
- | * cat | + | </ |
- | * head | + | </ |
- | * tail | + | |
- | * more | + | * pwd; print working directory |
- | * less | + | * rm; remove |
- | * file | + | < |
- | * clear | + | <col sm=" |
- | * pwd | + | <cli prompt=" |
+ | $ rm abc.txt | ||
+ | $ rm -i abc.txt | ||
+ | $ rm -f abc.txt | ||
+ | $ rm -r abc | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | * cp; copy | ||
+ | * touch; 사이즈 0인 파일 생성, 파일이 존재할 경우 최종 수정 시간 변경 | ||
+ | * mv; move | ||
+ | * mkdir; make directory | ||
+ | * rmdir; remove directory | ||
+ | * cat; concatenate, | ||
+ | * head; 텍스트 파일의 앞 10행 출력 | ||
+ | * tail; 텍스트 파일의 뒤 10행 출력 | ||
+ | * more; 텍스 파일 페이지 단위로 화면 출력, space bar, b, q | ||
+ | * less; more의 확장, pageUp, pageDown | ||
+ | * file; 파일의 종류 표시 | ||
+ | * df; 디스크 사용량 | ||
+ | * wc; word count | ||
+ | * clear; 화면 지움 | ||
+ | * date, time, cal; 날짜, 시간, 달력 출력 | ||
* 파이프; | | * 파이프; | | ||
* 필터; grep, tail, wc, sort, awk, sed 등 | * 필터; grep, tail, wc, sort, awk, sed 등 | ||
Line 72: | Line 96: | ||
* uname -r; 커널 버전 확인 | * uname -r; 커널 버전 확인 | ||
* /etc/issue; 우분투 버전 | * /etc/issue; 우분투 버전 | ||
+ | * lsb_release -a | ||
* wget | * wget | ||
* curl | * curl | ||
- | * | + | |
Line 88: | Line 113: | ||
* 파일 이름 | * 파일 이름 | ||
* chmod; u(user), g(group), o(others) | * chmod; u(user), g(group), o(others) | ||
- | * chown | + | * chown; |
* chgrp | * chgrp | ||
* whoami | * whoami | ||
Line 109: | Line 134: | ||
* 파일 압축 | * 파일 압축 | ||
- | * xz | + | * xz; 확장명 xz로 압축/ |
- | * bzip2 | + | * bzip2; bz2로 압축/ |
- | * gzip | + | * gzip; gz 압축/ |
- | * zip / unzip | + | * zip / unzip; zip 압축/ |
* 파일 묶기 | * 파일 묶기 | ||
- | * tar | + | * tar; tar로 묶음/ |
+ | * c; 새로운 묶음 | ||
+ | * x; 묶인 파일 해제 | ||
+ | * t; 묶을 풀기 전에 묶인 경로 보여줌 | ||
+ | * C; 묶음을 풀 때 지정된 디렉토리에 압축 해제. | ||
+ | * f(필수); 묶음 파일 이름 지정 | ||
+ | * v; visual | ||
+ | * J; tar + xz | ||
+ | * z; tar + gzip | ||
+ | * j; tar + bzip2 | ||
* 파일 위치 검색 | * 파일 위치 검색 | ||
- | * find | + | * find 경로 옵션 조건 action; |
- | * which | + | < |
- | * whereis | + | <col sm=" |
- | * locate | + | <cli prompt=" |
+ | $ find /etc -name " | ||
+ | $ find /home -user ubuntu | ||
+ | $ find ~ -perm 644 | ||
+ | $ find /user/bin -size +10k -size -100k | ||
+ | $ find ~ -size 0k -exec ls -l { } \; | ||
+ | $ find /home -name " | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | * which; PATH에 설정된 디렉토리 검색. 절대 경로를 포함한 위치 검색 | ||
+ | * whereis; 실행 파일 및 소스, man 페이지 까지 검색 | ||
+ | * locate; updatedb 실행 필요 | ||
* cron; crond : / | * cron; crond : / | ||
* at | * at | ||
+ | * https:// | ||
==== 네트워크 ==== | ==== 네트워크 ==== | ||
Line 140: | Line 187: | ||
* / | * / | ||
* /etc/group; 그룹이름: | * /etc/group; 그룹이름: | ||
- | * adduser | + | * adduser; 새로운 사용자 추가 / |
- | * passwd | + | * passwd; 비밀번호 변경 |
- | * usermod | + | * usermod; 사용자 속성 변경 |
- | * userdel | + | * userdel; 사용자 삭제 |
- | * chage | + | * chage; 사용자의 암호를 주기적으로 변경하도록 설정(change age) |
- | * groups | + | * groups; 사용자 소속 그룹 출력 |
- | * groupadd | + | * groupadd; 새로운 그룹 생성 |
- | * groupmod | + | * groupmod; 그숩 속성 변경 |
- | * groupdel | + | * groupdel; 그룹 삭제 |
- | * gpasswd | + | * gpasswd; 그룹 암호 설정, 그룹 관리 |
Line 227: | Line 274: | ||
</ | </ | ||
+ | |||
+ | * raid(Redundant | ||
+ | * 단순볼륨 | ||
+ | * linear raid | ||
+ | * raid 0; stripping | ||
+ | * raid 1; mirroring, fault-tolerance | ||
+ | * raid 5; parity | ||
+ | * raid 6; | ||
+ | * raid 1+0, 1+6 | ||
+ | |||
+ | |||
+ | * quota; /etc/fstab -> reboot -> quota heck, quotaon/ | ||
+ | |||
+ | |||
+ | ==== bash shell script ==== | ||
+ | * alias | ||
+ | * history | ||
+ | * 연산기능 | ||
+ | * job control 기능 | ||
+ | * 자동 이름 완성 기능 | ||
+ | * 프롬프트 제어 기능 | ||
+ | * 명령 편집 기능 | ||
+ | * shebang(hashbang) | ||
+ | |||
+ | ^ 환경변수 ^^ | ||
+ | | HOME | 현재 사용자의 홈 디렉토리 | ||
+ | | PATH | 실행 파일을 찾는 디렉토리 경로 | ||
+ | | LANG | 기본 지원되는 언어 | ||
+ | | PWD | 사용자의 현재 작업 디렉토리 | ||
+ | | TERM | 로그인 터미널 타입 | ||
+ | | SHELL | 로그인해서 사용하는 쉘 | | ||
+ | | USER | 현재 사용자의 이름 | ||
+ | | DISPLAY | ||
+ | | COLUMNS | ||
+ | | LINES | 현재 터미널 라인 수 | | ||
+ | | PS1 | 1차 명령 프롬프트 변수 | ||
+ | | PS2 | 2차 명령 프롬프트 (대개는 '>' | ||
+ | | BASH | bash 쉘의 경로 | ||
+ | | BASH_VERSION | ||
+ | | HISTFILE | ||
+ | | HISTSIZE | ||
+ | | HOSTNAME | ||
+ | | USERNAME | ||
+ | | LOGNAME | ||
+ | | LS_COLORS | ||
+ | | MAIL | 메일을 보관하는 경로 | ||
+ | | OSTYPE | ||
+ | |||
+ | * export 환경변수=값, | ||
+ | * .sh | ||
+ | * echo | ||
+ | * chmod +x | ||
+ | * 변수 | ||
+ | * 변수=값; = 앞뒤로 공백 없음, 문자열 | ||
+ | * 숫자 계산; 역따옴표`, | ||
+ | * 파라미터; | ||
+ | * if ~ fi, else | ||
+ | <alert type=" | ||
+ | if [ 조건 ] | ||
+ | then | ||
+ | 참일 경우 실행 | ||
+ | else | ||
+ | 거짓인 경우 실행 | ||
+ | fi | ||
+ | </ | ||
+ | * case ~ esac, 비교할내용) 명령 끝에만;; *) 나머지 조건;; | ||
+ | * and; -a, &&, | ||
+ | * [ 식1 ] && [ 식2 ]; then | ||
+ | * [ \(식1\) -a \(식2\) ]; then | ||
+ | * or; -o, || | ||
+ | * for ~ in; < | ||
+ | <alert type=" | ||
+ | for 변수 in 값1 값2 값3 | ||
+ | do | ||
+ | 반복할 문자 | ||
+ | done | ||
+ | </ | ||
+ | * while 참이면, until 참이 될 때 까지, break, continue, exit, return | ||
+ | <alert type=" | ||
+ | while [ 참 ] | ||
+ | do | ||
+ | 명령 | ||
+ | done | ||
+ | </ | ||
+ | * 사용자 정의 함수 | ||
+ | <alert type=" | ||
+ | 함수이름 () { | ||
+ | $1, $2, | ||
+ | 실행 | ||
+ | } | ||
+ | |||
+ | 함수이름 | ||
+ | </ | ||
+ | * eval; 문자열을 명령문으로 인식하여 실행 | ||
+ | * printf; | ||
+ | * set과 $(명령) | ||
+ | |||
+ | ^ 문자열 비교 연산자 | ||
+ | ^ 문자열 비교 | ||
+ | | " | ||
+ | | " | ||
+ | | -n " | ||
+ | | -z " | ||
+ | |||
+ | ^ 산술 비교 연산자 | ||
+ | ^ 산술 비교 | ||
+ | | 수식1 -eq 수식2 | ||
+ | | 수식1 -ne 수식2 | ||
+ | | 수식1 -gt 수식2 | ||
+ | | 수식1 -ge 수식2 | ||
+ | | 수식1 -lt 수식2 | ||
+ | | 수식1 -le 수식2 | ||
+ | | !수직 | ||
+ | |||
+ | ^ 파일 조건 | ||
+ | ^ 파일 조건 | ||
+ | | -d 파일이름 | ||
+ | | -e 파일이름 | ||
+ | | -f 파일이름 | ||
+ | | -g 파일이름 | ||
+ | | -r 파일이름 | ||
+ | | -s 파일이름 | ||
+ | | -u 파일이름 | ||
+ | | -w 파일이름 | ||
+ | | -x 파일이름 | ||
+ | |||
+ | |||
+ | ==== OpenSSH ==== | ||
+ | * apt-get -y install openssh-server | ||
+ | * port 22/tcp | ||
+ | * systemctl restart/ | ||
+ | |||
+ | ==== Name Server ==== | ||
+ | * DNS(Domain Name System) Server | ||
+ | * 캐싱 | ||
+ | * apt-get -y install bind9 bind9utils | ||
+ | * / | ||
+ | * recursion yes; | ||
+ | * allow-query { any; }; | ||
+ | * systemctl restart/ | ||
+ | * port 53 | ||
+ | * dig @네임서버IP 조회할URL | ||
+ | * 마스터 네임서버 | ||
+ | * / | ||
+ | * named-checkconf | ||
+ | |||
+ | ==== Mail Server ==== | ||
+ | * SMTP(Simple Mail Transfer Protocol), POP(Post Office Protocol), IMAP(Internet Mail Access Protocol) | ||
+ | * Sendmail | ||
+ | * apt-get -y install sendmail | ||
+ | * apt-get -y install dovecot-pop3d | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * systemctl restart/ | ||
+ | * systemctl restart/ | ||
+ | * 라운드큐브 웹메일 | ||
+ | * apt-get -y install dovecot-imapd lamp-server^ | ||
+ | * apt-get -y install roundcube | ||
+ | * / | ||
+ | * / | ||
+ | * Postfix | ||
+ | * 네임서버 세팅 먼저 | ||
+ | |||
+ | ==== Database Server ==== | ||
+ | * MySQL, mariaDB | ||
+ | * apt-get -y install mariadb-server mariadb-client | ||
+ | * port 3306 | ||
+ | * 서버스크립트; | ||
+ | * 클라이언트 실행파일; | ||
+ | * phpMyAdmin; apt-get -y install phpmyadmin | ||
+ | |||
+ | ==== Web Server ==== | ||
+ | * LAMP | ||
+ | * apt-get -y install lamp-server^ | ||
+ | * Apache2 | ||
+ | * / | ||
+ | * nginx | ||
+ | * nextCloud | ||
+ | |||
+ | |||
+ | ==== Firewall ==== | ||
+ | * ufw [[https:// | ||
+ | * iptables [[https:// |