[기본 명령어]
- df : 디스크파티션 서버의 용량 확인할수있는 명령어 use가 사용하고있는 용량
- 옵션 : -BG => 기가바이트
- -m=> 메가바이트로 보여줌
- 안쓰면 킬로바이트
- -h 알잘딱으로 보여줌
- 옵션 : -BG => 기가바이트
- cd : 디렉토리 변경
- ls : 파일 보기
- 옵션 : -al 권한보임
- -a : 숨겨진 파일 보기
- 옵션 : -al 권한보임
- pwd : 현재 위치 알려줌 프린트워킹디렉토리
- 디렉토리
- / =>최상위
- /root : 최고관리자 디렉토리
- /boot : 리눅스 boot 디렉토리 (지우면 리눅스다시깔아야됨)
- /etc : 각종 데몬이 설치되는 디렉토리 윈도우로 치면 Program 디렉토리
- /var : 메일발송 로그기록 및 각종 프로세서 로그기록 저장되는곳
- /home : 리눅스 사용자가 생성되는 공간 및 WEB
- 디렉토리가 -> 모양으로 설정되어 있을 경우 심볼링크 (바로가기)
- /usr : Database 및 WEB, WAS같은 데몬이 설치됨 + 도커
- free : 메모리(Mem), 가상메모리(Swap)을 보여줌 => 중요!! 이걸 볼줄알아야함
- -m : 메가바이트
- -g : 기가바이트
- 안쓰면 킬로바이트
- swap이 많다는거는 버벅댄다는 뜻 가상메모리는 실제메모리보다 성능이 많이 떨어짐
- 권한
- dr-xrwxr--
- 맨앞 한글자 파일타입 : d 디렉토리 l 심볼링크
- 뒤 9글자 : 오너3 그룹3 아더3 / 읽기 쓰기 실행 권한
- dr-xrwxr--
사용자 만들고 사용자로 로그인하면 /home/사용자/
위치에서 시작한다
home의 다른 디렉토리로 들어갈 수 없음 권한 X
만약 쓰고싶다면 신의 힘을 빌려
루트는 다 가능 루트는 신이야
루트가 chmod를 이용해서 권한을 바꾸기
- chmod : change mode -> 권한을 세팅하는 명령어
- chmod 권한자/그룹/일반사용자의권한 적용할파일이나디렉토리
- ex) chmod 705 aaa.txt
- mkdir : 디렉토리 만들기
- rm
- -d : 디렉토리 지우기 (파일 없는 경우만 가능)
- -drf : 디렉토리에 있는 파일 포함해서 삭제
- 옵션없이 쓰면 파일 삭제
- 실무에서 마스터들은 -drf 옵션만 씀 파일이든 디렉토리든 그냥 다 씀 다작동하니까
- rm -drf * => 해당 디렉토리의 모든것들을 삭제
- rm -drf *.txt => .txt로 끝나는 파일 모두 삭제
- vi 편집기
- esc > :set nu => 라인번호
- esc > :숫자 => 해당 라인으로 이동
- esc > :q => 나가기 (수정하지 않았을 경우만 가능)
- esc > :q! => 저장하지 않고 강제종료
- esc > :wq => 저장후 종료
- esc > :w => 저장
- esc + 해당 라인에서 dd => 라인 전체 삭제
- esc + :복사할 라인 번호 co 붙여넣기할 라인번호
- esc + 10,22 co 25 => 10번 라인 ~ 22번 라인을 25번 라인에 복사
- i => insert 입력
- cp : copy => cp 원본파일명 사본파일명
- cp -r 원본디렉토리 사본디렉토리
- mv
- 디렉토리를 다른 경로로 이동
- 파일 및 디렉토리 이름 변경
- 파일을 다른 디렉토리에 붙여넣기
- 예시 )
- mv 123.txt 222.txt : 123.txt 파일명을 222.txt로 변경
- mv aaa bbb => aaa 디렉토리를 bbb라는 이름으로 변경
- mv aaa ccc/ => ccc라는 디렉토리가 생성이 되었을 경우 aaa라는 디렉토리를 ccc에 포함
- mv aaa /ccc => 최상위에서 ccc라는 디렉토리가 만들어지며 이동
- ps : 프로세스 리스트 화면 (윈도우의 작업관리자 느낌)
- -aux : 모든 프로세스 확인
- -ef : 프로세스에 접속한 사용자 리스트 확인
- kill -9 pid : 강제종료
서버받으면 가장 먼저 해야하는거
SELinux => 기본 방화벽 데몬
해제해주기
cd /
vi /etc/selinux/config
7번라인
SELINUX=disabled
로 바꾸기
setenforce 0 => 리눅스 시작시에 작동 중지
init 6
으로 서버 재부팅 후 (init 0은 서버 종료 / 1은 안전모드 서버있을때만 사용 / 3은 x-window 종료 후 콘솔모드로 출력 / 5 x-window 부팅)
sestatus => 기본 프로세서 방화벽 작동 유무 확인 가능
로 selinux가 disabled로 변했는지 확인
yum update
안되면
cd /etc/yum.repos.d/
ls -al
이것저것 있음
이거 다 지워
rm -drf *
새로만들기
vi Centos.repo
[base]
name=CentOS-$releasever - Base
baseurl=http://mirror.kakao.com/centos/$releasever/os/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
# kakao
baseurl=http://mirror.kakao.com/centos/$releasever/updates/$basearch
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://centos.mirror.cdnetworks.com/$releasever/extras/$basearch
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://centos.mirror.cdnetworks.com/$releasever/centosplus/$basearch
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
baseurl=http://centos.mirror.cdnetworks.com/$releasever/contrib/$basearch
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
카카오가 쓰는 센트오에스 신버전
붙여넣기 쉬프트인서트
맨위 잘려있나 잘 확인
저장하고나오기
yum update
하기
[ftp깔기]
yum install vsftpd
y
y
vi /etc/vsftpd/vsftpd.conf
로 환경 설정
systemctl start vsftpd.service
가동
netstat -ln
ftp포트 21번 잘 열렷나 확인
systemctl status vsftpd.service
이거로도 확인 가능
cd /etc/vsftpd
vi vsftpd.conf
12번 NO
87줄 배너 바꾸기
101,102,104 주석풀기
104번의 /etc/vsftpd/chroot_list 어디 잘 적어두기
저장하고 나가기
vi /etc/vsftpd/chroot_list
파일 만들고
루트사용자 제외한 ftp를 사용할 사용자를 적기 사용자엔터사용자엔터
systemctl restart vsftpd.service
재시작
netstat -ln
보기
systemctl stop firesalld.service
방화벽 끄기
systemctl status firesalld.service
잘꺼져있는지 확인
리눅스 압축 => 압축 리눅스에서 풀어야함
압축하기
tar -cf 새로운압축파일명.tar 압축할파일이나디렉토리명
압축풀기
tar -xf 압축파일.tar
압축확장자많은데 tar예시 실무에서 tar많이 사용
.tar.gz .gz .tar
리눅스의 압축은 윈도우와 비교도안되게 빠르다
프로젝트같은 큰 파일은 리눅스로 압축
vsftpd => centos
sftpd, tftpd => suse
sftpd,vsftpd => ubuntu
[자바 깔기]
yum search java
에러남
yum search jdk
에러남
왜냐면!
기존에 깔린 옛날 centos때문임
방금 세팅한 Centos.repo 빼고 다지워야함
루트사용자로
cd /etc/yum.repos.d/
파일을 보면 2024년도 옛날거 다지우기
rm -drf CentOS-*
다시
yum search jdk17
17해야하는데 없음
11은 있는데
java -version
쓰면 1.8 나옴
리눅스깔때 기본으로 깔려있음
17번이 필요함
일단 리눅스 다운의 개념
구글에서 아무 이미지 링크복사
wget 쉬프트인서트
이미지 리눅스로 다운
모든것을 다운할수있따
사이트로 가야됨
구글에 jdk17검색해서 오라클사이트 들어가기
여러 파일들 중
Linux x64 RPM Package
다운해야하는데
옆에 주소 를 복사함
그래서
cd/home/
mkdir down
cd down
wget 쉬프트 인서트
해서 다운하기
다운 다 하면
rpm -ivh jdk탭자동완성
해서 설치
-ivh란? -i(install)v(설치율)h(###으로보여줌)
java -version
해서 17로 바뀌었는지 확인까지!
리눅스 데몬을 설치시 소스형태의 설치방식 또는 RPM 형태의 설치
yum으로 까는거는 무조건 RPM형태 => 무조건 etc경로에 깔림
tar, tar.gz, gz 으로 까는거는 소스형태 => 내맘대로 경로를 선택 가능, 옵션도 내맘대로 선택 가능
RPM은 초보자에게 쉽고 소스형태는 고수들이 사용함
방금 자바는 rpm으로 깔았기 떄문에 etc에 설치됨
만약 mysql을 깐다면
yum search mysql
버전이 안나옴 => 내가 원하는 버전이 안깔릴수도 있음 옛날버전
홈페이지가서 긁어와서 wget으로 해야함
cd /usr/lib/jvm
들어가보면 자바 어떤거 깔려있는지 다 보임
yum search jdk => 8, 11 까지만 적용 => 17 ~ 오라클 사이트 다운로드 페이지에서 rpm 복사해서 리눅스에서 wget으로 다운
vi /etc/vsftpd/vsftpd.conf => ftp 환경설정 필수
[Line]
12 : 익명으로 로그인 허용 => Yes해두면 디도스 시원하게 뚜드려맞는다 NO로 설정하기
60 : FTP 아이디로 접속 유지 시간 600(10분) => 주석 풀기 (#)
63 : 최대 파일 업로드 및 다운로드할 수 있는 유지시간 120(2분) 용량크면 올리다 짤려버림
회사에서는 짧게 설정함 업로드오래걸리면 다운로드도 오래걸리니까 개인정보도 빼갈수있음
jsp html 100개 올려도 1분이 안걸림
내가 백업하는 경우나 다운하는 경우는 잠깐 늘리는 경우도 있음
87 : FTP 배너 => 파일질라말고 RFTP같은 프로그램에는 뜸
FTP 접속시 해당 FTP 서버 정보를 출력
91, 93 : 실무환경에서 사용 (DDOS 걸렸을때 메일로 알려줌)
101,102,104 : /home 디렉토리에 생성된 사용자가 로그인할 수 있도록 설정
104라인에있는 경로에 vi편집기로 파일을 생성하여 사용자를 추가해야만 ftp로그인이 가능
mail 이메일주소
subject: 제목
내용작성
컨트롤씨컨트롤디
사용자 삭제
userdel hong
cd /home
ls -al
하면 사용자만 지워지고 사용자 디렉토리는 사라지지않음
1001로 설정돼있음 외부에서도 보임 아무나 막들어옴
공유폴더개념으로 변해서 해커가 막 사용가능
rm -drf hong
해서 고스트된것도 지워줘야함
userdel -r cms
ls -al
하면 방금과 다르게 사용자 디렉토리도 함께 지워짐
그래서 사용자 삭제할때는
-r로 삭제해야함
==
제어판 > 네트워크 및 공유센터 > 왼쪽 어댑터 설정 변경 >
버츄얼박스로 인해 가상의 이더넷이 잡혀잇음
우클릭 속성 보면
인터넷 프로토콜 버전 4 (TCP/ipv4) 더블클릭
설정했던것들이 보임
아래쪽 DNS 서버 주소 입력
168 126 63 1
168 126 63 2
kt내부서버아이피
==
방화벽 끄기
systemctl stop firewalld
==
ntsysv (윈도우의 msconfig와 같은 역할)
블루투스서비스 해제스페이스바 (별없애기)
firewalld.service 해제
vsftpd.service는 체크 => 서버껐다키면 자동으로 ftp서버 켜짐
탭 엔터 => 확인
=====
마지막으로
서버 안전하게 종료
막끄면 파일 고장남
init 0