Collectd: collectd-5.9.2의 μ†ŒμŠ€ νŒ¨ν‚€μ§€λŠ” 곡식 μ ˆμ°¨μ— μ˜ν•΄ μƒμ„±λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2019λ…„ 10μ›” 03일  Β·  16μ½”λ©˜νŠΈ  Β·  좜처: collectd/collectd

  • collectd 버전: git의 collectd-5.9.2

μ˜ˆμƒλ˜λŠ” 행동

version-gen.sh μŠ€ν¬λ¦½νŠΈλŠ” collectd-5.9.2 νƒœκ·Έμ— "5.9.2"λ₯Ό 생성해야 ν•©λ‹ˆλ‹€.

μ‹€μ œ 행동

version-gen.sh μŠ€ν¬λ¦½νŠΈλŠ” collectd-5.9.2 νƒœκ·Έμ— "5.9.1.7.gdfb9dd0"을 μƒμ„±ν•©λ‹ˆλ‹€.

μž¬ν˜„ 단계

$ git clone https://github.com/collectd/collectd.git
$ cd collectd
$ git checkout collectd-5.9.2
$ ./version-gen.sh

문제의 원인

collectd-5.9.2 νƒœκ·Έμ—λŠ” 주석이 달렀 μžˆμ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μž‘μ—…μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€ :슀마일리:
BTW μΆœμ‹œ μ ˆμ°¨μ— λŒ€ν•œ λ¬Έμ„œλ₯Ό μΆ”κ°€ν•˜λŠ” 것이 쒋은 타이밍이라고 μƒκ°ν•©λ‹ˆλ‹€...

λͺ¨λ“  16 λŒ“κΈ€

파일이 collectd.org에도 μ—…λ‘œλ“œλ˜μ§€ μ•Šμ•˜μŒμ„ μΆ”κ°€ν•  수 μžˆμŠ΅λ‹ˆλ‹€(사양 νŒŒμΌμ€ 이에 따라 닀름)

주석을 μΆ”κ°€ν•˜μ—¬ λ‘œμ»¬μ—μ„œ μˆ˜μ •ν•  수 μžˆμŒμ„ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€.

git tag -f collectd-5.9.2 -m "Tag for version 5.9.2"

이제 collectd-5.9.2 νŒ¨ν‚€μ§€ κ°€ μ–΄λ–»κ²Œ μƒμ„±λ˜μ—ˆλŠ”μ§€ κΆκΈˆν•©λ‹ˆλ‹€.

일반적으둜 Autotoolized μ†Œν”„νŠΈμ›¨μ–΄μ˜ μ†ŒμŠ€ νŒ¨ν‚€μ§€λŠ” λ‹€μŒμ„ 톡해 생성해야 ν•©λ‹ˆλ‹€.

$ make dist

κ·ΈλŸ¬λ‚˜ λ‹€μŒκ³Ό 같은 이유둜 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

  • μ—¬κΈ°μ—λŠ” autom4te.cache와 같은 가비지 파일이 ν¬ν•¨λ©λ‹ˆλ‹€.
  • collectd-5.9.2.tar.bz2의 configure μŠ€ν¬λ¦½νŠΈμ—μ„œ PACKAGE_VERSION λŠ” μ—¬μ „νžˆ '5.8.1.git'

@mrunge @octo

collectd-5.9.2.tar.bz2λŠ” bzip2 파일이 μ•„λ‹ˆλΌ 내뢀에 .tar 파일이 μžˆλŠ” .xz 파일인 것 κ°™μŠ΅λ‹ˆλ‹€. (λ”°λΌμ„œ tar bzip2 μ•„μΉ΄μ΄λΈŒ λŒ€μ‹  xz μ•„μΉ΄μ΄λΈŒ μ•ˆμ— tar μ•„μΉ΄μ΄λΈŒκ°€ μžˆμŠ΅λ‹ˆλ‹€.)

이둜 인해 μ‹€μƒν™œ μ‚¬μš©μ— 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

bzcat: /Openwrt/r7800/dl/collectd-5.9.2.tar.bz2 is not a bzip2 file.
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors

그리고 μœ„μ—μ„œ μ–ΈκΈ‰ν–ˆλ“―μ΄ νŒŒμΌμ—λŠ” λͺ‡ λ©”κ°€λ°”μ΄νŠΈμ˜ autom4te.cache 등이 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

그리고 5.9.x μ†ŒμŠ€ 릴리슀 tar 파일 μ΄ν›„μ˜ 또 λ‹€λ₯Έ 단점은 (μƒμ„±λœ) 파일 src/liboconfig/parser.cκ°€ λˆ„λ½λ˜μ–΄ buildrootμ—μ„œ κ°μ§€ν•œ 둜컬 λ“€μ†Œ μ„€μΉ˜(λ˜λŠ” 크둜슀 컴파일의 경우 호슀트 λ“€μ†Œ μ„€μΉ˜λ₯Ό κ°•μ œ μ‹€ν–‰ν•©λ‹ˆλ‹€. autobuilds, μžμ„Έν•œ λ‚΄μš©μ€ [1] μ°Έμ‘°)..., 이것은 tarball의 '버그'μΈκ°€μš” μ•„λ‹ˆλ©΄ μ˜λ„μ μΈκ°€μš”?

[1] http://lists.busybox.net/pipermail/buildroot/2019-October/261555.html

이 λͺ¨λ“  λ¬Έμ œλŠ” λ²„κ·Έμž…λ‹ˆλ‹€. 이전보닀 λ‹€λ₯Έ μ‚¬λžŒμ΄ 릴리슀 ν”„λ‘œμ„ΈμŠ€λ₯Ό μˆ˜ν–‰ν–ˆκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.
λͺ¨λ“  μž‘μ—…μ€ ν”„λ‘œμ νŠΈ "μ†Œμœ μž"의 λͺ…μ‹œμ  ν—ˆκ°€ 없이 μˆ˜ν–‰λ˜λ―€λ‘œ κ²°κ³Όκ°€ μ˜ˆμƒλ©λ‹ˆλ‹€.

이것은 정말 이상해 지기 μ‹œμž‘ν–ˆμŠ΅λ‹ˆλ‹€

였, 였. ν•œμˆ¨μ„ 쉬닀. μ°Έμ•„, λ‚˜λŠ” λ©°μΉ  λ™μ•ˆ 그물을 μž˜λžλ‹€.

이런 일이 μΌμ–΄λ‚˜μ„œ μ£„μ†‘ν•©λ‹ˆλ‹€. μ˜λ„ν•œ 것은 μ•„λ‹™λ‹ˆλ‹€.

이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μˆ˜ν–‰ν•  수 μžˆλŠ” μž‘μ—…μ„ μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

κ·Έλž˜μ„œ μ—¬κΈ° github의 릴리슀 νŽ˜μ΄μ§€μ—μ„œ tarball을 μ—…λ°μ΄νŠΈν–ˆμŠ΅λ‹ˆλ‹€.

μž‘μ—…μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€ :슀마일리:
BTW μΆœμ‹œ μ ˆμ°¨μ— λŒ€ν•œ λ¬Έμ„œλ₯Ό μΆ”κ°€ν•˜λŠ” 것이 쒋은 타이밍이라고 μƒκ°ν•©λ‹ˆλ‹€...

ν˜„μž¬ λ‹€λ₯Έ μœ„μΉ˜μ—μ„œ λ‹€μš΄λ‘œλ“œν•  λ‹€λ₯Έ 파일 .tar.bz2κ°€ μžˆμ–΄ μžλ™ν™” λ‹€μš΄λ‘œλ“œκ°€ λΆˆν™•μ‹€ν•©λ‹ˆλ‹€.

https://collectd.org/files/collectd-5.9.2.tar.bz2
(ν•΄μ‹œ dfcb2a2fa7de0ab02c9e6c1457bee2069957d4ffc9b428851661e9c5e5fc35b7)

https://github.com/collectd/collectd/releases/download/collectd-5.9.2/collectd-5.9.2.tar.bz2
(ν•΄μ‹œ 917c483608b9b38438b121737b510c3d68f335c091bc286aa6ebcc0c8e372a09)

$ make package/collectd/download V=s
make[1]: Entering directory '/Openwrt/r7800'
make[2]: Entering directory '/Openwrt/r7800/feeds/packages/utils/collectd'
mkdir -p /Openwrt/r7800/dl
SHELL= flock /Openwrt/r7800/tmp/.collectd-5.9.2.tar.bz2.flock -c '      /Openwrt/r7800/scripts/download.pl "/Openwrt/r7800/dl" "collectd-5.9.2.tar.bz2" "7b220f8898a061f6e7f29a8c16697d1a198277f813da69474a67911097c0626b" "" "https://collectd.org/files/" "https://github.com/collectd/collectd/releases/download/collectd-5.9.2"    '
...
  1500K .......... .......... .......... .....                100% 29.1M=0.2s

2019-10-09 17:06:38 (6.44 MB/s) - written to stdout [1572628/1572628]

Hash of the downloaded file ... dfcb2a2fa7de0ab02c9e6c1457bee2069957d4ffc9b428851661e9c5e5fc35b7

+ wget --tries=5 --timeout=20 --no-check-certificate --output-document=- https://github.com/collectd/collectd/releases/download/collectd-5.9.2/collectd-5.9.2.tar.bz2
--2019-10-09 17:06:38--  https://github.com/collectd/collectd/releases/download/collectd-5.9.2/collectd-5.9.2.tar.bz2
Resolving github.com (github.com)... 140.82.118.4
...
  1750K .......... .......... .......... ........             100% 15.3M=0.9s

2019-10-09 17:06:40 (2.05 MB/s) - written to stdout [1831777/1831777]

Hash of the downloaded file ... 917c483608b9b38438b121737b510c3d68f335c091bc286aa6ebcc0c8e372a09

μ˜¬λ°”λ₯Έ νŒŒμΌμ„ collectd.org에도 μ—…λ‘œλ“œν•˜μ‹­μ‹œμ˜€(μ‹€μ œλ‘œ μ˜¬λ°”λ₯Έ 파일인 경우. λ‹€μš΄λ‘œλ“œ λ‹¨κ³„μ—μ„œ μš°μ—°νžˆ λ°œκ²¬ν•˜μ—¬ 아직 ν…ŒμŠ€νŠΈν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.)

λ‚˜λŠ” collectd.org에 μ•‘μ„ΈμŠ€ν•  수 μ—†μœΌλ©°, 거기에 collectd-5.9.2κ°€ ν‘œμ‹œλœλ‹€λŠ” 사싀에 λ†€λžμŠ΅λ‹ˆλ‹€.
2일 전에 tar.bz2 νŒŒμΌμ„ λ‹€μ‹œ λΉŒλ“œν•˜κ³  github에 μžˆλŠ” νŒŒμΌμ„ μ΅œμ‹  파일둜 κ΅μ²΄ν–ˆμŠ΅λ‹ˆλ‹€.

sha256sum collectd-5.9.2.tar.bz2 
917c483608b9b38438b121737b510c3d68f335c091bc286aa6ebcc0c8e372a09  collectd-5.9.2.tar.bz2

ν¬μΈν„°λ‘œμ„œ 릴리슀 ν”„λ‘œμ„ΈμŠ€λŠ” https://collectd.org/wiki/index.php/Release_process에 λ¬Έμ„œν™”λ˜μ–΄

ν”„λ‘œμ„ΈμŠ€ μ„€λͺ…이 μ™„μ „ν•˜μ§€ μ•Šκ±°λ‚˜ μ œλŒ€λ‘œ λ”°λ₯΄μ§€ μ•Šμ•˜μ„ 수 μžˆμŠ΅λ‹ˆλ‹€.
collectd 5.9.2 λ°”μ΄λ„ˆλ¦¬λŠ” collectd-5.9.2.tar.bz2 μ†ŒμŠ€μ—μ„œ λΉŒλ“œν•  λ•Œ μ—¬μ „νžˆ 5.9.0이라고 μ£Όμž₯ν•©λ‹ˆλ‹€. 5.9 λΆ„κΈ°μ˜ 파일 version-gen.sh에 μ—¬μ „νžˆ 5.9.0이 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€. λ§ˆμŠ€ν„°μ—μ„œ 버전을 λ²”ν”„ν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλŠ” μΆ©λΆ„ν•˜μ§€ μ•Šμ§€λ§Œ λ¦΄λ¦¬μŠ€κ°€ λ§Œλ“€μ–΄μ§„ μ•ˆμ •μ μΈ λΆ„κΈ°μ—μ„œλ„ λ²”ν”„κ°€ ν•„μš”ν•©λ‹ˆλ‹€.

https://github.com/collectd/collectd/blob/collectd-5.9/version-gen.sh

μ˜ˆμ‹œ:

root<strong i="10">@router2</strong>:/tmp# collectd -?
collectd: unrecognized option: ?
Usage: collectd [OPTIONS]
...
  Data directory    /var/lib/collectd

collectd 5.9.0.git, http://collectd.org/
by Florian octo Forster <[email protected]>
for contributions see `AUTHORS'

λ¨Όμ € 5.9 λΆ„κΈ°μ—μ„œ 문제λ₯Ό μˆ˜μ •ν•œ λ‹€μŒ μ μ ˆν•œ ν•­λͺ©κ³Ό μ μ ˆν•œ 버전 관리가 ν¬ν•¨λœ μƒˆ 5.9.3을 λ¦΄λ¦¬μŠ€ν•˜λŠ” 것이 ν˜„λͺ…ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 그러면 λ‹€μ–‘ν•œ foss μ†ŒμŠ€ λ―ΈλŸ¬μ— λ– λŒμ•„λ‹€λ‹ˆλŠ” 경쟁 μ†ŒμŠ€ 버전이 없을 κ²ƒμž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ fossies.orgμ—λŠ” 5.9.2κ°€ μžˆμŠ΅λ‹ˆλ‹€. 이제 version-gen.shμ—μ„œ 5.8.1이라고 μ£Όμž₯ν•˜λŠ” 5.9.2 tar.xz(첫 번째 bz2 파일이 μ œλŒ€λ‘œ μ‹λ³„λ˜μ—ˆμŠ΅λ‹ˆκΉŒ?)의 첫 번째 버전이 μžˆμŠ΅λ‹ˆλ‹€.
https://fossies.org/linux/privat/collectd-5.9.2.tar.xz/
https://fossies.org/linux/collectd/version-gen.sh

(μž¬λ―ΈλŠ” μ—†μ§€λ§Œ 5.9.0μ—μ„œ 5.9.2둜 μ†ŒμŠ€ μ ν”„ν•˜λ©΄ 버전이 5.8.1둜 μ€„μ–΄λ“­λ‹ˆλ‹€...
https://fossies.org/diffs/collectd/5.9.0_vs_5.9.2/version-gen.sh-diff.html
그듀은 5.9.2의 μ›λž˜ 잘λͺ»λœ 버전을 μ–»μ—ˆμŠ΅λ‹ˆλ‹€ ... )

μΆ”μ‹ . 쑰언이 μ—¬μ „νžˆ 관련성이 μžˆλŠ”μ§€/μ΅œμ‹ μΈμ§€ ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ https://github.com/collectd/collectd/blob/e1325d5ebebfcfc38d93ed453d01af24de4eb343/contrib/redhat/collectd.spec#L18에 bzip2 배포 μ•„μΉ΄μ΄λΈŒ ꡬ좕에 λŒ€ν•œ 쑰언이
(그것은 λ˜ν•œ bz2 파일이 5.9.0μ—μ„œμ™€ 5.9.2μ—μ„œ μ—¬μ „νžˆ μ•½κ°„ λ‹€λ₯Έ λ‚΄μš©μ„ ν¬ν•¨ν•˜λŠ” 이유λ₯Ό μ„€λͺ…ν•  수 μžˆμŠ΅λ‹ˆλ‹€).

@mrunge κ°μ‚¬ν•©λ‹ˆλ‹€ MatthiasλŠ” 이 λ‹€μ†Œ κΈ΄ μ‹œν—˜μ„ λ†“μ³€μŠ΅λ‹ˆλ‹€...

BTW pkg-debian λΉŒλ“œμ—μ„œλ„ version-gen.sh 파일과 λ™μΌν•œ λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

@ashie에 λ”°λ₯΄λ©΄ μˆ˜μ • 사항은 주석이 달린 νƒœκ·Έλ₯Ό λ„£λŠ” κ²ƒμ΄μ—ˆμŠ΅λ‹ˆλ‹€.

git tag -a collectd-5.9.2-1 -m "5.9.2 νƒœκ·Έ μΆ”κ°€"

version-gen.sh(DEFAULT_VERSION)λŠ” ν”„λ‘œμ„ΈμŠ€κ°€ 항상 버전 정보에 λŒ€ν•΄ "git describe" κ²°κ³Όλ₯Ό μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— μ‹€μ œλ‘œ 뢉은 μ²­μ–΄μž…λ‹ˆλ‹€.

μ§€κΈˆ 생성 쀑인 ν…ŒμŠ€νŠΈ λΉŒλ“œμ—μ„œ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. collectd-5.9.2.1.tar.bz2

νƒœκ·Έλ₯Ό λͺ…μ‹œμ μœΌλ‘œ ν‘Έμ‹œν•΄μ•Ό ν•˜λŠ” λ§ˆμ§€λ§‰ μš”μ ...

μžμ‹ ν‘Έμ‹œ 좜처 collectd-5.9.2-1

(당신은 μ•„λ§ˆ μ•Œκ³  μžˆμ§€λ§Œ λ‚˜λŠ” λͺ°λžκ³  그듀이 μ–΄λ””λ‘œ κ°€λŠ”μ§€ 계속 κΆκΈˆν•΄ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€ ;-) )

μ„œλͺ…λœ νƒœκ·Έλ„ μž‘λ™ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰