ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • GRUB 관련
    IoT 과정 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
    GRUB 관련  (0) 2017.07.18
    SYSTEMD OVERVIEW  (0) 2017.07.18
    커널 옵션 적응하기, 드라이버 편집하기 등 task  (0) 2017.07.17
    LINUX KERNEL & DEVICES  (0) 2017.07.17

    댓글 0

Designed by Tistory.