728x90

** 디스크 증설 작업 후 pv, vg, lv 생성시에 unknown partition table 메시지 발생

-> 해당 디바이스에 파티션 구성이 되어 있지 않아서 create 명령어 수행시마다 뜨는 메시지

(LVM 환경에서 파티션 구성시는 안해도 관계 없음)

# parted /dev/sdb
(parted) print
(parted) mklabel msdos
(parted) quit

 

방안2) /dev/sdb1을 생성을 통한 조치 방법

✅2TB 이상의 스토리지를 사용할 때는 MBR 방식(msdos) 대신 GPT 방식을 사용해야함

*기본적으로 linux partition은 MBR(Master boot Record) 방식이다. 그런데 이 MBR의 파티션당 최대 크기는 2TB이다.

 따라서 18EB(엑사바이트)까지 파티션 크기를 잡을 수 있는 GPT(GUID partition Table) 방식을 써야한다.

[조치결과]

[root@hostname ~]# lsblk
NAME           MAJ:MIN RM     SIZE   RO TYPE MOUNTPOINT
sda                   8:0       0   557.8G   0   disk
⊢sda1               8:1       0         1G   0   part  /boot
⨽sda2               8:2       0       16G   0   part  [SWAP]
⨽sda3               8:3       0   540.8G   0    part
  ⊢rootvg-rootlv 253:0     0      50G    0    lvm  /
...
sdb                  8:16      0     12.2T   0    disk
⨽sdb1              8:17      0      12.2T   0    part

[조치방안]

parted /dev/sdb
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model : FTS PRAID EP420i (scsi)
Disk /dev/sdb: 13.4TB
Sector size (logical/physical): 512B/4096B
Partition Table : gpt
Disk Flags:

Number   Start   End     Size   File system   Name   Flags

(parted) mklabel gpt
(parted) print
(parted) mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance
Ignore/Cancel? Ignore
(parted) print
Model : FTS PRAID EP420i (scsi)
Disk /dev/sdb: 13.4TB
Sector size (logical/physical): 512B/4096B
Partition Table : gpt
Disk Flags:

Number   Start   End     Size   File system   Name   Flags
1          17.4KB 13.4TB 13.4TB                  primary
(parted) quit
lsblk

 

** 참고사항

What causes "unknown partition table" events and how can I prevent them from being logged ? - Red Hat Customer Portal

 

What causes "unknown partition table" events and how can I prevent them from being logged ? - Red Hat Customer Portal

A large number of "unknown partition table" events are constantly being logged in /var/log/messages file: Jul 7 15:01:21 hostname kernel: sdel: unknown partition table Jul 7 15:01:21 hostname kernel: sdaq: unknown partition table Jul 7 15:01:21 hostname ke

access.redhat.com

 

728x90
728x90

#route 혹은 #netstat -rn 등을 통해 라우팅 테이블을 확인할 수 있다.

 

Kernel IP routing table

DestinationGatewayGenmaskFlagsMSSWindowirttIface
0.0.0.0200.50.100.2510.0.0.0UG000bond1
165.254.0.00.0.0.0255.255.0.0U000bond0
165.254.0.00.0.0.0255.255.0.0U000bond1
200.50.100.2240.0.0.0255.255.255.224U000bond1

[임시 추가 : 시스템 재부팅하면 원상복구됨]

#route add -net 172.26.109.0 netmask 255.255.255.0 gw 172.16.239.240 dev bond0

#route add -net 172.26.110.0 netmask 255.255.255.0 gw 172.16.239.240 dev bond0

 

[영구 추가 : 시스템 재부팅해도 원상복구안됨]

#vi /etc/sysconfig/network-scripts/route-bond0

####Service 1

ADDRESS1=172.26.109.0

NETMASK1=255.255.255.0

GATEWAY1=172.16.239.240

####Service 2

ADDRESS2=172.26.110.0

NETMASK2=255.255.255.0

GATEWAY2=172.16.239.240

DestinationGatewayGenmaskFlagsMSSWindowirttIface
0.0.0.0200.50.100.2510.0.0.0UG000bond1
165.254.0.00.0.0.0255.255.0.0U000bond0
165.254.0.00.0.0.0255.255.0.0U000bond1
172.26.109.0172.16.239.240255.255.255.0UG000bond0
172.26.110.0172.16.239.240255.255.255.0UG000bond0
200.50.100.2240.0.0.0255.255.255.224U000bond1

 

라우팅 테이블은 위의 첫번째 행부터 순차적으로 처리할 패킷을 보낼 수 있는지를 확인한다.

보낸 데이터의 목적지 IP 주소와 Genmask(Subnetmask)과의 AND 연산을 통해 그 결과가 해당 행의 Destination과 동일할 경우에 해당행의 Iface에 있는 인터페이스로 해당 패킷을 전송한다.

728x90

'IT > Linux | AIX' 카테고리의 다른 글

cpufreq governor 옵션 변경 2  (0) 2021.02.04
cpufreq governor 옵션 변경  (0) 2021.01.18
amCLI 명령어_레이드_Fujitsu  (0) 2020.09.20
NFS export & mount  (0) 2020.09.16
nologin 계정  (0) 2020.09.15
728x90

1. 파일 접근 통제

- 리눅스 파일 시스템 FHS

리눅스 파일 시스템, FHS(Filesystem Hierarchy Standard)

'bin'은 모든 사용자가 사용하는 필수 명령어가 들어있다.

'boot'는 부팅에 필요한 모든 파일이 들어있다.

'etc'는 시스템 구성에 필요한 구성 파일이 들어있다. 시스템 관리자들은 해당 폴더를 1순위로 백업해야한다.

'home'은 사용자, 프로젝트 데이터를 보관한다.

'media''mnt'에 mount를 자주한다.

'root'는 root 사용자 데이터를 보관한다. 물론 root로 로그인할 때만 접근 가능하다.

'sbin'은 시스템 관리 및 설정 명령어가 들어있다. 해당 디렉토리도 root 권한이 필요하다.

'usr'은 Unix System Resources의 약자로, 공유가능하고 읽기전용 파일을 저장한다.

 

* 체크 포인트

1. '/''/root'는 완전히 다르다.

2. Binary 디렉토리들의 차이점

'bin' : 모든 사용자가 사용하는 필수 명령어(cat, ls, cp 등)가 저장되어 있는 디렉토리.

'sbin' : 필수 시스템 바이너리(init, ip, route 등), 주로 시스템 관리자용 명령어가 저장되어 있는 디렉토리.

'usr/bin' : 모든 사용자의 중요하지 않은(단일 사용자 모드에서 필요하지 않은) 명령어 바이너리(sudo, vi 등)

 

 

- 소유자, 그룹 멤버 및 모든 사용자

/etc/passwd : 사용자 정보

/etc/group : 그룹 정보

/etc/shadow : 비밀번호 정보

 

 

- 표준 Linux / Unix 파일 사용 권한 (File Permissions)

User(rwx) / Group(rwx) / Others(rwx)

permission On a file On a directory
r(read) read file contents (cat) read directory contents (ls)
w(write) change file contents (vi) create files in (touch)
x(execute) execute the file enter the directory (cd)

* 리눅스 파일 권한 코드는 권한(2진수)을 10진수로 변환하여 읽으면 된다.

예를 들어 permission이 '---'일 때는 000(2)이기 때문에 0이라고 읽으면 된다. permission이 '-w-'일 때는 010(2)이기 때문에 2라고 읽으면 된다. 그래서 만약에 'drwxrwxr-x'라면 775라고 읽으면 된다.

 

 

- 실행순서

1순위. Alias
2순위. Built - in
3순위. Function
4순위. File (path 순서 앞부터)

* 'ls -l'과 'll'은 어떻게 다른가?

'll'이라는 명령어는 기본적으로 존재하지 않는다. 사용자 편의를 위해 'ls -l'을 Alias 기능을 이용하여 등록해둔 명령어이다. 만약 파일을 삭제할 때 실수를 많이한다면, 'rm -i'를 'rm'으로 Alias해둔다면 실수를 줄일 수 있다.

alias rm = "rm -i"		#alias 기능 추가
which rm			#명령어의 경로 확인. 방금 alias 추가한 것도 추가되었을 것이다.
rm test				#test 파일을 제거, rm -i로 실행된다. 

unalias rm			#alias 기능 해제

 

 

- 파일 사용 권한 변경

'chmod (1)234 파일명'으로 변경 가능하다.

 

- 리눅스 파일 사용 권한 기본 설정

파일이나 디렉토리가 생성될 때에 기본으로 주어지는 사용 권한을 제어하기 위해서는 'umask'를 사용한다.

'umask 0022'와 같은 명령어로 파일 사용 권한 기본 설정이 가능하다.

 

- 파일 소유자 변경

sudo chown owner[:group] file

'sudo chown linux: file1'와 같은 명령어로 파일 소유자 변경이 가능하다.

 


 

2. 프로세스 제어

Linux 프로세스 상태 천이

1 Core라면 Running도 1개이다.

4 Core라면 Running은 최대 4개이다.

 

* 체크 포인트

program 파일 시스템에 존재하는 실행 파일이다.
process 프로그램을 실행시키는 실행 주체, 인스턴스이다. 프로그램은 하나이지만, 그 프로그램을 실행하는 인스턴스는 여러 개가 생성될 수 있다.

 

프로세스 상태를 보기 위해서는

'ps -ef'를 사용한다.

 

- 프로세스에 신호(signal) 보내기

kill [-signal] pid

signal을 받는 것을 거부할 수 있는데, 9번(SIGKILL)은 어떤 프로세스도 거부할 수 없다.

 -> 잘 만들어진 프로그램이라면 15번(SIGTERM)을 보낼 것이다.

 


 

3. 문자열 검색

grep 명령어를 통해 문자열 검색할 수 있다.

정규식 표현(Regular Expression)을 함께 사용한다면 보다 정밀한 문자열 검색이 가능하다.

Meta character 의미
^ 라인의 맨 처음
$ 라인의 맨 끝
* 요소를 0번 또는 수차례 매칭시킴
+ 요소를 1번 또는 수차례 매칭시킴
? 선행하는 요소를 0번 또는 1번 매칭시킴
[a-z] 문자 또는 숫자 그룹 중의 하나를 정의, 꺽은 괄호 안에 대문자, 소문자, 숫자를 배치 또는 범위 지정
() 문자나 문자열 그룹을 구성. 그룹에 *, +, ?를 포함할 수 있음
{} 요소가 특정 횟수를 반복하는 경우 매칭
\ 탈출 문자
. 정확하게 한 글자. 실제로 dot(.)을 표시하고자 하는 경우에는 '\.'으로 표시

 

 

- 확장(extended) 정규식 표현 문자열 검색(egrep)

(Alternation(교대) : '|', '+', '?'), (Quantifiers(한정기호) : '{}') 등을 이용한 정밀한 검색이 가능하다.

egrep '^(bz|gz|zip)' binlist.txt

 


 

4. 파일 검색

find 명령어를 통해 시스템 내에 존재하는 파일(일반파일, 디렉터리, 특수파일)들 중에서 사용자가 원하는 파일을 찾을 때 사용 가능하다.

 

xargs 사용하면 파일 검색 결과에 대해 사용자가 정의한 action 실행 효율을 높일 수 있다.

find ~ -type f -name 'file*' -print | xargs ls -l

728x90

'IT > Linux | AIX' 카테고리의 다른 글

Linux 라우팅 테이블  (0) 2021.01.12
amCLI 명령어_레이드_Fujitsu  (0) 2020.09.20
NFS export & mount  (0) 2020.09.16
nologin 계정  (0) 2020.09.15
rsync 복제  (3) 2020.09.15

+ Recent posts