centos6의 locale-gen 명령


17

docker컨테이너 인 맨체 centos6.5 시스템 에서 en_US.utf-8로케일이 누락되었습니다.

bash-4.1# locale -a
C
POSIX

일반적으로 우분투에는 다음과 같은 명령 locale-gen이 있습니다.

# locale-gen en_US.UTF-8
# echo 'LANG="en_US.UTF-8"' > /etc/default/locale

centos 6.5에서 어떻게해야합니까?

답변:


32

locale-gen에 없습니다 Centos/Fedora.

다음을 사용해야합니다 localedef.

localedef -v -c -i en_US -f UTF-8 en_US.UTF-8

보낸 사람 man localedef:

NAME
       localedef - define locale environment

SYNOPSIS
       localedef [-c][-f charmap][-i sourcefile][-u code_set_name] name

DESCRIPTION
       The localedef utility shall convert source definitions for locale cate‐
       gories into a format usable by the functions and utilities whose opera‐
       tional behavior is determined by the setting of the locale  environment
       variables    defined    in    the    Base    Definitions    volume   of
       IEEE Std 1003.1-2001, Chapter 7, Locale. It  is  implementation-defined
       whether users have the capability to create new locales, in addition to
       those  supplied  by  the  implementation.  If  the  symbolic   constant
       POSIX2_LOCALEDEF  is  defined,  the system supports the creation of new
       locales.    On   XSI-conformant   systems,   the   symbolic    constant
       POSIX2_LOCALEDEF shall be defined.

패키지에 yum whatprovides */localedef대한 보고서 는 없지만 감사 합니다. 도커 때문에 이상해? glibc-common/usr/bin/localedef
larrycai

@larrycai : 잘 모르겠습니다.이 문제를 전에 보지 못했습니다. 어떤 결과 ldd /usr/bin/localedef.
cuonglm

파일이 존재하지 않고 locale명령 만 있습니다. 도커를 알고 있다면 docker run -i -t centos bash검사도 실행할 수 있습니다.
larrycai

감사합니다 선생님 ~ 나는 이상한 캐릭터들에 의해 상당히 짜증이
Eddie B

8

@Gnouc 답변을 기반으로 추가 정보를 제공했습니다 ( localedefcentos로 사용해야 함)

centos docker최소한의 패키지를 제공하는 특별한 이미지, 스크립트를 볼 수 있습니다 https://github.com/dotcloud/docker/blob/master/contrib/mkimage-yum.sh

rm -rf "$target"/usr/{{lib,share}/locale,{lib,lib64}/gconv,bin/localedef,sbin/build-locale-archive}

내부 명령 localedef이 제거되면 glibc-common이를 포함하는 패키지를 다시 설치해야합니다.

yum reinstall glibc-common

확실히 크기가 증가합니다


yum reinstall glibc-commonAmazon Linux 2.17-196.172.amzn1Docker 컨테이너 ( hub.docker.com/r/ambakshi/amazon-linux) 에서 localedef를 사용할 수 있게 하고 elixir를 설치할 수있었습니다.
케빈 존슨
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.