자동화 된 스크립트를 사용하여 시간대 설정


20

새 slicehost 설치를 자동화하는 스크립트를 작성 중입니다. 완벽한 세계에서, 스크립트를 시작한 후에 나에게 관심을 갖지 않고 스크립트가 실행됩니다. 한 가지 예외를 제외하고는 성공했습니다.

입력을 필요로하지 않는 영구적 인 (잔여 재부팅) 및 제정신 (표준 및 일광 절약 시간에 맞게 조정하므로 날짜를 강제하지 않음) ... 시간대를 어떻게 설정합니까?

현재 사용하고 있습니다

 dpkg-reconfigure tzdata

이것은 매개 변수를 강제로 넣을 방법이없는 것 같습니다. 사용자 입력이 필요합니다.


편집 : 주석은 코드 블록을 허용하지 않기 때문에 주석이 아닌 여기에서 편집하고 있습니다.

다음은 Rudedog의 의견에 따라 작성된 실제 코드입니다. 또한 이것이 / etc / timezone을 업데이트하지 않는 것으로 나타났습니다. 나는 누가 그것을 사용하는지 확신하지 못하지만, 누군가가 그것을 사용한다면, 나는 그것을 설정하고 있습니다.

TIMEZONE="America/Los_Angeles"      
echo $TIMEZONE > /etc/timezone                     
cp /usr/share/zoneinfo/${TIMEZONE} /etc/localtime   # This sets the time

답변:


18

당신은 이것을 할 수 있어야합니다

cp /usr/share/zoneinfo/America/Los_Angeles /etc/localtime

위 명령에서 적절한 시간대를 대체하십시오.


1
복사하지 않는
심볼릭

1
그는 데비안을 사용하고 있습니다. dpkg-reconfigure tzdata심볼릭 링크가 아닌 복사본을 만듭니다. 부팅 시점에 / usr / share가 마운트되지 않았기 때문이라고 생각합니다.
Rudedog 2009

데비안 용 tzconfig 맨 페이지의 기술 섹션에 따르면 :> tzconfig가 수행 한 작업은 실제로 매우 간단합니다. / usr / share / zoneinfo /에 설치된 올바른 시간대를 가리 키도록 / etc / localtime 링크를 업데이트합니다.
brent

1
tzconfig는 dpkg-reconfigure tzdata를 위해 lenny에서 더 이상 사용되지 않으며 실제로는 아무 것도 수행하지 않습니다. dpkg-reconfigure tzdata를 실행하고 결과를 확인하여 심볼릭 링크 대신 복사되는지 확인할 수 있습니다.
Rudedog



2

/etc/localtime올바른 시간대를 가리 키도록 symlink 업데이트/usr/share/zoneinfo/


심볼릭 링크를 사용하고 /usr별도의 파티션에 /usr마운트 된 경우 마운트 되기 전에 시작 하는 것은 올바른 시간대를 갖지 않습니다. 데비안을 포함한 오늘날의 대부분의 배포판은 symlink가 아니라 copy입니다.
Rudedog 2009

1

나 자신에게 달려 들었다. 이 작업을 올바르게 수행하는 방법에 대한 전체 구성은 다음과 같습니다 (여기 및 이 질문에 대한 전체 설명입니다 ).

#Set time zone and time
echo "tzdata tzdata/Areas select Europe" | debconf-set-selections
echo "tzdata tzdata/Zones/Europe select London" | debconf-set-selections
TIMEZONE="Europe/London"
echo $TIMEZONE > /etc/timezone
cp /usr/share/zoneinfo/${TIMEZONE} /etc/localtime
/usr/sbin/ntpdate pool.ntp.org

0

tzdatadebconf를 사용하여 해당 질문에 답변하므로 미리 채워야합니다. 이를 수행하는 몇 가지 방법이 있습니다. 가장 쉬운 방법은 설치 중에 답변미리 설정하는 것 입니다. debconf에서 사용할 기본 데이터베이스를 설정할 수있는 방법에 대해서는 debconf(7)맨 페이지를 참조하십시오 .


-2

또한 ntpd가 설치되어 실행 중인지 확인하십시오.

yum install ntpd
ntpdate pool.ntp.org
service ntpd start
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.