■ 가상화 플랫폼
가상화 플랫폼을 이용하면 윈도우 사용자가 하나의 pc내에서 시뮬레이션 또는 가상화된 다른 시스템을 실행 할 수 있다.
예를 들어 윈도우11에서 리눅스를 설치해서 사용할 수 있다.
- VM WARE Workstation
- Oracle VirtualBox
- MS Hyper-V
■ 호스트(host) OS(운영체제), 게스트(guest) OS
- 호스트(host) OS : Oracle VirtualBox가 설치된 운영체제
- 게스트(guest) OS : 가상머신 위에 설치되는 운영체제
■ Linux
오픈 소스 운영체제 = 무료
1991 Linus Torvalds(리누즈 토발즈)가 취미 삼아 만든 것으로 알려져 있다.
Linus는 대학생 시절에 UNIX의 원칙과 설계를 기반으로 했던 MINIX 운영체제를 대체할 무료 오픈 소스 버전을 만들었다.
리누즈 토발즈가 개발한 것은 리눅스의 커널(자동차 엔진)을 개발하고 소스를 무료로 공개하고 전세계의 많은 개발자들이 이 오픈소스를 가져다가 더 좋게 개선해서 다시 인터넷에 올리고하는 작업을 반복하다보니 리눅스가 유닉스보다 더 가볍고 안정적이게 되었다.
GNU 프로젝트
누구든지 이 배포된 오픈소스를 가져다가 개발할 수 있고 돈을 벌 목적으로 상용화할 수도 있는데 한가지 지켜야 할 약속은 이 소스를 가져다가 더 좋게 수정했으면 그 코드를 인터넷에 올려줘야하는 약속이 있다.
Red hat(상용버젼) ----------> centos
ㄴ 유료 : 기술지원 가능 ㄴ 무료
VirtualBox-7.0.12-159484-Win
https://learn.microsoft.com/ko-kr/cpp/windows/latest-supported-vc-redist?view=msvc-170
X64 VC_redist.x64
Visual C++ 설치 >> VirtualBox 설치
https://www.centos.org/
CentOS-7-x86_64-DVD-2009.iso
-->> 다운받은 파일 4기가 용량 확인
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
putty.exe (the SSH and Telnet client itself)
64-bit x86
Oracle VM VirtualBox
* 도구 - 네트워크
VirtualBox Host-Only Ethernet Adapter -----> 가상주소
DHCP 서버 활성화
* 환영합니다 - 환경설정 - 입력 - 가상머신
호스트 키 조합 : 가상 안팍 전환키
* 환영합니다 - 새로만들기
* 하드웨어
기본메모리 : 16기가 중 2기가
프로세서 : CPU 16개 중 2개
* 가상 하드 디스크 50기가
-----> 설치
* centos - 설정
일반 - 고급 - 클립보드 공유, 드래그 앤 드롭 : 양방향
저장소 - 컨트롤러:IDE - ISO 연결
네트워크 - 어댑터2 활성화 - 호스트 전용 어댑터
-----> 확인
* 시작 - Instal CentOS 7 - English
-----> 설치 시작
* 설치 중
마스터 비번설정 : 1234
'미리' 계정생성 - user1 / 1234
* 리부트 - 라이센스 동의 - 완료
* 계정 root로 접속
not listed? - root / 1234 - 영어로 설정 - 위치 OFF - SKIP
* 창 화면조정 설치
-----> run
완료되면 창닫고 이후 창 크기에 따른 화면조정 가능
바탕화면의 CD - eject (꺼내기)
바탕화면 - 마우스오른쪽 - 오픈 터미널
> ifconfig - ip확인
putty
-----> Open - 리눅스 계정으로 로그인
* 내용 복사 : 화면 블럭
* 붙여넣기 : 마우스 오른쪽 클릭
> su -
마스터 계정으로 변경
> su - user1
> user1 계정으로 변경
> exit
계정로그아웃 또는 접속종료
■ 리눅스 시스템 종료
root사용자가 리눅스 시스템을 종료할 수 있다.
init 0
shutdown -h now
■ 리눅스 시스템 재부팅
root사용자가 리눅스 시스템을 재부팅할 수 있다.
reboot
init 6
shutdown -r now
■ ls (list)
디렉터리 안에 있는 파일이나 서브 디렉터리 등 디렉터리의 내용을 보는 명령
옵션 : ls -lh 또는 ls -hl 또는 ls -l -h 옵션 순서 무관
-l | 파일들을 나열할 때 자세히 출력한다. 이름(파일,디렉터리,심볼릭마크) 기준으로 오름차순 정렬 |
-h | -l 옵션과 함께 사용하면 파일의 크기를 K,M,G 읽기쉬운 단위로 변경해서 출력한다. -rw-rw-r--. 1 user1 user1 1.1K Dec 1 10:50 asia |
-S | -l 옵션과 함께 사용하면 파일 크기순으로 내림차순 정렬 한다. |
-t | -l 옵션과 함께 사용하면 출력결과를 파일이 수정된 시간을 기준으로 내림차순 정렬한다. |
-r | -l 옵션과 함께 사용하면 출력결과의 정렬을 반전한다.(오름차순 -> 내림차순) |
-R | 서브디렉터리 안에 있는 파일, 디렉터리 모두 표시 |
-a | 경로안의 모든 파일을 나열한다.(숨김파일 포함) |
-d | 디렉터리 자체 정보 확인 |
-F | 파일의 종류를 자세히 표시한다. * : 실행파일 / : 디렉터리 home/ dev/ @ : 심벌릭 링크(윈도우 바로가기와 비슷) lib64@ bin@ |
[root@centos ~]# ls -l drwxr-xr-x. 2 root root 6 Nov 29 21:18 Desktop |
|||||||
d | rwxr-xr-x. | 2 | root | root |
6 | Nov 29 21:18 | Desktop |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
1 | 파일 종류 - : 일반파일 d : 디렉터리 | : 심볼릭 링크 파일(symbolic link file), 윈도우 바로가기 비슷하다. |
||||||
2 | 파일 접근 권한, 소유자, 그룹, 기타사용자 r : 읽기권한 w : 쓰기 권한 x : 실행 권한 |
||||||
3 | 하드 링크의 개수 | ||||||
4 | 파일 소유자 | ||||||
5 | 파일이 속한 그룹 | ||||||
6 | 파일의 크기(byte) | ||||||
7 | 최종갱신일 | ||||||
8 | 파일명(파일, 디렉터리, 심볼릭 링크) |
# 다수의 목록 확인
[user1@centos ~]$ ls ~/test1 ~/test2
/home/user1/test1:
ex1.txt ex2.txt ex3.txt
/home/user1/test2:
bashrc ex1.txt ex1.txt~ ex2.txt
# 다수의 상세목록확인
[user1@centos ~]$ ls -l ~/test1 ~/test2
/home/user1/test1:
total 12
-rw-rw-r--. 1 user1 user1 29 Dec 1 11:05 ex1.txt
-rw-rw-r--. 1 user1 user1 150 Dec 1 11:05 ex2.txt
-rw-rw-r--. 1 user1 user1 29 Dec 1 11:10 ex3.txt
/home/user1/test2:
total 16
-rw-r--r--. 1 user1 user1 2853 Dec 1 11:24 bashrc
-rw-rw-r--. 1 user1 user1 29 Dec 1 11:50 ex1.txt
-rw-rw-r--. 1 user1 user1 29 Dec 1 11:45 ex1.txt~
-rw-rw-r--. 1 user1 user1 150 Dec 1 11:18 ex2.txt
■ pwd (print working didectory)
현재 디렉터리의 절대경로를 출력
[user1@centos ~]$ pwd
/home/user1
■ cd (change directory)
디렉터리 이동하는 명령어
절대경로(absolute path) : 루트 디렉터리에서 시작해서 목적지 디렉터리까지 경로를 의미한다.
[root@centos ~]# cd Documents
[root@centos ~]# cd /home/user1
상대경로(relative path) : 현재 자신의 위치 즉 현재 디렉터리에서 목적지를 향하는 경로를 의미한다.
cd . (점) | 현재 디렉터리로 이동 |
cd .. (점점) | 상위 디렉터리로 이동 |
cd cd ~ cd $home |
접속한 사용자 홈디렉터리로 이동 [user1@centos ~]$ pwd /home/user1 |
cd ~user1 | 입력한 사용자 홈 디렉터리로 이동 : /home/user1 단, 유저가 root로는 함부로 못간다. |
cd - | 이전 경로(직전에 사용한 경로)로 이동 |
cd ./Documents cd Documents |
/home/user1/Documents 기준 현재 디렉터리의 하위 디렉터리로 이동 cd /Documents ----> / 로 시작하면 절대경로라서 오류 |
cd / | 최상위 디렉터리(루트디렉터리)로 이동 [user1@centos /]$ pwd / |
[root@centos /]# cd ~
[root@centos ~]# pwd
/root ---> root 계정의 홈 디렉터리
[root@centos ~]# cd /
[root@centos /]# pwd
/ ---> 최상위 루트 디렉터리
■ mkdir
디렉터리 만드는 명령어
-p | 서브디렉터리까지 한번에 생성 |
[user1@centos ~]$ mkdir test
[user1@centos ~]$ ls -l
total 0
drwxrwxr-x. 2 user1 user1 6 Nov 30 01:20 test
# 현재 위치에서 다중 디렉터리 생성
[user1@centos ~]$ mkdir test1 test2 test3
[user1@centos ~]$ ls
test test1 test2 test3
[user1@centos ~]$ mkdir /test4
mkdir: cannot create directory ‘/test4’: Permission denied
-----> 오류 : 절대경로를 사용한다면 user1 계정 기준 /home/user1/test4
-----> 상대경로로 사용 시 그냥 test4 또는 ./test4
# 현재 위치에서 디렉터리를 생성하면서 서브 디렉터리 생성
[user1@centos ~]$ mkdir -p test4/test5
[user1@centos ~]$ cd test4/test5 ---> 현재 위치 기준, 상대경로
[user1@centos test5]$ pwd
/home/user1/test4/test5 ---> 절대 경로
■ rmdir
디렉터리를 삭제하는 명령어, 단 디렉터리 안에 파일 또는 디렉터리가 없을 경우 삭제
-R | 서브디렉터리 안에 있는 파일, 디렉터리 모두 포함 |
[user1@centos ~]$ rmdir test1
[user1@centos ~]$ rmdir test2
[user1@centos ~]$ ls
test test3 test4
[user1@centos ~]$ rmdir test4
rmdir: failed to remove ‘test4’: Directory not empty
[user1@centos ~]$ ls -R test4
test4:
test5
-----> 하위에 디렉터리 및 파일이 있을 경우 옵션없이 삭제 불가
[user1@centos ~]$ rmdir -R test4
■ rm
파일이나 디렉터리를 삭제하는 명령어
-r | 현재 디렉터리 내 모든 파일과 디렉터리를 함께 삭제 |
-i | 삭제여부 물어보기 |
-f | 삭제할 때 물어보지 말고 바로 삭제 (최근 기본값) |
[user1@centos test]$ rm -i a100
rm: remove regular empty file ‘a100’? y
[user1@centos ~]$ rm -ri test ----> 또는 rm -r -i test
rm: descend into directory ‘test’? y
rm: remove regular empty file ‘test/b’? y
rm: remove directory ‘test’? y
-----> 파일 및 디렉터리 각각 질문한다.
■ touch
파일의 용량이 0인 파일을 생성하는 명령어
기존 파일의 수정날짜 정보를 최신날짜로 변경할 때 사용하는 명령어
[user1@centos test]$ touch a1.text
[user1@centos test]$ ls -l
total 0
-rw-rw-r--. 1 user1 user1 0 Nov 30 02:10 a1.text
[user1@centos test]$ touch a1.text
[user1@centos test]$ ls -l
total 0
-rw-rw-r--. 1 user1 user1 0 Nov 30 02:11 a1.text
■ clear
화면 내용 지우는 명령
■ cat
파일안에 내용 보기
-b | 라인번호 출력 (공백줄 제외) |
-n | 라인번호 출력 (공백줄 포함) |
[user1@centos ~]$ cat -b .bashrc
1 # .bashrc
2 # Source global definitions
3 if [ -f /etc/bashrc ]; then
[user1@centos ~]$ cat -n .bashrc
1 # .bashrc
2
3 # Source global definitions
4 if [ -f /etc/bashrc ]; then
■ nl
파일안에 내용을 출력하면서 라인번호까지 출력하는 명령어
[user1@centos ~]$ nl .bashrc
||
[user1@centos ~]$ cat -b .bashrc
■ less
파일의 내용을 한 화면에 보여주는 명령어
-N | 라인번호 출력 (공백줄 제외) |
space bar | 다음페이지 |
q | less 명령어를 종료 |
[user1@centos ~]$ less /etc/passwd
■ more
파일의 내용을 한 화면에 보여주는 명령어(--More-- %)
-숫자 | 라인수만큼씩 화면에 출력한다. |
enter key | 한행 아래로 이동 |
b | 한행 위로 이동 |
= | 현재 위치의 행번호 표시 |
q | more 명령어를 종료 |
[user1@centos ~]$ more /etc/passwd
[user1@centos ~]$ more -10 /etc/passwd
■ head
파일의 앞부분 출력, 기본값10
[user1@centos ~]$ head -2 /etc/passwd
■ tail
파일의 뒷부분 출력, 기본값 10
[user1@centos ~]$ tail -2 /ete/passwd
■ man
명령어의 메뉴얼 보기
[user1@centos ~]$ man ls
■ which
실행파일의 경로
[user1@centos ~]$ which date
/bin/date
su -
exit
init 0
reboot
ls
pwd
cd
mkdir
rmdir
rm
touch
clear
cat
nl
less
more
head
tail
man
which
'Linux & CentOS' 카테고리의 다른 글
42 LINUX 파라미터 변수, if, case, for, eval, while (1) | 2023.12.06 |
---|---|
41 LINUX .bash_profile, cut, awk, sort, uniq, echo, 연산, Shell (2) | 2023.12.05 |
40 LINUX user, group, 권한, tar (1) | 2023.12.04 |
39 LINUX date, time, Redirection, wc, grep, cp, mv, rename, vi (1) | 2023.12.01 |