이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함..


Ubuntu 18.04 LTS

Ubuntu
( 이미지 출처 : https://upload.wikimedia.org )

Ubuntu 18.04 LTS을 설치하고 설정하면서 겪은 문제점과 해결방안들을 기록해봅니다. (2019년도 4월 21일 기준)

Ubuntu 14.04 LTS의 EoSS(End of Standard Support) 일정이 2019년도 4월이고 이제 10일도 남지 않았습니다. 저는 정말 알차게 EOSS 직전까지 사용한 것 같군요.

Ubuntu 18.04 LTS도 2018년 4월 26일에 출시되어 벌써 1년 이상의 시간이 지났으니 한글입력에 대한 어려움 같은 신규버전 초기 문제점들이 많이 해결되었길 기대해봅니다.

버전 선택

2015년 7월쯤부터 Ubuntu 14.04 LTS를 사용하기 시작해서 대략 4년간 사용을 했네요.

Linux 고수 분들은 새로운 버전이 나오면 일단 업그레이드하고 문제점이 발견되면 해결방안을 찾아내는 것에 즐거움을 가지시는 것 같으나

제게 있어 Ubuntu 버전 선택에서 가장 중요시 되는 점은..
문제점과 부딪히는 일을 최대한 없었으면 한다는 점과 오랫동안 기능, 보안 패치가 이뤄져야한다는 점입니다.

ScreenShot - Ubuntu Releases
( 이미지 출처 : https://wiki.ubuntu.com/Releases )

최신 버전으로 19.04와 18.10이 있지만 EoSS(End of Standard Support)가 2020년 1월과 2019년 7월인 관계로 후보에서 제외했습니다.

Ubuntu 16.04 LTS와 Ubuntu 18.04 LTS 중 어떤 것을 선택하냐 인데
Ubuntu 16.04 LTS는 출시가 2016년 4월이기 때문에 안정화가 충분히 되었을 것이지만 EOSS가 2021년 4월로 고작 2년 남았고
Ubuntu 18.04 LTS는 EOSS가 2023년 4월로 4년 남은 반면 출시일이 2018년 4월으로 출시 된지 1년의 시간이 지났습니다.

Ubuntu 14.04 LTS를 쓸때도 출시된지 1년이 지난 시점에서는 한글 입력 관련 문제에 고생했기 때문에 고민을 좀 했습니다.
최근 Ubuntu 18.04 LTS를 설치한 지인에게 문의해보니 한글 입력 관해서 아무 문제가 없었다고 하여 일단 18.04 LTS로 가보기로 결정했습니다.

참고로, EoSS(End of Standard Support)는 기능추가를 위한 지원만이 아니라 보안패치에 대한 지원도 종료 됩니다.
그리고 EoL(End of Life)는 archive.ubuntu.com 사이트에서 서비스 제공을 끝낸 다는 이야기 입니다. 아마도 미러링 사이트들에서도 서비스 제공이 중단 되겠죠?
대신 old-releases.ubuntu.com 사이트로 이동되어 보관된다고 합니다.

설치

설치하는 전 과정을 이 글에서 다루지 않습니다.

Ubuntu ISO 파일을 다운로드 받은 뒤 Ubuntu 설치용 USB를 만들고 설치하면 됩니다. 그 내용은 인터넷을 통해 검색해보시면 수 많은 분들이 친절하게 적어둔 설명을 찾으실 수 있으실 겁니다.
현재 사용하는 OS가 Windowns, Mac, Linux 중 어떤 것이냐에 따라 Ubuntu 설치용 USB를 만드는 내용이 살짝 다르니 검색시 참고하세요.

USB 포멧

포멧을 하면 USB의 모든 내용이 지워집니다. 되돌릴 수 없으니 유의하세요. 포멧해도 되는 USB를 준비하시기 바랍니다.

마운트 경로 확인

일단 USB를 꽂고 df 명령어를 통해 mount 경로를 확인합니다.

$ df 
Filesystem     1K-blocks      Used Available Use% Mounted on
... (생략)
/dev/sdb1       15247360   1047712  14199648   7% /media/dveamer/UBUNTU 14_0

USB에 해당되는 filesystm 위치를 확인합니다. 저의 경우는 /dev/sdb1 이네요. 포멧과 설치용 USB를 만드는 과정에서 이 경로가 계속해서 쓰일 것입니다.
만약 어떤 것이 USB인지 분간이 안되신다면 USB를 뽑고 df 해보시면 없어진 라인이 USB에 해당되는 정보입니다.

실수로 USB가 아닌 다른 경로를 포멧하시게 되면 굉장한 낭패이니 조심하시기 바랍니다.

마운트 해제

$ sudo umount /dev/sdb1

포멧 시작

NFTS 포멧을 시작합니다.

$ sudo mkfs.ntfs /dev/sdb1

만약 FAT32로 포멧을 원하신다면 아래 명령어를 사용합니다.

$ sudo mkfs.vfat -F 32 /dev/sdb1

ISO 다운로드

포멧이 되길 기다리는 동안 Ubuntu ISO Download 에서 원하시는 버전의 ISO를 다운로드 합니다.
저의 경우는 18.04.02 버전을 다운로드했고 해당 파일명은 ubuntu-18.04.2-desktop-amd64.iso입니다.

Ubuntu 설치용 USB 생성

USB 포멧과 ISO 다운로드가 모두 완료 됐는지 확인하고 진행하시기 바랍니다.

$ cd ~/Downloads
$ sudo dd if=./ubuntu-18.04.2-desktop-amd64.iso of=/dev/sdb1
$ sudo eject /dev/sdb1

설치를 위한 준비는 마쳤고 앞서 이야기 드린 것처럼 설치 과정은 생략합니다.

Repository 변경

설치 후 가장 먼저 해야하는 작업은 버전 업그레이드지만
업그레이드에 시간을 절약하기 위해서는 업그레이드 관련 패키지를 다운 받을 repository를 국내 미러링 사이트로 먼저 변경해줘야 합니다.

국내에 여러 미러링 사이트가 있겠지만 제가 아는 곳은 카이스트와 카카오 두곳입니다.

기존에 제가 사용하던 미러링 사이트는 Daum이었는데 Kakao와 합병 이후 미러링 사이트의 주소가 세개가 됐네요.

  • ftp.daum.net
  • ftp.daumkakao.com
  • mirror.kakao.com

모두 같은 IP를 바라보고 있고 어떤 것을 써도 문제되진 않겠지만
혹시 문제가 생길시에 가장 잘 관리가 될 것으로 생각되는 mirror.kakao.com 도메인을 선택했습니다.

설치시 지역을 한국으로 설정하셨으면 아래와 같이 진행하시면 됩니다.

cd /etc/apt
sudo cp sources.list sources.list.bak
sudo sed -i 's/kr.archive.ubuntu.com/mirror.kakao.com/g' sources.list
sudo sed -i 's/security.ubuntu.com/mirror.kakao.com/g' sources.list

Ubuntu Upgrade

Repository 변경 후에 업그레이드를 가장 먼저 하세요. 다양한 문제들이 해결됩니다.
업그레이드가 완료되면 재부팅을 한번 해주세요.

sudo apt-get update
sudo apt-get upgrade

Software & Updates > Updates > Notify me of new Ubuntu version
For long-term support versions 으로 설정하시면 매번 새로운 버전 알림을 받을 수 있습니다.

한글입력 설정

Regions & Language

Setting > Regions & Language 를 실행합니다.

Input ources 의 +, -` 기호를 이용해서 Korean(Hangul) 이 오도록 설정합니다. 만약에 Hangul이 붙어있지 않은 Korean만 보인다면 Ubuntu 버전 업그레이드가 제대로 안됐거나 업그레이드 후 재부팅을 하셨는지 기억해보세요.

The scroll function of touch pad

  • Lenovo ThinkPad 사용중
  • 터치패드 edge scroll(오른쪽 모서리 스크롤) 기능이 먹히지 않음
  • 원인은 two finger scroll 기능이 기본적으로 제공되기 때문
  • 그냥 two finger scroll 기능을 사용하기로 함

Reference

  • http://askubuntu.com/a/363310

Fail2Ban

SSH 접근을 외부에 오픈하게 되는 경우 수많은 해킹시도가 들어옵니다.
임의의 ID, PSWD로 SSH 접근이 들어오게 되는데 해킹시도가 일어나는 동안에도 뚫린 다음에도 우리는 알 수가 없습니다.
미리 방어해주는 프로그램이 fail2ban 입니다.

iptable을 확인해보면 fail2ban 설치가 되어있는지 확인이 가능하다. fail2ban 설치전과 후의 iptable을 비교해보세요.

$ sudo iptable -L
$ sudo apt-get install fail2ban
$ sudo iptable -L

로그인 시도가 있을 때마다 로그를 남기다가 특정 IP가 로그인을 7번 시도하면 10분간 차단하는 방법입니다.
횟수와 차단시간과 같은 설정값은 jail.conf 파일을 수정 후 재시작하면 됩니다.

$ sudo vi /etc/fail2ban/jail.conf
$ sudo service fail2ban restart

Mounting NTFS Drive

  • 기존에 Windows에서 사용하던 NTFS 드라이브를 마운트하기
  • 마운트 하지 않아도 nautilus에서 접근은 가능하던데 terminal에서 접근 방법을 모르겠음. 그래서 마운트 진행

NTFS Drive 의 UUID 찾기

  sudo blkid

  /* Result */
  /dev/sda1: LABEL="RECOVERY" UUID="8A9A77819A776899" TYPE="ntfs"
  /dev/sda2: UUID="bb0c661d-3ffb-4105-a128-e7b578fb41eb" TYPE="ext4"
  /dev/sda3: UUID="00BE9772BE975ECA" TYPE="ntfs"
  /dev/sda5: UUID="f08af471-0650-41fb-9b69-e5f8b499e754" TYPE="swap"
  • mounting 할 드라이브의 UUID를 복사

/etc/fstab 정보 수정

  sudo gedit /etc/fstab

  /* Modify the last line */
  UUID={복사해둔UUID} {mount경로} {type} {options} {dump} {pass}

  /* Sample */
  UUID=00BE9772BE975ECA /data ntfs-3g default,locale=ko_KR.UTF-8 0 0
  • 맨 아랫줄에 아래와 같이 입력
  • NTFS드라이버라면 {UUID}, {mount경로} 만 수정해주고 나머지는 동일하게 적용하면됨

  • 재부팅

Reference

  • http://cololabis.tistory.com/27

Modify / Copy The Current Path On Nautilus

  • Nautilus 의 현재 위치를 복사하거나 수정하고 싶은데.. 방법이 없어보여서 순간 당황

  • Cntl + L 을 누르면 location 을 타이핑할 수 있도록 UI가 바뀜

Reerence

  • http://askubuntu.com/questions/28511/how-can-i-copy-the-current-path-from-nautilus

Make A Script Menu On Nautilus

  • 자주 사용하는 script가 있다면 nautilus에 메뉴로 등록하면 편할듯

Reference

  • http://askubuntu.com/questions/281062/how-to-get-nautilus-scripts-working-on-ubuntu-13-04
  • http://askubuntu.com/questions/236414/how-can-i-install-a-nautilus-script

Prompt 의 pimp out 변경하기

  • .bashrc 파일의 PS1 값을 변경합니다.

Reference

  • http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html

Shutdown & Reboot

  • Shutdown : sudo shutdown -h now
  • Reboot : sudo reboot
  • Logout : sudo restart

SSH-Server

  • Openssh-server 설치
  sudo apt-get install openssh-server
  • SSH 서버 재시작
  sudo /etc/init.d/ssh restart
  • 다른 client에서 접속
  ssh account@ip

Associated Posts

관련된 주제를 살펴볼 수 있도록 동일한 Tag를 가진 글들을 모아뒀습니다. 제목을 눌러주세요.

i