티스토리 뷰

SYSTEM/LINUX

3) 리눅스 구조

chrisysl 2018. 2. 9. 17:45

 - 설치된 CentOS를 다루기 위해서 설정해야할 값들을 지정해주자.

 - 원격에서 리눅스를 다룬다는 가정 하에 실습을 진행할 것이기 때문에 원격 접속 설정이란것을 해주자.



# VMware -> Edit -> Virtual Network Editor






# VMnet8 선택

NAT 라고 잘 설정이 되어 있는지 확인, Subnet IP를 100.100.100.0 으로 변경

그 이후에 NAT Setting 클릭






# Gateway IP를 100.100.100.2 로 변경.

이후 OK 눌러서 빠져 나온 뒤 Apply 눌러서 설정 적용한 이후 빠져나옴.






# 이후에 가상머신 실행시켜서 로그인까지 완료하자.

로그인이 완료되었으면 






#> vi /etc/sysconfig/network-scripts/ifcfg-eth0

이라고 명령어를 쳐 주자. (4번째 줄 명령어)

치게되면 일종의 메모장이 하나 열리게 된다.






# 이때 i 키를 눌러서 insert 모드로 변경한 뒤 값을 수정하자.






#위와같이 INSERT 모드에서 안의 내용을 전부 지우고






# 이와 동일하게 입력해준다.

* 4번째 오타 수정 -> NM_CONTROLLED=no 라고 입력해야함






#위와같이 입력후 esc 키를 눌러 INSERT모드를 빠져나온다.






#그다음 :wq 를 눌러서 설정을 저장한 뒤 명령프롬프트창으로 빠져나오자.






#> service network restart

명령어 입력 후 엔터.






# 여기까지 왔으면 설정이 완료된 것이다.

만약 설정이 잘못되어 위와같은 결과가 나오지 않았다면 Snapshot을 이용해

지난번에 해둔 설정으로 백업 후 다시 진행하길 권장한다.






#> ifconfig

입력 후 엔터. ifconfig는 시스템의 IP주소를 확인하는 명령어 정도로만 알고있자.

이렇게 명령어를 입력한 결과에서 eth0 부분의 inet addr 이 100.100.100.110 으로 잘 나타난다면

위의 설정이 성공적으로 적용된 것이다.

지금까지 한 작업은 ifconfig를 입력하여 IP주소를 가상머신에게 할당해주는 작업을 한 것이다.

즉, 이 localhost에 접속할 때엔 100.100.100.110 의 IP를 사용해아 한다고 지정해 준 것.







# 다음으로 Xshell5 를 실행시키자.

Xshell5를 실행시키면 세션이라는 창이 뜨는데 좌측 상단 새로만들기 를 눌러준다.






# 위와같이 아까 우리가 설정한 값을 적어준 뒤 확인을 눌러준다.

확인을 눌러준 다음 우리가 설정한 세션값을 더블클릭 해주면






# SSH보안 경고가 뜨는데 이때 수락 및 저장을 눌러준다.






# 이후 사용자이름에 root, 기존에 설정한 패스워드 입력 후 확인 눌러주면






# 위와같이 Xshell 과 리눅스의 프롬프트가 동일해지게 된다.

여기까지 됐으면 원격접속 환경이 잘 설정된것이다.






그렇다면 SSH란?


SSH

 - 원격지에 위치한 컴퓨터에 안전하게 로그인하여 명령어를 실행할 수 있는 환경을 제공하는 프로그램.

SSH라는 프로그램은 CentOS에 내장되어있으며, 부팅시 자동으로 동작하게끔 되어있다.






# 우리가 굳이 서버를 관리하고자 서버실을 찾아갈 필요가 없게끔 하도록

원격접속 할 수 있는 환경을 만들어 준 것이다.

따라서 Xshell에서 명령을 하면 Localhost에게 모두 전달이 된다는 의미.






앞으로 실습을 진행하기위한 디폴트 셋팅은

1. VMware Workstation

2. Localhost Power on(CentOS)

3. Xshell

4. 접속시도

위의 순서로 진행 해 주면 된다.






# 리눅스의 구조

이것은 사실 대부분의 운영체제가 위와같이 구성이 되어있다. 

사용자가 커널을 다룰 수 있게끔 해주는 환경이  쉘 에 해당.

쉘과의 커뮤니케이션을 통해 시스템의 모든 차원을 통제, 관리 가능케 함.

쉘을 통해 받아온 사용자의 요청을 커널이 하드웨어에 전달 하는 구조.

따라서 쉘은 '명령어 해석기' 라고 불리우며 사용자의 내용을 커널에 전달하는 역할.

커널은 시스템 소프트웨어이고, 이 커널에 접근하려면 쉘을 통해야 한다.






# 위와같이 우리가 리눅스 상에서 가시적으로 볼 수 있는 화면들이 모두 쉘에 해당.






Bash (Bourne Again Shell)

 - 본쉘을 개량하여 만들었다.

 - 다양한 리눅스 배포판에서 기본 쉘로 채택하여 사용하고 있다.

 - 그 외의 쉘은 거의 사용하지 않는다.





[root@localhost ~]# 

- 프롬프트 라고 부름

- root, @, localhost, ~, # 총 5가지 필드로 구성되어있다.

- root : 계정명 - 현재 로그인한 계정명이 위치하는 곳

- @ : 구분자 - 계정명과 호스트네임을 구별하기위함

- localhost : 호스트네임 - 접속한 서버의 이름이 위치하는 곳

- ~ : 디렉토리 경로 - 현재 위치한 경로의 마지막 디렉토리 명이 출력되는 곳

- # : 현재 로그인 한 계정이 root 이면 # 을 표시, 그 외 모든 계정은 $ 를 표시한다.


따라서 예시로 다른 프롬프트를 해석해보자면


[KOREA@KOR-A bin]$ 

- KOR-A 호스트네임을 가진 컴퓨터에 KOREA라는 계정으로 로그인하여 현재 bin 경로에 위치해 있다 고 할 수 있다.
- 이렇게 자연스럽게 인식을 할 줄 알아야함.





Login & Logout

 - Login : 파일 및 디렉토리에 대해 접근 및 사용 권한을 얻어 시스템을 사용할 수 있게 되는 과정
 - Logout : Ctrl + D (logout), 명령어는 #exit, #logout 사용 가능


'SYSTEM > LINUX' 카테고리의 다른 글

6) Basic Command2  (0) 2018.02.15
5) Basic Command1  (0) 2018.02.14
4) Bash Shell  (0) 2018.02.12
2) 리눅스 설치 / 실습환경 구축  (0) 2018.02.09
1) 리눅스란?  (0) 2018.02.09
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함