본문 바로가기

Programming/국비학원

221018 - 리눅스 - 텍스트모드, 명령어, vi 에디터

  • 화면 해상도 설정
//터미널
gedit /etc/grub.d/10_linux

//gedit 편집 내용 (vga 추가)
if [ "x${GRUB_GRUBENV_UPDATE}" = "xyes" ]; then
${grub_editenv} - set kernelopts="root=${linux_root_device_thisversion} ro ${args} vga=773"

grub2-mkconfig -o /boot/grub2/grub.cfg  //해상도 유지


※ vga = 773 : 1024x768 

 

 

 

 

  • 방화벽 설치
//터미널
dnf -y install firewall-config

 

 

 

 

  • 스냅샷 (워크스테이션 프로)

1. 백업 파일 생성

워크스테이션 프로 - vm 메뉴 - take snapshot

 

2. 오류 발생

//터미널
rm -rf /boot //부팅 관련 설정 모두 삭제 => 일부러 오류 발생시킴

 

3. 복구

워크스테이션 프로 - vm 메뉴 - revert to snapshot 

=> 이전 백업(take snapshot했던 시점)으로 돌아감

 

 

 

 

https://miniminis.github.io/2020/05/30/linux/linux-thisislinux04/

가상 머신 추가 (서버B, 텍스트모드)

1. vmware - 새 가상머신 생성 (minimal install)

 

2. minimal install로 설치 못한 패키지들 추가 다운

//터미널
dnf -y install bind-utils net-tools wget unzip bzip2

※ wget : 비상호작용 네트워크 다운로드 프로그램 (웹에 있는 파일 다운받음)

 

 

 

  • 텍스트모드

장점 : 빠른 속도, 고성능
단점 : 접근하기 위한 명령어 모두 알아야 함

 

※ 가상콘솔 간 이동 : ctrl + alt + f2 ~ f6 (f2 : xwindow 모드)

 

 

 

 

리눅스 기본 개념
  • 기본 명령어
  • 종료
poweroff //지양

shutdown -P now 
shutdown -P +10 //10분 후 종료
shutdown -r 22:00 //종료 후 22시에 재부팅
shutdown -c //예약된 셧다운 취소

halt -p 

init0

 

https://freehoon.tistory.com/m/42

※ shutdown => 관리자 계정(root)만 사용 가능

 -r  종료 후 재부팅 
 -h  shutdown 이 완료된 후 시스템을 종료 
 -c  진행중인 shutdown 명령을 취소
 -k  경고 메시지만 출력하고, 실제로는 shutdown 을 하지 않음
 -f  재부팅 할 때 fsck 명령어를 건너띄고, 부팅을 빠르게 진행
 -n  init를 호출하지 않고, shutdown을 진행함
 -t sec  지정시간에 시스템을 재시동

 

 

 

  • 재부팅
reboot
init6

 

 

 

  • 로그아웃
exit
logout

 

 

 

※ 런레벨 (init0~6) 확인

//터미널
cd /lib/systemd/system, ls -l runlevel?.target

 

 

 0  종료모드
 1  단일 사용자 모드(시스템 복구 시 사용)
 2  다중 사용자 모드 (NFS 사용 불가로 서버와 공유 안됨. 인터넷도 안됨)
 3  다중 사용자 모드 (텍스트 로그인)
 4  사용 안 함
 5  다중 사용자 모드 (X윈도우 로그인)
 6  재가동 모드(재부팅)

 

 

 

 

  • 그래픽 - 텍스트 모드 변경
ls -l /lib/systemd/system/runlevel?.target //리스트 형태로 런레벨 확인
cd /lib/systemd/system //리스트에서 default.target 확인
ls -l default.target //default.target 값 확인 => 현재 default.target : graphical 모드 (init 5) 

//default.target을 multi-user.target으로 변경
ln -sf /lib/systemd/system/multi-user.target default.target
ls -l default.target //확인
reboot //=>xWindow 모드 아니라 text-mode로 부팅됨
//textmode에서 xWindow 모드를 키고 싶으면 => startx

//그래픽모드로 재변경
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

 

 

 

 

  • 자동완성, 히스토리
tab키 => 자동완성

history //검색했던 명령 기록
history -c //모든 명령 기록 삭제

 

 

 

 

https://velog.io/@zeesoo/Linux-vi-%ED%8E%B8%EC%A7%91%EA%B8%B0-%EC%82%AC%EC%9A%A9%EB%B2%95-%EB%B0%8F-%EB%AA%85%EB%A0%B9%EC%96%B4

  • vi 에디터
vi //vi 에디터 키기

//test2.txt 생성(기존 파일 있으면 가져옴)
vi test2.txt

 

1. (명령→ : ) 콜론모드

: 저장, 종료

:q  //에디터창 종료
:q! //저장하지 않고 강제로 종료
:w //저장
:wq //저장 후 종료
ZZ // "


2. (명령→ i, a ) 입력모드

: 텍스트 입력


3. 명령모드 (esc) 

: 커서 이동, 글자 복사, 삭제 등

커서 이동
h, j, k, l //좌,하,상,우 커서 이동 (방향키가 없는 키보드에서)
w //다음 단어의 첫 글자로 이동
b //이전 단어의 첫 글자로 이동
G //마지막 행으로 가기
:숫자 //지정한 숫자 행으로 이동. ex) :5


삭제
x //커서에 있는 글자 삭제
X //커서 앞에 있는 글자 삭제
dw //커서를 기준으로 뒤에 있는 단어 글자 삭제 (커서 포함)
db //커서를 기준으로 앞에 있는 단어 글자 삭제
dd //커서가 있는 라인(줄) 삭제
숫자 + dw, db, dd //해당 숫자 삭제 ex) 3dw, 2db, 4dd

//삭제 된 내용은 버퍼에 저장되어 붙여넣기 가능


복사
yw //커서를 기준으로 뒤에 있는 단어 글자 복사 (커서 포함)
yb //커서를 기준으로 앞에 있는 단어 글자 복사
yy //커서가 있는 라인(줄) 복사
숫자 + yw, yb, yy //ex) 3yw, 2yb, 4yy


붙여넣기
p //커서 다음에 붙여넣기
P //커서 이전에 붙여넣기


찾기
/문자열 //앞에서부터 문자열 찾기
?문자열 //뒤에서부터 문자열 찾기
n //뒤로 검색
N //앞으로 검색


바꾸기
:%s/old/new  //각 행의 처음 나오는 old를 찾아 new로 바꾼다.
:%s/old/new/g  //모든 old를 찾아 new로 바꾼다.
:%s/old/new/gc  //모든 old를 찾아 new로 바꾸기 전에 물어본다.


되돌리기, 다시실행
u //이전으로  되돌리기 (Undo)
Ctrl + r //되돌리기한 것 재실행 (Redo)


자주 사용하는 기능들
:set number  //행번호 출력 (간단하게 :set nu)
:set nonumber //행번호 숨김 (간단하게 :set nonu)
:cd //현재 디렉토리 출력

 

 

※ vi 편집 중 터미널 비정상 종료 => swap file 로 저장됨

ls -a //해당 파일 확인
rm -f [filename.swp] //삭제