/bin/sh: 'some-function' の関数定義の取得中にエラーが発生しました。

/bin/sh: 'some-function' の関数定義の取得中にエラーが発生しました。

CVE-2014-6271セキュリティ問題のbashを更新中にこのエラーが発生しました。

# yum update bash
Running transaction (shutdown inhibited)
Updating   : bash-4.2.47-4.fc20.x86_64
/bin/sh: error importing function definition for `some-function'

ベストアンサー1

[最初のコメント以降に修正されました:@chepner - ありがとう! ]

/bin/bash は関数名のハイフンを許可しますが、/bin/sh (Bourne シェル) は許可しません。ここで問題の「some-function」はbashによってエクスポートされ、bashは/ bin / shを呼び出し、上記のエラーを報告するyumを呼び出します。

修正:ハイフンを含めないようにシェル関数の名前を変更します。

man bashは、bash識別子に「英数字と下線のみ」を含めることができると言います。

/bin/sh エラーがより明確です。

some-function () { :; }

sh: '一部の機能': 有効な識別子ではありません

おすすめ記事