![우분투와 데비안은 파일 이름에 대해 서로 다른 문자 인코딩을 사용합니다.](https://linux55.com/image/204206/%EC%9A%B0%EB%B6%84%ED%88%AC%EC%99%80%20%EB%8D%B0%EB%B9%84%EC%95%88%EC%9D%80%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EC%97%90%20%EB%8C%80%ED%95%B4%20%EC%84%9C%EB%A1%9C%20%EB%8B%A4%EB%A5%B8%20%EB%AC%B8%EC%9E%90%20%EC%9D%B8%EC%BD%94%EB%94%A9%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%A9%EB%8B%88%EB%8B%A4..png)
NFS 파일 시스템을 Debian, Amazon Linux 및 Ubuntu 파일 시스템에 마운트하고 있는데 파일 이름에 대해 서로 다른 문자 인코딩을 표시합니다.
샘플 파일은 해당 시스템에 다음과 같이 나타납니다.
우분투:
スクリーンショット-2018-01-11-11.28.19.png
더반:
'$'\343\202\271\343\202\257\343\203\252\343\203\274\343\203\263\343\202\267\343\203\247\343\203\203\343\203\210''-2018-01-11-11.28.19.png'
아마존 리눅스:
???????????????????????????-2018-01-11-11.28.19.png
내가 겪고 있는 문제는 Wordpress 서버를 실행하고 있는데 Debian 인스턴스가 이미지 파일을 찾을 수 없기 때문에 오류를 반환한다는 것입니다. 이는 파일 이름 차이로 인한 것으로 추정됩니다.
둘 다 Debian을 기반으로 함에도 불구하고 이러한 배포판 간에 파일 이름 인코딩이 그렇게 다른 이유는 무엇입니까? 데비안 시스템에 대한 수정 사항이 있나요?
출력 : Amazon Linux와 Debian은 동일 locale
하지만 파일 이름은 다르게 나타납니다.locale
더반:
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
우분투:
LANG=C.UTF-8
LANGUAGE=
LC_CTYPE=C.UTF-8
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=
아마존 리눅스:
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE=UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
감사해요.
답변1
사용 가능한 로캘 집합과 선택한 예상 로캘이 일치하지 않습니다. 이 locale -a
명령은 사용 가능한 로케일과 locale
현재 선택된 로케일을 표시합니다.
우분투: C.UTF-8
데비안: en_US.UTF-8
아마존:en_US.UTF-8
이 en_US.UTF-8
로캘은 Debian 또는 Amazon Linux에서는 사용할 수 없습니다. 이 명령은 해당 위치에서 사용 가능한지 locale -a
표시합니다 .C.UTF-8
Debian 및 Amazon Linux 서버에서 이 명령을 루트로 실행하면 생성할 로케일 세트를 선택할 수 있을 뿐만 아니라 다음 화면에 시스템 기본 로케일을 선택할 수 있는 옵션이 표시됩니다.
dpkg-reconfigure locales
en_US.UTF-8
Debian 및 Amazon Linux 시스템에 구축되었거나 ( C.UTF-8
여기서 선택되었다고 가정) C.UTF-8
시스템 기본값으로 선택되어 있는지 확인해야 합니다 .
많은 UTF-8 로케일 중 하나를 선택하지 않으면 사용자 인터페이스는 바이트 문자열 $'\343\202\271\343\202\257\343\203\252\343\203\274\343\203\263\343\202\267\343\203\247\343\203\203\343\203\210'
이 スクリーンショット
.