ふり返る暇なんて無いね

日々のメモ書きをつらつらと

ちょっと相談があるんです。。。。いや、その前に。。

ちょっと複雑で口頭で相談したいことがらってありますよね。

でも、その前に、何について相談したいので概要レベルで事前に教えて欲しいよねって思うこと多い。 事前にまとめておいてくれると、口頭で話すときにすぐ適切な答えを出せるし、お互いの時間を有効活用出来て良いと思うんですよね。って最近よく思ってます。

Ubuntu16.04でhostnameを変えたい

hostnamectl set-hostname ${new_hostname}

これで良いらしい。 /etc/hostname を直修正した後に再起動したら、hostnameが戻っていたので、あれーって思って困ってたのでした。

$GREP_OPTIONSはdeprecatedらしい

Ubuntu16.04でgrep実行したらこんなwarningが出た

grep: warning: GREP_OPTIONS is deprecated; please use an alias or script

どうやら、将来的に$GREP_OPTIONSは廃止されるらしい。

This variable specifies default options to be placed in front of any explicit options.  As this causes problems when writing portable scripts, this feature will be removed in a future release of grep, and  grep  warns  if it is used.  Please use an alias or script instead.

ちなみにgrepのバージョンは以下の通り。

% grep --version
grep (GNU grep) 2.25
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Mike Haertel and others, see <http://git.sv.gnu.org/cgit/grep.git/tree/AUTHORS>.
grep: warning: GREP_OPTIONS is deprecated; please use an alias or script

docker上のUbuntu16.04でPOSIX::strftime::Compilerのテストが失敗した

その通りで、こんなDockerfileでビルドしたら

FROM ubuntu:16.04

WORKDIR /opt/ex
RUN apt-get update
RUN apt-get install curl perl make -y
RUN curl -L https://cpanmin.us | perl - App::cpanminus

RUN cpanm --verbose POSIX::strftime::Compiler

こんな感じで失敗したというお話。

    #   Failed test at t/04_tzset.t line 35.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-1-10 => Australia'
    #   at t/04_tzset.t line 37.
    #                   'Australia'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 45.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-1-10 => GMT'
    #   at t/04_tzset.t line 47.
    #                   'GMT'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 35.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-5-10 => Australia'
    #   at t/04_tzset.t line 37.
    #                   'Australia'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 45.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-5-10 => GMT'
    #   at t/04_tzset.t line 47.
    #                   'GMT'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 35.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-8-15 => Australia'
    #   at t/04_tzset.t line 37.
    #                   'Australia'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 45.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-8-15 => GMT'
    #   at t/04_tzset.t line 47.
    #                   'GMT'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 35.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-11-15 => Australia'
    #   at t/04_tzset.t line 37.
    #                   'Australia'
    #     doesn't match '(?^:A?CST)'

    #   Failed test at t/04_tzset.t line 45.
    #          got: '+0000'
    #     expected: '+0930'

    #   Failed test 'Australia/Darwin / 2013-11-15 => GMT'
    #   at t/04_tzset.t line 47.
    #                   'GMT'
    #     doesn't match '(?^:A?CST)'
    # Looks like you failed 16 tests of 16.
# 以下略

最初見たときtimezone設定してるのにGMT????何やっても+0000なの?????? は???って感じだった。

どうやらtzdataが入ってなかったようで、どっかのタイミングでapt-get install tzdataをしてあげれば良さそう。 イメージがコンパクト過ぎると逆に思いもやらないところでやられてしまうという好例でした。

逆に言うと普段の環境が盛々すぎるとも言えるのかな。