작성 이유
대부분 서버들을 서울에서 작업을 하기 때문에 Asia/Seoul로 변경하지 않으면 시간문제가 발생하게 된다.
언어의 경우 아직까지 다른 이유는 없었던 것 같지만, os에 한글 파일을 올리면 인코딩이 깨지게되서 작업을 기록하기 위해 작성한다.

작업 환경
나는 aws 에 간단한 ec2를 만들어서 테스트를 진행했다.
NAME="Amazon Linux"
VERSION="2023"
Timezone
현재 적용된 timezone 확인
1. date
- 간단하게 확인할 수 있는 명령어

2. timedatectl
- 시간변경에 사용

3. 설정파일 직접 확인
- 1,2 번이 안될리는 없지만 혹시나 다른 방법

Timedatectl로 Timezone 변경
우선 설정 가능한 시간이 있는지 확인을 해야한다.
timedatectl list-timezones | grep Seoul
이 명령어는 /usr/share/zoneinfo 에 있는 timezone 설정파일을 나열해준다
원하는 대역이 존재한다면 이제 시간을 변경하면 된다
(나는 Asia/Seoul을 쓰기 때문에 해당 시간으로 설정)
sudo timedatectl set-timezone Asia/Seoul
이제 정상적으로 변경이 되었는지 확인하면 된다
timedatectl

그러면 처음 Local time이 UTC 에서 KST로 변경이 된 모습을 볼 수 있다.
Symlink 로 Timezone 변경
간혹 시스템에 timedatectl 명령어가 없는 경우가 존재한다.
그런 경우 /etc/localtime을 /usr/share/zoneinfo 디렉토리의 시간대에 심볼릭 링크하여 시간대를 변경할 수 있다.
현재 적용되어있는 심볼릭 링크 또는 파일 확인
ls -al /etc/ | grep localtime
("->" 뒤에 나오는 링크가 심볼릭 링크이다.)
현재 적용되어있는 심볼릭링크 또는 파일을 제거 후 조회
sudo rm -rf /etc/localtime
(아무것도 안나오면 정상!)
구성하려는 시간대를 식별하고 symlink 생성 및 조회
sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime
원하는 시간대로 파일이 생겼다면 작업 완료!
Encoding
현재 인코딩 확인
echo $LANG
사용가능한 인코딩 확인
locale -a | grep ko
일반적으로 한국어는 ko_KR.utf-8 를 사용한다.
만약 ko_KR. utf-8 가 없다면 설치를 진행해준다
한글 패키지 설치
sudo apt-get install language-pack-ko
locale-gen 으로 local 설치
sudo locale-gen ko_KR.utf-8
ko_KR.utf-8 설정
sudo dpkg-reconfigure locales
혹시나 위와 같은 방식으로 안된다면 아래와 같은 방식으로 진행해보면 될듯!!!
언어팩 수정
sudo vi /etc/sysconfig/i18n
일반적으로 LANG="ko_KR.utf8" 양식으로 되어있음!! 뒤에 있는 언어를 원하는 내용으로 수정하면됨!
언어팩 적용
source /etc/sysconfig/i18n
변경 확인
echo $LANG
정상적으로 변경이 된 모습을 볼 수 있다.
기타
centos7 에서 인코딩을 변경하려는데 아무것도 되지 않아서 다른 방법으로 진행
현재 인코딩 확인
localectl
변경 가능한 인코딩 확인
localectl list-locales | grep ko_
인코딩 변경
LANG=ko_KR.utf8
LC_ALL=ko_KR.utf8
현재 세션에 적용
export LANG=ko_KR.utf8
export LC_ALL=ko_KR.utf8
전역적용
sudo vi /etc/profile
```
export LANG=ko_KR.utf8
export LC_ALL=ko_KR.utf8
```
source /etc/profile
시스템 서비스에 적용
sudo systemctl restart sshd
변경된 인코딩 확인
echo $LANG
cat /etc/locale.conf
locale
마치며
인코딩은 생각보다 간단할줄 알았는데 OS, 버전에 따라 또 달라진다는 점에서 흥미로웠던 것 같다.
refs
timezone 변경 : https://yooloo.tistory.com/228
리눅스 TimeZone 변경
How to Set or Change the Time Zone in Linux 현재 TimeZone 확인 timedatectl은 시스템의 시간과 날짜를 보고 변경할 수 있는 명령어입니다. 모든 최신 시스템 기반 Linux 시스템에서 사용할 수 있습니다. 현재 시
yooloo.tistory.com
centos7 인코딩 변경 : https://foxydog.tistory.com/35
CentOS 8 - 리눅스 언어 설정(locale)
CentOS 8 - linux locale Settings locale 우리나라 말로는 [로케일]이라고도 하는데, 주로 터미널로 접속하는 사용자 인터페이스를 표시하는 기본적인 언어를 국가별로 선택할 수 있는 정보를 출력해주는
foxydog.tistory.com
'infra > 기타' 카테고리의 다른 글
| SSL/TLS 인증서란? (0) | 2024.07.12 |
|---|---|
| Apache + Tomcat 환경 분리(window) (0) | 2024.07.05 |
| VScode + EC2 SSH, SFTP 연결 (0) | 2024.06.27 |
| WEB/WAS 분리 셋팅 (0) | 2024.01.30 |
| IaaS, SaaS, PaaS 는 무엇일까? (0) | 2024.01.18 |