새소식

인기 검색어

TL

21/02/01 TL. 리눅스 기초 명령어(3)

  • -

오늘 할 일

산타토익

이것이 리눅스다 4장 완강

 


www.inflearn.com/course/%EC%9D%B4%EA%B2%83%EC%9D%B4-%EB%A6%AC%EB%88%85%EC%8A%A4%EB%8B%A4/dashboard

 

'이것이 리눅스다' 저자의 Red Hat CentOS7 리눅스 서버&네트워크 강좌 - 인프런

한빛미디어에서 발간한 '이것이 리눅스다' 의 저자가 직접 강의하는 강좌 입니다. 초급 서버 개발 Linux 온라인 강의 이것이 리눅스다

www.inflearn.com

 

압축률은 xz > bzip > gzip 순이다.
j를 붙일 때는 확장 파일까지 써줘야 한다. cvf, xvf 정도의 명령어는 외워두자.
xz 형태로 압축을 했더니 효율이 훨씬 크다.
find류는 자주 쓰이므로 기억해 두자.
nmtui, firewall-config는 자주 쓰인다.
분 시 일 월 요일 실행할사용자 실행할내용 실행할 디렉터리

마지막 줄은 매월 1일인 모든 요일 4시 42분에 /etc/cron.montly에 있는 모든 내용을 실행하라는 뜻이다.

crontab의 내용 맨 밑에 한 줄을 추가해주었다. 매월 15일 3시 01분에 cron.monthly의 모든 파일을 수행하겠다는 내용이다.

 

date를 받아와서 변수로 저장한 뒤, "backup-월일.tar.xz"로 /home의 내용을 /backup/에 저장하겠다. (cron.monthly에 만든 sh파일)
1. 날짜를 바꾸고 2. 실행 권한을 준 뒤 3. 시스템을 restart해서 4. /backup/이 잘 진행됐는지 확인했더니 잘 된 것을 확인할 수 있다.
내일 아침 4시에 모든 내용을 update한 뒤, reboot 하겠다. at -l로 at 리스트들을 볼 수 있고, atrm으로 원하는 index의 at를 삭제할 수 있다.
주로 nmtui를 이용한다.
ifconfig로 eno~라는 network가 존재하는 것을 확인
eno~를 종료했다 실행해 보았다.
host name으로 내 ip와 naver의 ip를 받아와 보았다.
ping으로 google과 연결이 되는지 확인. 네트워크가 잘 되는지 확인할 때 주로 사용. naver와 같은 곳에서는 작동하지 않는다.
/etc/sysconfig/network-scripts/ifcfg-eno~ 파일. 이 파일을 수정하는 것과 nmtui로 수정하는 것이 같다.

BOOTPROTO=none : ip를 자동으로 안 받고, 고정으로 쓰겠다.

ONBOOT="yes" : ip를 쓰겠다.

ipaddr, bootproto, gateway, dns 정도는 알아두는 게 좋다.

서버에서 이름이 궁금해지면 위 nameserver에 물어본다.

 

resolve.conf 파일을 수정해서 dns 주소를 외부의 것으로 바꿔줄 수 있다. 위의 주소는 kt에서 제공하는 주소인데, dns 서버가 없다면 유용하게 사용할 수 있다. (외우면 좋음)
network를 재시작했더니 dns 주소가 돌아왔다. dns를 고정으로 설정해뒀기 때문.
1. ls -l /etc를 more 방식으로 보여준다. 2. 현재 프로세스에서 bash가 들어간 것들만 보여준다. 3. list.txt에 ls -l 내용을 넣는다. 4. list.txt를 정렬해서 out.txt에 넣어라.

ls -l > file.txt : file.txt에 ls -l을 덮어씌운다.

ls -l >> file.txt : file.txt에 ls -l을 append 하라.

 

서버 데몬 = 서비스 = 서버 프로세스

 

프로세스 번호가 항상 달라지는 이유 : hw의 프로그램이 메모리에 로딩할 때 마다, 비어있는 프로세스 번호를 아무거나 할당해주기 때문. 순차대로 지정해 주는 작업 프로세스와는 다르다.

 

1. yes를 실행시킴. 2. yes 프로세스를 확인 3. yes 프로세스 kill 4. 종료됨
포그라운드에 있는 걸 백그라운드로 보냈다가 다시 포그라운드로.

명령어 뒤에 &를 붙이면 백그라운드로 실행하라. tar 이런건 굳이 볼 필요가 없으니 유용할 수 있음. vi & 이런건 못 보니까 의미가 없겠지.

 

서비스 : 항상 가동 -> 요청이 오면 바로 반응

소켓 : 필요할 때만 가동 -> 요청이 오면 잠시 후 반응 (비교적 느리다.)

 

 

응급 복구 : 시스템이 부팅되지 않을 때 수행

ex) root 비밀번호 분실 시

 

시작화면에서 알파벳 e를 눌러 GRUB 편집에 접근. 

원랜 빨간 박스 자리에 rh\gb quiet LANG=ko_KR.UTF-8이 적혀 있는데 이걸 지우고 빨간 박스처럼 적는다. 빨간 박스는 응급 복구 모드로 들어가겠다는 뜻. 그리고 ctrl + x로 실행
그렇게 들어가서 whoami를 해보니 root이다. 그래서 passwd를 통해 password를 바꾸려고 하니, error가 발생한다. mount가 읽기 전용(ro : read-only)이기 때문
이제는 rw이므로 파일을 변경할 수 있다. 즉, 원래 비밀번호는 못찾았으나, 접근을 할 수 있다.

그런데, 이러면 다른 누군가가 root 비밀번호를 몰라도 접근할 수 있으므로 막아야 한다.

처음 실행 화면에서도 비밀번호를 입력해야 바꿀 수 있도록 설정하자. /etc/grub.d/00_header 파일을 수정하자

맨 마지막 줄에 이렇게 추가한다.

grub2-mkconfig -o /boot/grub2/grub.cfg
를 입력해서 변경사항을 저장하고, reboot한다.

이제 e를 눌러 편집화면에 들어와도, thisuser와 4321을 입력하지 않으면 편집할 수 없다.

이제 root의 비밀번호를 모르는 아무나 들어와서 바꾸는 것을 방지할 수 있다.

커널 : hw를 제어하는 코드. 모든 hw를 제어하는 코드를 짜면 너무 무거워지므로, 잘 안 쓰는 코드들은 모듈로 빼놓고 필요할 때만 사용한다.

1. wget "https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.17.4.tar.xz" --no-check-certificate로 커널 다운로드

2. tar xfJ linux-3.17.4.tar.xz로 압축 해제

3. linux-3.17.4로 이동한 뒤 yum -y gcc gcc_c++ qt qt-devel로 필요한 것들을 설치

4. make mrproper로 커널 설정을 초기화하고 make xconfig로 커널의 환경 설정한 후 make clean으로 기존 정보 제거

5. make ; make modules_install ; make install로 한 번에 여러줄을 수행. ;는 이어서 수행하라는 의미.

6. 재부팅

'TL' 카테고리의 다른 글

21/02/04 TL. Linux RAID 구현.  (0) 2021.02.04
21/02/03 TL.  (0) 2021.02.03
01/27 TL. 리눅스 기초 명령어(2)  (0) 2021.01.27
01/26 TL. 기초 리눅스 명령어  (0) 2021.01.27
21/01/22 TL.  (0) 2021.01.22
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.