LTS 버전이 14.04 가 나온지 1년이 넘었는데

아직 10.04 를 쓰고 있는 서버들이 있다. 바로 14.04 로 올리긴 이슈가 발생할 것 같아서
소극적으로 12.04 로 먼저 업그레이드 할 예정이다.
지원기간이 2017녀까지이니, 아직 여유가 있다.(10.04 는 지원기간이 지났다)

do-release-upgrade

로 업그레이드 하면 된다.


배포판 업그레이드는 지금까지 특이사항 없이 잘 했었다.
그런데, 이번에는 다음과 같은 에러를 보게 되었다.(특정서버에서 발생)

E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages

업그레이드 시작전에 체크하면서 오류가 발생한 듯 하다.


확인해보니 ibus-hangul 패키지가 깨진 듯 하다.

확인은 /var/log/dist-upgrade/apt.log 파일을 확인해본다.

Broken 패키지를 찾아보면 된다.

apt-get remove ibus-hangul

명령으로 제거를 한 후 다시 업그레이드 하니 진행이 잘 된다





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

cups 를 실행했는데.

start: Job failed to start 다음과 같은 에러가 나오면서 실행이 되지 않는다.

그래서 apt-get install cups 로 설치시 중간에 멈추게 된다.


# 일단 원인을 알아야 한다.

다음 파일을 /etc/init/cups.conf 에 복사한다. 기존 파일은  cups.conf.org 등으로 바꿔놓는다.

cups.conf

이 파일은 실행시 에러사항을 /tmp/cups.log 에 남긴다.


# 어떤 에러가 나오는 지 확인한다.

내용을 보니.

AppArmor parser error for /etc/apparmor.d/usr.sbin.cupsd in /etc/apparmor.d/tunables/global at line 15: Could not open 'tunables/home'

이런 에러가 보인다. /etc/apparmor.d/tunables/ 를 살펴보니, home 파일은 없고, home.d 라는 디렉토리는 있다.

아마도 home 파일이 빠진 듯 하다.

다른 곳의 정상적으로 설치된 곳에서

home 파일을 복사해왔다.

home

/etc/apparmor.d/tunables/ 에 복사해준다.


그리고 

# service cups start 

실행해주면 에러없이 정상 작동한다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

ubuntu 12.04 를 호스팅사에 설치의뢰를 했는데 영문판을 깔아주셨네요. ㅜㅜ

아무리 서버라도 그렇지 한글을 보고 싶어요.


# apt-get install localepurge

명령으로 한글 ko_KR.EUC-KR  , ko_KR.UTF-8  , 둘다 또는 맘에 드는 놈으로 선택 / 확인

# locale-gen --purge

하면 ko_KR ... 이 나와야 하는데, 왜 안나오지..

일단 다음. 예전에 이렇게 안했는데. ...


그래, 저렇게 하지 말고, 이렇게..

# locale-gen ko_KR.EUC-KR ko_KR.UTF-8
# dpkg-reconfigure locales


그리고, /etc/default/locale 을 바꿔준다.

LANG="en_US.UTF-8"  를 LANG="ko_KR.UTF-8"  으로 바꿔준다.

그리고 터미널 다시 접속해서
# env    명령을 해보면 바뀐것을 볼 수 있다.



비록 명령은 없지만...

# 안녕하세요
안녕하세요: command not found




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

ubuntu 12.04 의 resolv.conf 가 비었어요.

설치하고 나니 서버 내부에서 밖으로 연결이 안된다.
외부에서 서버로 되는게 이상하다.

암튼. 찾아보니 /etc/resolv.conf 가 비어있다.
친절한 메시지와 함께.

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

요약하면, resolvconf 가 먼저 접수했다. 만지지마!!
암튼. resolv.conf 를 건드리는 패키지가 dhcp client 였나 그게 그랬던것 같다.


직접 수정해도 되지만, 재부팅하면 다시 비워져 있을 것이다.

/run/resolvconf/resolv.conf  에 심볼릭 링크되어 있다.
resolvconf 패키지가 부팅하면서 저 파일을 생성하고, symlink 시킨다.

부팅해도 설정 안 바뀌게 하려면.

/etc/resolvconf/ 이 폴더에 뭐가 있지 않을까?

cat /etc/resolvconf/resolv.conf.d/head
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

어! 여기에 같은 내용이 들어 있네.

저기에 넣으면 부팅할때 그대로 있지 않을까? 해보자.

nameserver 8.8.8.8
nameserver 164.124.101.2

등 넣고 싶은 네임서버를 넣어준다.

그리고 재부팅해볼까?
싫어 명색이 서버인데, 재부팅은

그냥

# service resolvconf restart

또는 /etc/init.d/resolvconf restart


역시 예상대로 /etc/resolv.conf 가 head 에 넣은대로 되었다.

다른파일도 있는데, head , base 이렇게 있다.
말뜻이 뭔가 구분을 한것 같은데, head 가 아니라 base 에 넣어야 할 것 같아서 바꿔서 넣었다.

좀더 찾아보니.
http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

대충 읽어보니 head 에 넣는게 맞는 것 같다. 제일 먼저 찾게 만들려면.



언제 부터 바뀌었는지 모르겠지만, ubuntu 12.04 는 저렇게 되어 있군.
뭔가 심오한 뜻이 있는 것인가?

보통 저 패키지를 지우는 방법을 쓰기는 한다.(마치 centos/redhat 쪽의 selinux 를 끄는 것 처럼)

그래도 배포판이 지지하는 방법을 따라주는 것이 좋지 않을까?
(근데 좀 이유좀 알려줘 - 링크 정도는 하나 던져줘도 되잖아?)



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret