Ubuntu Server/LattePanda 에서 GUI 환경 추가.

** 2020.02.13
이 글은 상당히 산만하다.
새 글이 훨씬 깔끔하다.


우분투 서버를 설치한 뒤, GUI 환경을 쓰고 싶어졌다면?
아예 GUI 로 전환을 하려는 건 아니고, 필요할 때만 가끔씩 GUI 로 가고 싶다면?


LattePanda 를 서버로 쓰려고 하는데, 시험삼아 우분투를 설치하고 동영상을 돌려보니 전혀 무리가 없었다. Netflix 도 잘 돌아갔다.
사실, 그냥 데스크탑용 우분투에서 아파치등을 돌려도 큰 손해(?)가 있을 듯 하진 않다. 다만 GUI 를 사용하는 빈도가 잦질 않을테니, 굳이 그럴 필요까진 없지 않을까?
따라서 그냥 서버를 설치하고, GUI 는 필요할 때만 사용하는 방법을 찾아봤다.

다음 글들을 주로 참고했지만, 거기에 내 창의력(?)을 더했다.


서버를 설치 한뒤, tasksel 이라는 꾸러미를 따로 설치한다.

sudo apt install tasksel

이 꾸러미는 우분투 서버에서 제공하는 여러 꾸러미를 손쉽게 설치할 수 있게 도와준다. (꼭 이걸 설치해야만 하는 건 아니다.)

실행 한 뒤, 적절한 GUI 환경을 선택한다.

sudo tasksel

이 중, 무겁고 화려한 친구(?)들은 제외했다. 자연스레 남는 건 Xfce4, Lxde, Lxqt 정도다. 이들 모두를 시험해봤다.

… 시험 과정은 생략하고, 결과만 정리.

XFCE4 는, 내 화면장치(TV)에서 약간 문제가 있다. TV 가 3840 까지 지원을 하는데, 3840 은 불필요해서 1920 으로 해상도를 맞춰놓았다. 그런데, GUI 가 켜져있는 상태에서 TV 전원을 껐다가 다시 켜면 해상도가 3840 으로 전환되는 현상이 발생한다. 해상도를 고정시키는 법이 있을 듯도 한데, 열심히 찾아보진 않았다.
물론, XFCE 정상 종료 후 재부팅했을 경우엔 1920 으로 제대로 설정이 된다.
이게 생각보다 불편해서 XFCE 는 탈락.

** 추가
저땐 저랬는지 모르겠지만.. 다시 해보니 그 현상은 없다.
또, 아래 LxDE 를 설치했는데, 왠지 내 TV 와 잘 맞지 않아서, 자주 화면이 깜빡이는 현상이 발생했다. 따라서.. 다시 XFCE 로 회귀.

** 아래 LxDE 관련 글은 모두 무시하고, 다음으로 XFCE 를 설치한다.

sudo apt install xubuntu-desktop

apt install xfce4 로도 가능하다는데, 설정이 꼬인 탓인지 저렇게만 하니 제대로 실행이 되지 않았다. 그냥 xubuntu-desktop 으로 설치했더니 잘 됐다.

아래 글은 참고만.

차선책은 LxDE 계열. Gtk 와 QT 기능 상 차이는.. 잘 모르겠다.
그러나, QT 쪽은 문제가 발생했다.
Lubuntu 자체를 설치해본 적이 없어서, 온전한 Lubuntu 는 어떤 지 모르겠지만, 서버를 먼저 설치하고 LXDE 환경을 나중에 설치했을 땐 제대로 작동하지 않는 상태가 됐다.

tasksel 로 설치할 수 있는 LxDE 는 다음과 같다.

tasksel --list-tasks
....
u lubuntu-core	Lubuntu minimal installation
u lubuntu-desktop	Lubuntu Desktop
u lubuntu-gtk-core	Lubuntu minimal installation (GTK part)
u lubuntu-gtk-desktop	Lubuntu Desktop (GTK part)
u lubuntu-qt-core	Lubuntu minimal installation (Qt part)
u lubuntu-qt-desktop	Lubuntu Qt Desktop (Qt part)
....

저 꾸러미들이 어떻게 다른 지는 잘 모르겠다.
미루어 짐작해보면, lubuntu-core 는 핵심기능만을 설치하고, GTK/QT 모두를 포함한다. (웹브라우저도 설치되지 않는다.)
lubuntu-desktop 은 core 는 물론, 기타 여러 응용프로그램들을 설치한다.
gtk/qt 는 말 그대로, LXDE-GTK, LXDE-QT 로 보인다.

LXDE-QT 는 설치 후 실행시에 데스크탑 환경이 잘 보이지 않는 문제가 있었다. Wikipedia 를 보니, LXDE 개발자는 2014년쯤부터 LXDE 를 QT 로 전향하겠다는 계획을 발표했다고 한다. 그 뒤로 5년이 지났는데.. 우분투 패키징이 잘못된 건지 어쨌든, LXQT는 제대로 작동하질 않았다.

LXDE GTK 설치

이 모든 상황을 종합하면, 결국 택할 수 있는 선택지는 LXDE(Gtk), Minimal 환경이 된다.

tasksel 을 실행한 뒤 나오는 메뉴에서 고를 때는 ‘Lubuntu minimal installation (GTK part)‘ 을 선택하면 되고, 바로 설치할 때는 ‘lubuntu-gtk-core‘ 를 매개변수로 주면 된다.

sudo tasksel install lubuntu-gtk-core

어떤 방식을 택하든, 결과는 같다.

tasksel 이 아니고 apt 로도 설치는 가능한데… tasksel 과 설치되는 꾸러미에서 어떤 차이가 있는지는 잘 모르겠다. (꾸러미 개수 차이는 있다. tasksel 로 하면 약 500여개, apt install 은 약 700여개.)

sudo apt install lubuntu-gtk-core

설치가 끝나고, 재부팅하면 Lightdm 이 실행되어 GUI 환경으로 부팅하게 된다.
내가 원하는 건 이런 건 아니다. 필요할 때만 GUI 가 실행되게끔 하고 싶다!

사실, lightdm 이 실행됨으로 인해 얼마만큼의 CPU 가 사용되는지는 잘 모르겠다. 큰 차이가 날 것같진 않지만, 그래도 괜히 쓸데없는 낭비(?)는 할 필요가 없으므로, lightdm 서비스를 실행되지 않게끔 처리한다.

일단 GUI 로 로그인한 뒤(또는 ssh 접속으로), 터미널을 열고 다음 명령을 실행한다.

sudo systemctl disable lightdm

재부팅하면, 다시금, 친숙한(?) 커서가 반짝이는 투박한 화면을 볼 수 있게 된다.

여기에서, 다시 GUI 로 접근하고 싶다면, lightdm 서비스를 시작시키면 된다.

sudo systemctl start lightdm

이렇게 되면 GUI 가 뜨는데, 여기서 또 한번 PW를 넣어줘야 한다. 결국 GUI 로 진입하기까지 PW 를 최소 3번은 입력해야 되는, 조금은 귀찮을 수도 있는 상황이 된다.
처음은 CLI 로 로그인할 때, 두번째는 sudo systemctl start lightdm 에서, 세번째는 GUI 로그인 화면에서.

위 단계에서, 적어도 마지막은 줄일 수 있다.
즉, 자동로그인이 되게 설정할 수 있다. Ubuntu HelpArchLinux 문서를 참고했다.

** 아래 내용은 다소 복잡하고, Lightdm 해상도와 자동로그인 설정만을 정리한 글을 참고하는 편이 정신 건강에 이롭다.

/etc/lightdm/lightdm.conf 를 만들고, 다음을 추가한다.

[SeatDefaults]
autologin-user=<userid>
#autologin-session=lxde
autologin-user-timeout=1
# Check https://bugs.launchpad.net/lightdm/+bug/854261 before setting a timeout
#user-session=lxde
#greeter-session=lightdm-gtk-greeter

원 글에서는 user-session 을 lubuntu 라고 했는데, 비워놓으면 이전에 부팅했던 곳으로 진입하게 된다. 정확하게는, ~/.dmrc 에 저장된 환경으로 진입한다.


GUI 를 다 사용하고 나면, 그냥 Reboot 한다. lightdm 은 disable 된 상태이므로 start 했다하더라도 재부팅시에 자동 시작되지 않는다.

** 참고로!
LXQT 를 설치하면, lightdm 이 아니고 sddm 이 설치된다.
이런 것들을 X Display Manager 라고 부른다고 한다.

lightdm 은 주로 GTK 계열에서, sddm 은 주로 QT 계열에서 사용하는데, 사실 뭘 써도 관계는 없다. 가볍기로 소문난 slim 이란 것도 있지만, 이건 개발이 중지된지 한참 되었기에, 지금 쓰기는 좀 꺼려진다.


Monitor 설정.

LattePanda Delta 는 기본 모니터(DSI1)를 Firmware 에서 끌 수가 없게 되어 있다.
심지어, 현재 모니터가 두번째 모니터로 지정되어서, 메뉴 접근이 거의 불가능할 때도 있다.

이럴 경우는, 어떻게든 터미널을 띄우고 xrandr 을 실행해야만 한다. (터미널을 좀 더 쉽게 띄울 방법도 있을 듯 한데..)

메뉴 접근이 된다면, Monitor Settings 를 실행하고, 해상도, Refresh Rate 등을 설정한다. (DSI1 은 끈다.)

Intel Graphic Tearing 관련 설정

Nvidia 는 전용 소프트웨어를 설치하여 설정해줄 수 있지만, Intel 쪽은 이런 게 없는 듯 하다.
기본 설정 상태로 동영상을 본다든가, 아니면 웹브라우저를 아래 위로 스크롤만 해도 화면이 일그러지는 현상(이걸 Tearing 이라고 한다. 예전에 이 현상을 영어로는 뭐라하는지 궁금해서, 찾아내느라 웹을 뒤지고 다녔던 기억이 난다. 그래서 더욱 잊혀지지 않는 단어/표현.)

Tearing 을 없애려면, 다음 디렉토리/파일을 생성하고, 이런 내용을 넣어줘야 한다.

sudo mkdir /etc/X11/xorg.conf.d
sudo vim /etc/X11/xorg.conf.d/20-intel-graphics.conf

# 다음 내용 입력
Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "TripleBuffer" "true"
   Option      "TearFree"     "true"
   Option      "DRI"          "false"
EndSection

다음 글을 참고했다.

아이콘 등 설정

원래는, ‘Customize Look and Feel’ 이라는 항목이 메뉴에 생겨야 하는데, Minimal 이라 그런지 이게 빠져있다.

sudo apt install lxappearance

설치 후, Customize Look and Feel 을 실행하여 Widget, Icon Theme 등을 설정해준다.
Icon themes 도 따로 설치해줄 필요가 있다.

sudo apt install xcursor-themes

마우스 포인터 크기 설정

아.. LXDE 여. 아직도 갈 길이 멀구나.
여기저기 찾아봤으나, 이걸 정해줄 수는 없나 보다.
다음 파일에서 수동으로 바꿔줘야 한단다.

~/.config/lxsession/LXDE/desktop.conf # 여기에서 다음 행을 찾고,

iGtk/CursorThemeSize=18 # 이 값을 적절히 조절한다.

Google Chrome 및 한국어 글꼴 설치.

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb
sudo apt install fonts-nanum

DPI, 아이콘 크기 설정

~/.Xresources 를 만들고, 다음 내용을 넣는다.

Xft.dpi: 96
Xft.antialias: true
Xft.rgba: rgb
Xft.hinting: true
Xft.hintstyle: hintslight

화면이 크기 때문에, 멀리서 보면 글자가 잘 보이질 않기에, DPI 를 적절히 높여줬다.

DPI 를 조정해도 아이콘 크기는 그대로다. 아이콘 크기를 바꾸려면, Panel Settings -> Geometry 에서 Height/Icon Size 를 조정한다. 38/36 정도면 적당하다.

입력기(fcitx) 설치.

sudo apt install im-config fcitx-hangul
im-config -n fcitx

물론, 드보락을 위한 자질구레한 설정도 필요하다.
그런데, LXDE 자체를 한국어로 바꾸는 건.. 어떻게 해야 하나?
굳이 한국어가 필요하진 않아서 그냥 내버려뒀다. (어차피 동영상 재생만 할 생각이므로..)


아직 서버(아파치, NFS 등등) 서비스를 설치하진 않았지만, LattePanda Delta 에서 LXDE 를 사용했을 때, 동영상 재생, 넷플릭스 재생엔 아무런 문제가 없다. 티어링 문제도 없고, 크롬/비발디를 설치한 뒤 Netflix 1080p Extension 을 설치하면 1080p 시청도 가능하며, 데스크탑에서 시청할 때와 화질 차이도 못 느낄 정도다.

Author: 아무도안

안녕하세요. 글 남겨주셔서 고맙습니다.