반응형
-tags : #yocto
1 hwclock 패키지변경하기
busybox 의 hwclock 패키지를 linux-util 의 패키지로 변경한 작업내용을 기록한다.
2 증상
busybox 내에도 hwclock 이라는 명령어가 있다.
- hwclock 명령어는 hw rtc 칩에 시간을 설정, 읽기등의 동작을 하게된다.
- busybox 내의 해당명령어의 help 를 쳐보면 옵션이 거의 없다.
- rtc 를 원하는 시간에 세팅하는
--set
옵션을 지원하지 않아 원래 리눅스의 패키지로 변경해야한다.
hwclock --help
BusyBox v1.27.2 (2021-06-02 02:49:02 UTC) multi-call binary.
Usage: hwclock [-r|--show] [-s|--hctosys] [-w|--systohc] [-t|--systz] [-l|--localtime] [-u|--utc] [-f|--rtc FILE]
3 util-linux 패키지
우리가 일반적으로 사용하는 명령어들은 거의다 util-linux
패키지들 이다.
/sources/poky/meta/recipes-core/util-linux
경로에 레시피가 있다.
3.1 각종 포함되어야할 패키지 명세
util-linux.inc
파일의 PACKAGES
에 포함될 패지가 명시 되어있다.
PACKAGES =+ "util-linux-agetty util-linux-fdisk util-linux-cfdisk util-linux-sfdisk \
util-linux-swaponoff util-linux-losetup util-linux-umount \
util-linux-mount util-linux-readprofile util-linux-uuidd \
util-linux-uuidgen util-linux-lscpu util-linux-fsck.cramfs util-linux-fsck \
util-linux-blkid util-linux-mkfs util-linux-mcookie util-linux-rfkill \
util-linux-lsblk util-linux-mkfs.cramfs util-linux-fstrim \
util-linux-partx util-linux-hwclock util-linux-mountpoint \
util-linux-findfs util-linux-getopt util-linux-sulogin util-linux-prlimit \
util-linux-ionice util-linux-switch-root"
- 해당 부분에서 hwlock 을 포함 하겠다고 명시 한다.
하지만... 실제 hwclock 명령어는 busybox 의 것을 써야하므로 충돌이 일어난다. 때문에 do_install
에서 다음과 같이 패키지를 바꾸도록 명시해놓고있다.
ALTERNATIVE_util-linux-hwclock = "hwclock"
ALTERNATIVE_LINK_NAME[hwclock] = "${base_sbindir}/hwclock"
4 패키지 바꾸기
패키지를 바꾸는 ALTERNATIVE
변수를 다음과같이 조정한다.
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
ALTERNATIVE_util-linux-hwclock = ""
ALTERNATIVE_LINK_NAME[hwclock] = ""
- 위와 설정하여
hwclock
를 util-linux 의 것을 그대로 사용하도록 설정
busybox 내의 hwclock
을 다음과같이 삭제
# hwclock : using util-linux
CONFIG_HWCLOCK=n
FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
# Prevent splitting busybox applets in two binaries (*.suid and *.nosuid)
SRC_URI += " \
file://ksc-board.cfg \
"
# disable FTPD - as it's provided by inetutils
작업 성공
5 hwclock help 명령어
hwclock 명령어 테스트 결과
root@s32v234evb:~# hwclock --help
Usage:
hwclock [function] [option...]
Time clocks utility.
Functions:
-r, --show display the RTC time
--get display drift corrected RTC time
--set set the RTC according to --date
-s, --hctosys set the system time from the RTC
-w, --systohc set the RTC from the system time
--systz send timescale configurations to the kernel
-a, --adjust adjust the RTC to account for systematic drift
--predict predict the drifted RTC time according to --date
Options:
-u, --utc the RTC timescale is UTC
-l, --localtime the RTC timescale is Local
-f, --rtc <file> use an alternate file to /dev/rtc0
--directisa use the ISA bus instead of /dev/rtc0 access
--date <time> date/time input for --set and --predict
--update-drift update the RTC drift factor
--noadjfile do not use /etc/adjtime
--adjfile <file> use an alternate file to /etc/adjtime
--test dry run; implies --verbose
-v, --verbose display more details
-h, --help display this help
-V, --version display version
For more details see hwclock(8).
...
- 본 포스팅은 obsidian 으로 작성하였으며, tistory-posting-cli 를 이용해 발행되었습니다.
반응형