가상머신에서 CentOS 7 의 콘솔 글자 크기 늘리기.

 

기존 방법대로는 무슨 짓을 해도 가상머신 환경에서는 80×25 터미널의 설정이 불가능해서 보기가 너무 힘들었습니다.

그래서 SecureCRT나 Putty 등의 터미널 프로그램으로 접속하는 방법을 썼으나, 콘솔에서만 작업해야 할 경우도 있으므로 좀 더 설정을 해봤습니다.

/etc/default/grub

를 편집합니다.

GRUB_CMDLINE_LINUX

라고 쓰여진 줄을 찾습니다.

vconsole.font=latarcyrheb-sun16

을 찾아서 제일 마지막의 16을 32로 바꿉니다.

vconsole.font=latarcyrheb-sun32

일단 이렇게 하면 폰트 크기는 두 배로 커집니다.

 

 

vga=795

를 추가합니다.

795는 1280*1024*32의 해상도를 뜻합니다.

자신의 host OS의 해상도와 일치하게 설정하면 guest OS인 CentOS 7도 전체화면을 사용하게 됩니다.

제 경우 파라미터는 이렇게 생겼습니다.

GRUB_CMDLINE_LINUX="crashkernel=auto  vconsole.font=latarcyrheb-sun32 vga=795 vconsole.keymap=us rhgb quiet net.ifnames=0 biosdevname=0 ipv6.disable=1"

 

파일을 저장한 뒤에

grub2-mkconfig -o /boot/grub2/grub.cfg

를 실행하여 다음 재부팅 때부터 적용되게 합니다.

재부팅 하기 전에 일시적으로 적용하려면

setfont latarcyrheb-sun32 

를 실행합니다.

 

vga= 뒤에 쓸 해상도 관련 숫자는 아래와 같습니다.

테이블 출처
http://www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution/

 

Depth 800×600 1024×768 1152×864 1280×1024 1600×1200
8 bit vga=771 vga=773 vga=353 vga=775 vga=796
16 bit vga=788 vga=791 vga=355 vga=794 vga=798
24 bit vga=789 vga=792   vga=795

vga=799

 

 

Linux CLI 용 계산기 bc 를 이용한 진수 변환

bc 를 입력하여 게산기를 시작합니다.

scale=10

으로 소수점 아래 10자리까지 출력하도록 합니다.

10진수를 16진수로 바꾸기.

ibase=10
obase=16

ibase 로 입력되는 형식, obase 로 출력되는 형식을 지정합니다.

즉 입력은 10진수, 출력은 16진수로 지정한 것입니다.

 

16진수를 10진수로 바꾸기

ibase=16
obase=10

 

 

 

Linux 에서 파일 시스템의 UUID 알아내기

blkid 를 실행해서 장치이름, UUID, 파일 시스템 종류, 레이블을 알 수 있습니다.

 

blkid

출력 예제는 아래와 같습니다.

/dev/sda1: UUID="e4b0253d-3d64-45c7-8232-40ac334949af" TYPE="ext4" LABEL="PHOTO"
/dev/sdb1: UUID="87e7b119-99d7-458b-b3bd-187508b6a796" TYPE="ext4"
/dev/sdb2: UUID="229813ce-ba50-43b1-921b-d588ce549278" TYPE="swap"

find 파일, 디렉토리 찾기 중요 옵션 정리

옵션 설명 사용 방법 예제
-type d 디렉토리 (폴더) 만 검색
-type f 파일만 검색
-inum inode 번호로 검색
-printf “%f\n” path (경로) 를 제외한 최종 이름만 출력
-atime Access Time.
열 때 변경됨.
grep, sort, cat, head, tail 등으로 파일에 접근할 때 변경됨.
-ctime Change Time.
owner, permission 등을 변경할 때 갱신됨.
다른 파일시스템으로 옮길 때 갱신됨
수정시에도 변경됨.
-mtime Modify Time.
저장하거나 내용이 수정될 때 갱신됨.
대부분의 경우 ctime과 동일한 값을 가지지만, 속성만 변경하는 경우에는 ctime만 변경됨.
find ./ -type f -mtime +31
mtime 이 31일 보다 오래된 파일을 검색find ./ -type f -mtime -31
mtime 이 31일이 안 된 파일을 검색
-name 이름으로 검색 find ./ -type f -name ‘*computer*’
현재 디렉토리부터 이름에 소문자 computer 가 들어간 파일만 검색
-iname 대소문자를 구분하지 않은 이름으로 검색 find ./ -type f -iname ‘*computer*’
현재 디렉토리부터 이름에 대소문자를 구분하지 않고 computer 가 들어간 파일만 검색
-perm 퍼미션으로 검색 find ./ -type d -perm -0002
누구나 쓰기 가능한 디렉토리를 검색find ./ -type f -perm -4000
setuid 가 설정된 파일을 검색

find ./ -type f -perm -2000
setgid 가 설정된 파일을 검색

find ./ -type f -perm -1000
sticky bit 가 설정된 파일을 검색

Linux의 Shell 에서 쓸만한 계산기

Shell에서 간단하게 쓸 수 있는 계산기로 bc가 있습니다.

아마 대부분의 시스템에 기본으로 설치가 되어 있을 것입니다.

bc 라고 입력하여 실행시키신 뒤에

1/3

을 입력하면 0 이라는 결과가 나옵니다.

기본 상태로는 나누기 계산을 할 때 소숫점 아래 결과가 나오질 않아 좀 당황스럽습니다.

아마 대부분의 경우 이런 결과는 원하지 않을 것입니다.

이 문제를 해결하려면 scale을 이용하여 원하는 소수점 아래 자리수를 정해주시면 됩니다.

예를들어

소숫점 아래 10자리 까지의 결과를 원하신다면

scale=10

이라고 입력합니다.

bc를 처음 시작할 때 기본값은 scale=0 입니다.

다시 1/3  을 해보면

.3333333333

원하는 결과가 나왔습니다.

Linux 콘솔 글자 크게 보기

요즘은 거의 Grub를 쓸테니 처음 커널 선택화면에서 부팅하고자하는 커널을 선택한 뒤에 Tab키를 눌러서 부트 파라메터 편집 모드로 들어갑니다.

부트 로더 (Boot Loader)에 따라 커널 파라메터 편집 키가 틀릴 수 있습니다.

대부분의 경우 화면을 보시면 어떤 키를 누르면 파라메터 편집 모드로 들어가는지 써 있습니다.

보통 tab, a, e 키가운데 하나일 것입니다.

기존에 입력되어있는 것의 제일 뒤에 한 칸 띄운다음 nomodeset 을 입력합니다.

그럼 console 모드의 글자가 가장 큰 상태로 보이게 될것입니다.

 

 

 

하드 디스크 드라이브의 모델명, 시리얼 번호, 펌웨어 리비전, 섹터 크기 알아내기

hdparm 을 이용하면 HDD의 대한 정보를 알아내거나 설정 할 수 있습니다.

hdparm -I 장치명 으로 사용하면 됩니다.

-I는 알파벳 대문자 I 입니다. 소문자로해도 비슷한 정보가 나오지만 보기가 좀 불편합니다.

예를들어 hdparm -I /dev/sda 를 실행한 출력결과는 아래와 같습니다.

/dev/sda:

ATA device, with non-removable media
Model Number:       ST3500320AS
Serial Number:      5QM2STWM
Firmware Revision:  SD1A
Transport:          Serial

Logical/Physical Sector size:           512 bytes
device size with M = 1024*1024:      476938 MBytes
device size with M = 1000*1000:      500106 MBytes (500 GB)

이 HDD는 도대체 어디에 연결된 것일까?

Linux에서 SATA/SCSI 하드 디스크 드라이브들은, 포트가 불량이거나 HDD 가 제대로 연결이 안됐을 경우, 하드 디스크가 할당받는 장치명이 바뀌기 때문에 뜯어보기 전에는 정확히 어떤 포트(Port)에 연결됐는지 알기가 쉽지 않습니다.

경험상 아무 HDD나 빼도되는 구성이 아닐 경우에는 컴퓨터를 끄고 작업하는것이 여러 사고를 예방 할 수 있습니다.

Hot Swap 베이가 있어도 구성에 따라 엉뚱한 디스크를 빼버리게되면 큰 문제를 일으킬 수도 있습니다.

이럴 때 쓸 수 있는 방법을 몇 가지 적어보고자 합니다.

  • hdparm 을 이용한 방법

hdparm -I 장치명

예를들면 hdparm -I /dev/sda

명령으로 빼야할 하드 디스크의 모델명과 시리얼 번호를 확인 합니다.

하드 디스크를 빼낸 다음 하드 디스크에 인쇄되어있는 모델명과 시리얼 번호가 빼고자했던 것이 맞는지 확인합니다.

위의 -I 의 I는 알파벳 대문자 I 입니다.

  • dd 를 이용한 방법

dd if=장치명 of=/dev/null

예를 들면

dd if=/dev/sda of=/dev/null

명령으로 빼고자 하는 하드 디스크를 계속 읽어서 핫스왑(Hot Swap) 베이 등의 LED가 계속 켜져있는 것을 찾아서 뺍니다.

  • lsscsi 를 사용하는 방법

lsscsi 명령을 실행합니다.

lsscsi

[0:0:0:0]    disk    ATA      ST3500320AS      SD1A  /dev/sda
[1:0:0:0]    disk    ATA      ST3500320AS      SD1A  /dev/sdb
[2:0:0:0]    disk    ATA      ST3500320AS      SD1A  /dev/sdc
[4:0:0:0]    disk    ATA      ST3500320AS      SD1A  /dev/sdd
[5:0:0:0]    disk    ATA      ST3500320AS      SD1A  /dev/sde

위와 비슷한 출력 결과가 나올 것입니다.

시리얼 번호는 보이지 않기 때문에 hdparm -I 장치명으로 시리얼 번호를 확인하면 좋을것입니다.

숫자 네 개는 Host: Channel: ID: LUN: 의 순서입니다.

같은 컨트롤러에서 나온 포트들이라면 위와같이 순차적인 번호로 보일 것이니 메인보드나 컨트롤러에 적혀있는 포트번호와 비교하면 대략적인 위치를 참조할 수 있을 것입니다.

lsscsi 가 없다면

cat /proc/scsi/scsi 명령을 사용하셔도 됩니다면 보기는 좀 불편합니다.