[Linux] /usr/bin, hosts, hostname, network-scripts

gununoo·2022년 7월 18일
1

Linux

목록 보기
1/10
post-thumbnail

linux
-> centos7(가상화, openstack)
-> ubuntu 18.04/20.04(docker/k8s)

리눅스 기본
리눅스의 파일 시스템은 트리 형태를 갖는다.
최상단: /(루트 파일 시스템)
root, etc, home, var, usr, ...
root -> root 사용자(super user) 홈 디렉토리
home -> 일반 사용자들의 홈 디렉토리가 있는 공간
etc -> 구성 파일들이 존재하는 디렉토리
var -> 시스템 내에서 실시간으로 만들어지는 log와 같은 파일들이 담긴다.
usr -> 주로 실행 파일들이 존재한다(명령어들) ex) /usr/bin/zip
boot -> 부팅을 위한 커널이 존재하는 공간

기본적으로 알아두어야 할 파일:

1. /etc/hosts

pc나 서버는 도메인 이름을 입력했을 경우
1) 캐시를 검색
2) /etc/hosts 파일 검색
3) DNS 서버에게 query 한다.

2. /etc/hostname

DataCenter에서는 /etc/hostname에 DataCenter 내의 서버들의 이름과 IP를 등록해둔다.

/usr/bin

vim hello

#!/bin/bash 

echo "hello all"

chmod +x hello
./hello

/bin/bash hello

mv hello /user/bin
hello
-> 이제 hello는 실행파일이 되어서 명령어가 되었음

/etc/hosts

vim /etc/hosts

211.183.3.1 myhome

한 줄 추가

ping -c 3 myhome

/etc/hostname

hostnamectl set-hostname [변경할 이름]

hostnamectl set-hostname websrv 

-> 파일 수정

cat /etc/hostname

-> websrv로 파일 내용이 변경되었음

su

-> root로 재로그인
-> hostname이 바뀌었음

DataCenter에서는 /etc/hostname에 DataCenter 내의 서버들의 이름과 IP를 등록해둔다.
하지만 서버가 너무 많다면 DataCenter 내에 사설 DNS를 구축하여 사용할 수 있다.

/etc/sysconfig/network-scripts/

cd /etc/sysconfig/network-scripts/
vim ifcfg-ens32
IPADDR을 .200 -> .201로 변경

ifconfig ens32
-> 아직 바뀌지 않았음

systemctl restart network
-> 네트워크 재시작
-> ip주소 변경이 반영되어서 ssh 연결 끊어졌음

ifconfig ens32
-> ip 주소 변경되었음

GUI 환경에서 애플리케이션을 이용한 IP 변경, wireless 연결 등은 NetworkManager를 이용한다.
만약 파일을 직접 변경하면 적용은 바로 되지 않는다. 반드시 서비스를 갱신시켜주어야 한다.
따라서 서비스를 갱신하기 전까지는 원격 연결 시 네트워크 연결이 끊어지지 않는다.

파일 변경 후에는 서비스를 갱신하면 서비스가 설정 파일을 읽어들이고 이를 서비스 환경에 반영한다.

cd(change directory)

cd를 이용하여 경로 이동하기: 리눅스는 트리 형태이므로 다른 디렉토리로 직접 이동하는 것은 불가능하다. 반드시 트리를 따라 이동해야 한다.

절대 경로: 일반적으로 / (루트 파일 시스템)부터 시작하여 최종 목적지까지의 디렉토리를 순차적으로 작성한다. 현재 사용자의 위치와 관계 없이 어느 곳에서든 동일한 경로로 이동할 수 있다.
상대 경로: 주로 . 과 .. 을 이용하여 경로를 작성한다. 현재 사용자의 위치에 따라 이동하는 경로가 달라진다.

내일 배울 내용: 사용자, 파일 관리, 디렉토리 관리

profile
take a look

0개의 댓글