티스토리 뷰

IoT 과정

GRUB 관련

gaelim 2017. 7. 18. 15:09
반응형

GRUB이 메모리에 커널을 올리기 까지...

#부팅시 e눌러줌.

그다음 linux6 ... 되있는 곳에 끝에 가서 공백하나주고 rd.break 라고 넣어준다. 이렇게 쓰고나서 ctrl+x 로 현재 설정으로 부팅해준다.
그러면 싱글유저모드 보다 더 전인 모드로 부팅이된다. systemd 가 올라오기도 전이다. 메모리에 커널만 올려놓은 상태이다. ramfs 모드에서 루트 시스템 파일 모드로 넘어가기전에 멈춘 상태이다.

mount 명령어로 맨 끝줄에 확인해보면

/dev/mapper/cl-root on /sysroot type xfs (ro, ... , ) 가 보인다.

ro는 read only이므로 read and write로 바꿔주자..

mount -o rw,remount /sysroot

그다음.

chroot /sysroot

이 상태에서 관리자(root) 패스워드 변경할 수 있다.

passswd root

그 뒤 다음의 명령어를 수행하고. .autorelabel 파일이 잇는지 확인한다. 없으면 생성

ls -a /

touch /.autorelabel

그 뒤  재부팅하자. reboot은 안되고, exit 두번을 수행한다. autorelabel이 수행되기 떄문에 재부팅이 느리다.

exit

exit


다시 로그인하면 비밀번호가 잘 적용 되었는지 확인하자.


GRUB 모듈 추가 제거

rd.break 구문은 단 한번 수행될 때 커널에 로드되고 해제된다. 비밀번호를 확인하기 위해 재부팅했을 때 interrupt 되지 않았음을 기억하자. 매번 커널이 메모리에 로드될 때 옵션을 줄 수 있다. 그러기 위해 다음 파일을 확인한다.

# vi /etc/default/grub
...
GRUB_CMDLINE_LINUX=" ... " 이곳에서 기능을 추가해주면된다. ipv6 모듈을 부팅시 메모리에 로드되지 않게 해보자. quoting안에 ipv6.disable=1 을 써보자.
GRUB_CMDLINE_LINUX=" ... ipv6.disable=1"

그뒤 다음 명령어를 수행하여 grub이 참고할 수 있게 컴파일하여 /boot디렉토리로 넘겨주자. 참고로 grub은 오직 /boot 디렉토리만 참조하여 커널을 메모리에 로드한다.

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

그다음 리부트 해보자.

잘 적용되었는지 /proc/cmdline 에 저장된 것을 확인하면 된다. 또는 명령어 ip addr로 확인하자. ipv6 관련 모듈이 부팅시 메모리에 로드 되지 않은 것을 알수있다.

# cat /proc/cmdline

# ip addr


GRUB2 암호 설정하기

//누구든지 관리자 비밀번호를 설정할 수 있는 보안 이슈

반응형

'IoT 과정' 카테고리의 다른 글

LOCAL STORAGE ADMINISTRATION // 로컬 디스크 관리  (0) 2017.07.19
SOFTWARE MAINTENANCE  (0) 2017.07.18
SYSTEMD OVERVIEW  (0) 2017.07.18
커널 옵션 적응하기, 드라이버 편집하기 등 task  (0) 2017.07.17
LINUX KERNEL & DEVICES  (0) 2017.07.17