리눅스 서버- 2

박형준·2024년 3월 13일

*리눅스 설치 [ CentOS 8 ] - 1

  • VMware 셋팅 / RAM-2G, 하드-60G , 나머지는 기본값으로 해서 설치 시작.

  • *install(맨 위) 선택 / 언어 한국어 / 설치화면에서 시간 및 날짜 [서울] / 소프트웨어 선택 /

  • KDUMP [활성화 체크 해제] / 네트워크 및 호스트명[ 켜기, 와 호스트 이름변경. centos.linux 입력 / 적용 ] = ens160

k-dump: 알려주는 것(체크 해제하는 것이 좋다.)

네트워크 이름: ens160

  • 설치 목적지 [완료] ==> 설치 시작

  • *root 암호: 1234 완료 두번클릭 / User Creation 클릭 : centos/1234 완료2번

    • ===> 설치가 끝나면 [다시시작] 클릭
  • *부팅 후/ *라이센스에 동의하지 않았습니다 클릭 / 약관에 동의합니다. 체크 / 설정완료

  • *부팅 후 목록에 없습니까 클릭 / root / 1234 엔터

    • 다음/다음/다음/건너 뛰기/ 창닫기
      • -# : root 관리자,
      • -$ : 일반 사용자

#은 관리자란 뜻


IP 설정

  • 네트워크 또는 전원 아이콘 클릭 / 설정(Setting) / 왼쪽 전원 안함 /
    • 네트워크 / IPv4 클릭 후 / 수동입력 / 192.168.0.100 255.255.255.0 192.168.0.2 8.8.8.8
    • 네트워크 껏다 켜기

설정하는 곳

화면 설정

IP 설정

윈도우는 IP 확인 명령어 : ipconfig, 리눅스는 ifconfig
,리눅스는 설정했을 때 반드시 재시작해야 적용된다.

디스플레이 설정

리눅스 업데이트 명령어

  • -# gsettings set org.gnome.software download-updates false ⇒ 업데이트 중지

  • -# systemctl disable dnf-makecache.service ⇒ 재부팅해도 업데이트 중지유지.

  • -# systemctl disable dnf-makecache.timer

  • *SELinux ⇒ 중지

    • -# gedit /etc/sysconfig/selinux
      • SELINUX=enforcing ⇒ SELINUX=disabled 저장 /

*스냅샷 찍고 종료 ⇒ init 0 (숫자 0~6 ) ⇒ 종료됨. ( 0: 종료, 1: 싱글, 2,3,4, 5: X-windows, 6: 재부팅)


*하나더 설치 진행 하는데 위하고 똑같이 셋팅 해서 진행…. 파티션만 수동으로 해보기 .

  • -설치 목적지 / Custom 선택 / 완료 / LVM클릭 후 표준 파티션으로 변경 / +눌러서
  • swap[가상 메모리] 는 4G(물리적 램 2배) , +클릭 /boot [200M] /(루트) , +클릭 / 선택 용량 입력 없이 변경사항 적용
  • *부팅 후 IP는 120번 입력 / 전원설정, 업데이트 중지 및 SELinux disabled 로 설정 하고 스냅샷.

swap(가상메모리): 하드디스크를 램처럼 사용

ext4: 주로 리눅스에서 쓰이는 파일 시스템 중 하나이다.


*시작 과 종료

    1. 전원버튼 이용해서 끄고 켜기
    • poweroff 또는 halt -p 또는 init 0 [ 0은 런 레벨 0~6 ]
    • shutdown -r [-P,-p] now ⇒ 지금 즉시 재부팅, 종료
    • shutdown -P[-r] +5 5분 후 종료/재부팅
    • shutdown -c 취소
    • shutdown -r[-P] 12:50 예약 종료, 재부팅
    • shutdown -k +10 : 접속한 사용자들에게 10분 후 종료 한다는 메시지 보내기.[실제 종료 되지 않음]
    • reboot, init 6 , logout

리눅스 종료 명령어

  • [root@centos ~]# poweroff
  • [root@centos ~]# halt -p
  • [root@centos ~]# init 0
  • [root@centos ~]# shutdown -P now: 지금 즉시 종료
    • [root@centos ~]# shutdown -r now: 지금 즉시 재부팅
    • [root@centos ~]# shutdown -P +5: 5분후에 종료
    • [root@centos ~]# shutdown -c: 실행 취소
  • reboot, init 6 : 재부팅
  • 2.가상 콘솔 ( Ctrl + Alt + F1(메인화면 X-windows 화면 ) ~ F6 )

Ctrl + Alt + F1 실행

Ctrl + Alt + F4 실행

  • 3.리눅스 명령어 형식
    • -대소문자 구분
    • -명령어 입력 실행 . ifconfig, top (컨트롤C 중지), ls ,
    • -명령어와 옵션만으로 실행 : -P, --create , [ 대소문자 구분 ] #ls -al
    • -명령어 [인수1 인수2 인수3]
    • -명령어 [옵션][인수1 인수2 인수3]

명령어와 옵션 -P, --create : 단어 하나면 - 한개, 단어면 - 두개


4. 리눅스 구조

[root@centos ~]# cd / ⇒ 루트 디렉터리 윈도우의 C 드라이브
[root@centos /]# ls
[root@centos ~] root의 홈 디렉터리
bin[사용자들이 사용하는 명령어들이 들어있는곳]
dev[디바이스 장치, CD rom, hdd 기타등등]
home[사용자들의 정보와 사용자 개인용 폴더가 있는곳 ]
lib64 mnt[마운트 연결 정보 있는곳 ]
proc run srv tmp[임시 파일 저장]
var[사용자들의 메일이 저장되는곳]
boot
etc[설정파일이 있는곳] – *제일 많이 사용되는 디렉토리 .
lib media opt root sbin[관리자 전용 명령어가 있는곳] sys usr

ls -> (리스트)

ls etc -> (파일 설정)

#cd .. -> 상위디렉터리로 이동
#cd . -> 현재 디렉터리를 나타냄
#cd ~ -> 어디에 있든지 루트의 홈 디렉토리로 이동됨.
#history -> 사용했던 명령어 확인
#man 명령어 ⇒ 명령어의 사용법을 보여줌.

뒤로 가기

  • . 한개는 현 위치

man ls

cd etc와 cd /etc 명령어의 차이점: 현재 위치에 따라서 /(root)를 생략 가능하다.

폴더 생성 [ mkdir test1 ] / mkdir test2 test3 여러개도 생성 가능
폴더 삭제 rmdir 폴더 이름 : 빈 폴더 삭제 / rm -rf test2: 묻지도 따지지도 않고 삭제

mkdir(make directory)

rmdir(remove directory)

  • 빈 폴더만 삭제 되고, 안에 파일이 들어있으면 삭제가 안된다.
  • 강제로 삭제하려면 rm -rf test2 사용

부모 디렉터리와 자식 디렉터리를 한꺼번에 생성

  • [testA[testB]]: testA 안에 testB를 넣어서 생성
    • -p 옵션의 뜻: parents

*런 레벨 [ init 0~6 ]

0: 종료 1:싱글모드(복구모드), 2,4(빈것/사용안함) , 3:텍스트 다중 사용자 모드(여러명이 사용)
5: X-windows모드(초기 상태) , 6:재부팅

명령어를 입력 엔터 ⇒ 쉘(해석) ⇒ 커널⇒ 실행
#pwd ⇒ 현재 커서 있는 위치(작업디렉토리)

현재 위치

*런 레벨만 확인
-# ls -l runlevel?.target
lrwxrwxrwx. 1 root root 15 5월 23 2019 runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 13 5월 23 2019 runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 17 5월 23 2019 runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 5월 23 2019 runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 5월 23 2019 runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 5월 23 2019 runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 5월 23 2019 runlevel6.target -> reboot.target

-l 옵션은 더 자세하게 란 뜻

*다중 사용자 모드로 변경

  • #ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

*다중 사용자 모드로 변경한 것 확인

  • [root@centos ~]# ls -l /etc/systemd/system/default.target

    • lrwxrwxrwx 1 root root 37 3월 13 14:29 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target

    • #init 6 으로 재부팅 하고 root 로 로그인 합니다.

    • #startx Keep Old Name ⇒ 그래픽 모드가 됩니다.

*다시 런레벨5로 변경하기 .
[root@centos ~]# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
[root@centos ~]# init 6

다시 그래픽으로 돌아가기

*자동완성 / 히스토리
#cd /etc/sysconfig/network-scripts/ -> Tap 키를 이용하여 자동 완성
#gedit ifcfg-ens160 ⇒ 수정하고 저장

*cat 을 이용해서 파일의 내용 확인
#cat /etc/sysconfig/network-scripts/ifcfg-ens160

cat을 이용하여 파일 내용 확인( 파일 내용 변경 불가능)


*기본명령어 사용법

#ls ⇒ 제목만 보여짐.
#ls -a ⇒ all 모든파일(숨김파일) . 파일명 앞에 점(.) 있는것은 숨김파일.
#ls -l ⇒ long 자세히 보여줘 (d : ( 폴더) , l : (링크파일) , - : (일반파일))
#ls -l /etc/sysconfig/a*a로 시작하는 파일만 보여주기

ls

ls -l

ls -la /etc/sysconfig

*이동

  • #cd , cd ~ , cd .. , cd . , cd [이동하고 싶은 위치 지정]
  • sysconfig로 이동: #cd /etc/sysconfig/

*파일 생성과 삭제

  • -빈파일 생성 과 생성시간을 최신으로 변경
    • #touch a.txt ,
    • touch b.hwp , touch [c.txt d.txt] : 여러개도 생성 가능.
    • #rm [-i , -f , -rf][파일명.hwp 파일명.txt] : 여러개 삭제 가능

빈 파일 생성

제거

  • i옵션 : 물어본다는 뜻
  • r옵션 : 복구 못하도록 삭제
  • f옵션(force) : 반드시 삭제
    • 지우고 나면 잘 지워졌나 확인

*복사하기

  • test1 디렉터리 생성
  • #ls 명령어로 anaconda~ 파일 있는거 확인 ⇒ test1 로 복사…
    • [root@centos ~]# cp anaconda-ks.cfg ./test1/
    • [root@centos ~]# ls test1
    • anaconda-ks.cfg
    • [root@centos ~]# cp anaconda-ks.cfg test1/test.cfg
    • [root@centos ~]# ls test1
    • anaconda-ks.cfg test.cfg

복사하기

  • 현재 파일을 복사하기
  • 이름을 바꾸고 복사하기
    • [root@centos ~]# cp test1/test.cfg ./test1.cfg ⇒ ./ 는 현재 커서가 있는 위치를 뜻함.

*문제 : 지금 test1 디렉토리에 test.cfg 파일을 현재 디렉토리에 복사( test2.cfg)

*이동 move = mv 그냥 이동도 되고, 이름변경해서 이동도 됨.

  • 아나콘다파일을 aaa 이름으로 복사하고 다시 aaa 를 test1로 이동 (이름 변경 AAA )

이동했기 때문에 ls 했을 때 보이지 않는다.


*파일 열어 보기

  • cat 파일명,

  • #gedit test1/AAA ⇒ 수정도 가능

  • #vi test1/AAA ⇒ vi 편집기 ,

    • 수정도 가능 esc / [:q , :wq(저장 후 나가기) , :q!(강제로 나가기)]
  • #head(위쪽부터 원하는 만큼만 보기) / tail( 끝에서 부터 보기 )
    head -10 test1/AAA
    tail -5 test1/AAA

head

  • 위에서 부터 5줄 표시

tail

  • 아래서 부터 10줄 표시
  • more 페이지 단위로 화면 출력해서 보여줌 스페이스바-페이지 단위로 출력,
    엔터키는 한줄씩 올라감.
    more +50 test1/AAA ⇒ 50번째 줄부터 페이지 단위로 보여줌.

file

  • 파일의 형식을 알 수 있다.

process 상태 확인


*필수 명령어.

-ls 목록 확인 = list ls -al 디렉토리 위치
-cd 이동, cd cd. cd .. cd ~ cd 이동하려는곳 경로. ( cd /etc/sysconfig )
-pwd 현재 위치의 경로를 보여줌. /etc/sysconfig/network/
-man 명령어 명령어 사용법[ 설명과 옵션에대한 설명 ] #man touch
-touch : 빈파일.확장자 생성 / 최신파일로 변경.
-mkdir -p testA/testB : 부모와 자식디렉터리를 한꺼번에 생성 , [ testA [testB] ]

mkdir testA testB testC == 여러개를 한번에 생성
-rmdir 디렉터리 / rm -rf [디렉터리 또는 파일명]
빈데렉터리만 내용물이 있어도 삭제됨. -rf는 강제로 삭제

-cp anaconda.cfg testa.cfg == > 이름을 변경해서 복사하기.
-mv anaconda.cfg testa.cfg == > 이름을 변경해서 이동 시키기
-head [+10] 파일명 , tail [+10] 파일명 , more [+10] 파일명 = less

-gedit

*리눅스 구조

  • /
  • /etc
  • /home
  • /var
  • /tmp
  • /bin
  • /sbin
  • /boot
  • /dev

*네트워크 스크립트 파일 위치 기억하기
*Tap 키를 이용하면 오타 방지를 할 수 있고, 기억이 안날 때 파일 설정을 할 수 있다.

0개의 댓글