옛날 옛적 핸드폰용 마인크래프트에 레드스톤 회로가 없던 시절, 저는 자체적으로 회로 시스템인 "반짝이는 블록"이라는 것을 만들었어요.

폰마크가 BE가 아니라 PE였던 시절 이야기에요.


 

예전에 만든 회로 시스템

전등, 전선, 피스톤, 스위치 구현

스위치를 터치하면 스위치와 이어진 전선, 그 전선과 이어진 전등들은 켜지거나 꺼지고, 피스톤도 주변 블록들을 밀거나 당김

 

단, 전선은 무조건 한 가닥으로만 배치 가능

 

전선을 두 가닥 이상으로 배치하면 한쪽 경로에 연결된 회로만 작동

전선을 두 가닥 이상 나뉘었다가 다시 하나로 합쳐지는 구간이 있으면, 정상적으로 작동할 수도 있고 게임이 멈출 수도 있음

작동 방식

1. 스위치를 터치하면 상하전후좌우를 확인, 전선이 발견되면 해당 위치로 이동

2. 전선이 있는 위치에서 상하전후좌우를 확인, 전등이나 피스톤이 있다면 작동시키고, 전선이 있다면 해당 위치로 이동

 - 직전 위치로 다시 돌아가는 것을 방지하기 위해, 직전에 있었던 곳으로는 돌아가지 않도록 설정

3. 2를 무한 반복. 주변에 더 이상 이동할 전선이 있다면 반복 종료

회로가 나뉘면 안되던 이유?

가장 먼저 발견한 전선으로만 이동하였기에, 다른 전선은 확인조자 하지 않음. 따라서 한 가닥으로만 배치해야 정상 작동

과거의 저는 어차피 내가 내 맵에서 사용하려고 만든 것이기에, 그냥 한 가닥으로 배치했어요.

게임이 멈췄던 이유?

"직전 위치로 다시 돌아가는 것을 방지하기 위해, 직전에 있었던 곳으로는 돌아가지 않도록 설정"이라, 아래와 같이 배치하면, 저 네모난 곳 안에서 무한히 빙빙 돌기 시작.

그 무한반복이 게임이 멈추던 이유

 

당시 만들었던 회로 스크립트는 아주 옛날 마인크래프트 PE에서만 실행되기에, 레드스톤으로 구현

 

 

현재의 지식으로 판단해보면, 직전 방문 노드만 저장하는 유사 깊이우선탐색.

그래서 방문했던 모든 전선 블록들의 위치를 저장해서, 다시 돌아가지 않도록 구현했다면 게임이 멈추는 현상은 해결할 수 있었어요


다시 구현한 회로 시스템

전등, 전선, 스위치 구현

스위치를 터치하면 스위치와 이어진 전선, 그 전선과 이어진 전등들은 켜지거나 꺼짐. 피스톤 미구현

정상 작동하는 회로 구현이 목적이라, 굳이 피스톤은 구현하지 않음

 

 

스위치 블록을 터치하면 전등이 켜지거나 꺼짐

 

 

동일한 구조를 레드스톤 회로로 표현한 모습

 

 

전선을 두 가닥 이상으로 배치해도 상관 없고, 나뉘었다가 다시 합쳐지도록 배치해도 정상 작동

 

 

 

작동 방식 (깊이우선탐색, DFS)

1. 스위치를 터치하면 상하전후좌우를 확인, 전선이 발견되면 해당 위치로 이동. 빈 방문 목록을 만들어둠

2. 방문 목록에 현재 위치가 있다면 이전으로 돌아감

 - 방문 목록에 현재 위치가 없다면, 방문 목록에 현재 위치 추가

 - 현재 위치에서 상하전후좌우를 확인, 전등이나 피스톤이 있다면 작동시키고, 전선이 있다면 해당 위치로 이동

3. 2를 무한 반복. 모든 전선을 방문했다면 종료

 

대충 이런 순서대로 방문

 


따라서, 이렇게 개판으로 막 배치해도

 

정상 작동

 

 

그저 각 노드마다 간선이 최대 6개까지 연결 가능한 그래프를 탐색하는 것과 다를 바 없어요.

알고리즘 관련 지식이 없던 시절에는 열심히 머리 터지면서 구현해도 버그 2개가 있었는데, 지금 다시 구현해보니 DFS 딸깍해서 1시간 만에 완성

저 블록 이미지 그린 시간이랑 오류 수정한 시간 포함해서 1시간 안에 끝났어요.

 

사실 너비우선탐색 사용하려고 했는데, 완성하고 보니 깊이우선탐색이네요.

 

소스코드 (자바스크립트)

// 기존 MCPE에 존재하지 않은 새로운 블록을 추가하는 부분
Block.defineBlock(234, 'Sparkling Powder', [['sparkling_powder', 0]], 1, false, 11); //전선
Block.setDestroyTime(234, 1);
Block.setRenderLayer(234, 5);
Block.setLightOpacity(234, 0);
Block.defineBlock(235, 'Light Stone (on)', [['light_stone', 0]], 0, false, 0); //켜진 전등
Block.setLightLevel(235, 15);
Block.setDestroyTime(235, 1);
Block.defineBlock(236, 'Light Stone (off)', [['light_stone', 1]], 0, false, 0); //꺼진 전등
Block.setDestroyTime(236, 1);
Block.defineBlock(237, 'Switch', [['switch', 0]], 0, false, 0); //스위치
Block.setDestroyTime(237, 1);

// 숙이지 않은 상태로 스위치를 터치하면 탐색 시작
function useItem(x, y, z, itemId, blockId) { //블록 터치하면 작동
    if (blockId == 237) { //터치한 블록이 스위치라면
        if (Entity.isSneaking(Player.getEntity())) return; //터치한 사람이 숙이고 있다면 실행 중단
        dfs([], x, y, z, true); //탐색 시작
        preventDefault(); //기존에 실행될 내용 제거 (블록 설치 방지)
    }
}

// 깊이우선탐색
function dfs(checked, x, y, z, isStart) {
    var pos = x + ',' + y + ',' + z;
    
    
    // 이미 방문한 곳이면 아무것도 하지 않음
    // 깊이우선탐색.includes();가 없는 옛날에 만들어진 환경에서 구동하기에, .indexOf(); 사용
    if (checked.indexOf(pos) != -1) return;
    
    // 방문 목록에 추가
    checked.push(x + ',' + y + ',' + z);
    
    // 현재 위치에 있는 블록 확인
    var blockId = getTile(x, y, z);
    
    // 현재 위치에 있는 블록이 전등이라면 끄거나 켜기
    if (blockId == 235) {
        setTile(x, y, z, 236);
    } else if (blockId == 236) {
        setTile(x, y, z, 235);
    }

    // 현재 위치에 있는 블록이 전선이라면, 상하전후좌우 블록 전부 확인
    // 탐색 1회차인 경우(스위치 터치)도 상하전후좌우 블록 전부 확인
    if (blockId == 234 || isStart) {
        dfs(checked, x + 1, y, z);
        dfs(checked, x - 1, y, z);
        dfs(checked, x, y + 1, z);
        dfs(checked, x, y - 1, z);
        dfs(checked, x, y, z + 1);
        dfs(checked, x, y, z - 1);
    }
}

 

 

다운로드는 및 적용은 깃허브 참고

https://github.com/sinz32/MCPE-SparklingPowder

 

GitHub - sinz32/MCPE-SparklingPowder: 옛날 마인크래프드 PE 회로 스크립트 리메이크

옛날 마인크래프드 PE 회로 스크립트 리메이크. Contribute to sinz32/MCPE-SparklingPowder development by creating an account on GitHub.

github.com

여자친구 노래방번호 검색기를 웹사이트로 만들지, 안드로이드 앱으로 만들지 계속 고민되네요.

 

 

일단 레포는 만들어두긴 했는데


내용 추가) 일단 웹으로 제작 https://sinzdev.tistory.com/14

 

여친 노래방 번호 검색기는

일단 웹으로 만들었는데, 검색기라기 보다는 그냥 수록곡 목록에 가까워요.모든 곡 목록 다 적은 뒤에, 노래방번호 적는 방식으로 만들었어요. 한국 앨범에 수록된 노래도 넣고, 일본 앨범에 수

sinzdev.tistory.com

 

'게시판' 카테고리의 다른 글

프로젝트 백지화 : 산리쿠 철도  (2) 2025.09.21
카테고리를  (2) 2025.09.20
스킨을 아예 새로 만들까 생각 중인데  (2) 2025.09.15
이번 주는 커밋 쉬는 주  (4) 2025.08.25
블로그 개설!  (3) 2025.07.30

다음 명령어를 통해 배경화면을 바꿀 수 있어요.

$ hsetroot -full 파일경로

 

 

하지만 모니터의 해상도가 이미지의 해상도와 다르면 이런식으로 일부분이 검은색으로 되는데,

 

 

-full 대신 -cover를 사용하면

$ hsetroot -cover 파일경로

 

 

이미지의 중심을 기준으로 알아서 확대되면서 보기 좋게 맞춰져요.

 

윈도우에서 배경화면을 설정했을 때와 동일

오랜만에 잔디로 글씨적기 하는 중

 

깃허브에 커밋을 하면 저런식으로 커밋한 날 칸이 녹색으로 칠해지는데, 저걸로 이름적고 있어요.

이렇게라도 커밋을 해야할 이유를 만들지 않으면, 코딩을 하기만 하고 커밋을 하지 않는 일이 발생해요.

 

사실, 예전에 다른 계정으로 1일 N커밋 하면서 1년 내내 했던 글자를 적었던 적도 있어요.

'게시판' 카테고리의 다른 글

프로젝트 백지화 : 산리쿠 철도  (2) 2025.09.21
카테고리를  (2) 2025.09.20
스킨을 아예 새로 만들까 생각 중인데  (2) 2025.09.15
고민 중  (1) 2025.09.05
블로그 개설!  (3) 2025.07.30

몇 년 전에 이미, 안드로이드 스튜디오에 있던 이미지를 그대로 앱 아이콘으로 추가하는 기능이 정상적으로 작동하지 않도록 변경되었어요.

 

원래는 아래와 같은 방식으로 아이콘을 추가하면, 이미지를 그대로 아이콘으로 사용할 수 있었는데, 이제는 저런식으로 강제로 불투명한 배경을 넣어서 네모나게 만들어요.

배경색을 무조건 선택해야하며, 투명하게 설정하는 기능은 없어요.

 

 

어쩌면 최신버전에서는 배경을 투명하게 바꾸는 기능이 추가되었을지도 모르지만, 아무튼 제가 쓰는 버전에서는 그런 기능이 없어요.

 

 

하지만, Launcher Icons을 추가할 때, "Legacy Only" 대신 "Adaptive and Legacy"를 고른 뒤, 일단 Foreground Layer에 앱 아이콘으로 사용할 이미지를 불러오고,

 

 

Background Layer는 아무거나 설정하고 (저는 그냥 아무 배경색이나 선택)

 

 

Options에서는 3가지 모두 없어도 되는 관계로 No를 선택

Google Play Store Icon은 앱을 Play 스토어에 출시할 때 앱 아이콘으로 올리면 되는 아이콘도 같이 생성해주는 기능이지만, 어차피 개판으로 추가될 예정이니 그냥 No 고르세요.

 

 

아무튼 Next를 누르고 Finish를 누르면

 

 

이렇게 앱 아이콘과 아이콘을 구성하는 레이어들이 있는데, 위에서 선택했던 앱 아이콘으로 사용할 이미지는 foreground 부분으로 들어가니

 

저거 빼고 다 지워버리고

 

뒤에 붙은 _foreground를 때면

 

 

 

7년 정도 전에는 정상적으로 작동하던 ".png 이미지를 그대로 앱 아이콘으로 추가"하는 것과 동일한 결과물을 얻을 수 있어요.

 

 

전 android:roundIcon도 안쓰는지라 파일도 지우고 AndroidManifest.xml에서도 지웠어요.

 

 

앱 아이콘에도 반영된 모습

모든 앱의 아이콘은 무조건 정해진 모양이여야 한다는 쓸데없는 정책도 추가된 덕분에,

.png 이미지를 그대로 넣어도 이런식으로 그 모양 안에 기존 아이콘이 들어가있는 방식으로 나와요.

 

10년 정도 전에 출시된 스마트폰에서는 아이콘이 그대로 나오는 모습.

 

 

아무튼 저 카드 모양 아이콘은 좌우로 너무 긴 것 같으니 줄여야겠어요

다 아는 내용이라면 그냥 깃허브로 가시면 됩니다.

설치 방법이랑 웹에서 바로 볼 수 있는 데모 등 다 깃허브에 있어요.

https://github.com/sinz32/SinB-LightDM

 

GitHub - sinz32/SinB-LightDM: GFRIEND/VIVIS SinB Theme for lightdm-nody-greeter

GFRIEND/VIVIS SinB Theme for lightdm-nody-greeter. Contribute to sinz32/SinB-LightDM development by creating an account on GitHub.

github.com


리눅스에는 디스플레이 매니저라는 것이 있어요.

일반적인 사용자들에게는 그냥 컴퓨터 로그인 화면 정도로 보이지만, 그거 말고도 이런저런 기능들이 있어요.

 

디스플레이 매니저에는 GDM, SDDM, LightDM, LXDM, SliM 등 여러가지가 있는데, 저는 LightDM을 사용하고 있어요.

디스플레이 매니저의 유저 인터페이스를 greeter라고 부르는데, LightDM을 설치했다면 아마 대충 이렇게 생긴 lightdm-gtk-greeter라는 것을 사용하고 있을거예요.

lightdm-gtk-greeter

 

저거 말고도 웹 기반으로 만들어진 lightdm-webkit2-greeter, web-greeter, nody-greeter 등이 존재해요.

저는 직접 만든 여자친구 신비 LightDM 테마 적용을 위해, nody-greeter를 설치해서 lightdm-gtk-greeter 대신 사용하고 있어요.


리눅스 LightDM 여자친구/VIVIZ 신비 로그인 테마

이렇게 생겼어요. 배경 사진은 3년 전 비비지 활동 모습. 꽃

 

로컬 계정 이름이 적힌 부분을 클릭하면 나오는 계정 목록에서 계정을 선택한 뒤에, 비밀번호 입력란에 비밀번호를 입력한 후 엔터를 치면 로그인 가능

 

오른쪽 위에 있는 Power 버튼을 누르면 재부팅이나 시스템 종료가 가능하고,

 

 

그 옆에 있는 데스크톱 환경 이름을 누르면, 데스크톱 환경이나 창 관리자로 로그인할지 선택할 수 있어요.

 

테마 미리보기

다음 링크에서 미리 사용해볼 수 있어요. 16:9 FullHD 모니터를 기준으로 만들어진 테마에요.

해당 화면 비율을 가진 가진 모니터에서 전체화면을 하면 실제 적용 모습을 볼 수 있을거예요.

https://sinz32.github.io/SinB-LightDM/

 

SinB LightDM

 

sinz32.github.io

 

테마 설치 준비

일단 LightDM을 사용하지 않고 있다면, LightDM을 먼저 설치해야 해요.

다음 명령어들 중 본인 리눅스 배포판에 맞는 명령어로 설치해주세요. 이미 설치되어 있다면 최신버전으로 업데이트되거나, 사실상 아무 일도 일어나지 않을거예요.

# 데비안 계열 (우분투, 리눅스민트, 하모니카, 칼리리눅스 등)
$ sudo apt-get install lightdm

# 페도라 계열 (레드햇 등)
$ sudo dnf install lightdm lightdm-gtk

# 아치 계열 (만자로, 엔데버 등)
$ sudo pacman -S lightdm lightdm-gtk-greeter

 

그리고 이미 사용 중인 디스플레이매니저를 비활성화시키고, LightDM을 활성화시켜주세요.

$ sudo systemctl disable 기존에사용중이던디스플레이매니저
$ sudo systemctl enable lightdm

 

만약 그냥 우분투를 받아서 쓰고 계신다면 GDM을 사용 중이실 것이니, "sudo systemctl disable gdm"을 입력하시면 될거예요.

gdm, sddm, lxdm 등 다 적어보시면 뭐 하나는 걸릴 듯

 

그리고 이제 nody-greeter를 먼저 설치해야 해요.

설치 방법 및 설치에 필요한 요소는 해당 프로그램을 만든 개발자의 깃허브에 적혀있으니, 깃허브 참고

https://github.com/JezerM/nody-greeter

 

GitHub - JezerM/nody-greeter: LightDM greeter that allows to create wonderful themes with web technologies. Made in Node.js

LightDM greeter that allows to create wonderful themes with web technologies. Made in Node.js - JezerM/nody-greeter

github.com

 

 

테마 설치

다음과 같은 순서에요. 굳이 명령어로 하실 필요는 없고, 파일 관리자 같은 것을 열어서 직접 옮기시거나 해도 상관은 없어요.

 

1. 내 깃허브에 있는 테마 파일들을 컴퓨터로 복사

2. 복사한 파일들을, LightDM 테마들이 저장되는 폴더로 이동

 

$ git clone https://github.com/sinz32/SinB-LightDM
$ sudo mv SinB-LightDM /usr/share/web-greeter/themes/

 

3. nody-greeter가 해당 테마를 사용하도록 설정

 - "/etc/lightdm/web-greeter.yml" 파일을 열어서 "theme: ???" 부분에 테마 이름 작성

greeter:
    debug_mode: False
    detect_theme_errors: True
    screensaver_timeout: 0
    secure_mode: True
    theme: SinB-LightDM
    icon_theme:
    time_language:

 

4. LightDM이 nody-greeter를 greeter로 사용하도록 설정

 - "/etc/lightdm/lightdm.conf" 파일을 수정해서 nody-greeter를 사용하도록 설정해주세요.

 - 앞에 적힌 #이 주석을 의미하니, greeter-session=lightdm-gtk-greeter 앞에 #을 붙여서 주석처리하고, greeter-session=nody-greeter 앞에 있는 #을 지워서 주석을 해제하면 돼요.

 - greeter-session=nody-greeter라는 문구가 없다면 그냥 직접 적으시면 돼요.

 

사실 깃허브에는 4가 누락되어 있긴 한데, 오늘은 커밋을 하지 않는 날이니 최소 4일 뒤에 수정할 것 같네요.

 

아무튼 이제 컴퓨터를 재부팅하거나, lightdm을 재실행하면 테마가 적용된 모습을 볼 수 있을거예요.

 

뭐 어디가 이상하게 꼬이거나 해서 로그인을 못하게 되었다면, "Ctrl + Alt + F2"와 같은 단축키를 사용해서 CLI 환경으로 들어가서 바꾼 설정을 되돌리면 돼요.

원래 LightDM을 사용하지 않고 있었다면, CLI 환경에서 systemctl 명령어로 lightdm 비활성화 후 기존 디스플레이 매니저 활성화 후 재부팅

기존에 LightDM을 사용하고 있었다면, CLI 환경에서 vim 등으로 파일을 열어서 다시 lightdm-gtk-greeter를 사용하도록 변경 후 재부팅


VIVIZ 신비 배경화면

유입경로를 보니, 그냥 비비지 배경화면 찾으시는 분들도 보여서 저 배경 이미지도 따로 올려둡니다

이미지에 우클릭해서 저장하면 해상도가 엉망인 상태로 저장되니, 파일로 올려둔 걸로 받아가세요. 16:9 비율은 아니에요.

VIVIZ_신비_꽃_배경화면.jpg
7.53MB

 

 

신비가 비비지로 활동할 때 찍었던 사진이라, 여자친구가 아니라 비비지라고 적었어요.

팬카페에 올라온 커버곡 꽃 활동 사진

 

.html 파일 수정 등을 통해 만든 홈페이지를 주소를 입력하면 접속할 수 있게 만들기 위해서는, "웹사이트를 유지시켜주는 프로그램이 항상 실행중인 컴퓨터"가 필요해요.

본인 집 컴퓨터를 항상 켜두면서 웹 서버를 돌리고, 인터넷에 연결된 상태로 항상 유지하면서, 외부에서 본인 컴퓨터로 접속할 수 있도록 만드는 방법이 있고,

그런 역할을 할 컴퓨터를 다른 곳에서 빌리는 방법이 있어요.

 

물론, "홈페이지에 접속할 수 있도록 유지"하는 것과, "홈페이지의 주소를 유지하는 것"은 별개의 문제

 

약 3만원 또는 30달러 미만인 요금제만 서술. 참고로 저는 국내 호스팅 업체는 사실상 사용하지 않아요. 해외 VPS 사용 중


웹호스팅

"웹사이트 유지에 필요한 기본적인 것들이 알아서 다 설치된 항상 켜진 상태인 컴퓨터"를 빌려주는 서비스

사용자 입장에서는 .html 파일만 올리면 끝나요.

다만, "알아서 다 해준다"는 것은 "안해준 것은 사용할 수 없다"는 뜻. 종종 설치비도 받아감

예를 들면, 나는 node.js나 Python을 사용하고 싶어도, 사용 중인 웹호스팅이 php만 지원한다면 php만 쓸 수 있어요.

 

깃허브 페이지

 - 무료. 백엔드 사용 불가능. 정적 페이지만 사용 가능.

 - 그냥 .html 파일 정도만 보여주는게 끝이라면 그냥 깃허브 저장소를 홈페이지처럼 호스팅해주는 기능을 사용해도 돼요.

Cloudflare Pages

 - 무료. 아직 전 안써봤어요.

 

Cafe 24 호스팅 (카페24)

뉴아우토반 호스팅. 기본 도메인 제공. 백엔드로 php만 사용 가능

가격 용량 일일 트레픽 제한 서브도메인 수 제한
500원 700MB 1.6GB 0개
1500원 1.4GB 4GB 0개
7000원 4GB 10GB 0개
12000원 8GB 20GB 20개
24000원 14GB 40GB 30개

 

 

JSP 호스팅

가격 용량 일일 트래픽 제한 JVM RAM 도메인 연결 수 제한 서브도메인 수 제한
2200원 400MB 1.2GB 64MB 1개 0개
3300원 900MB 1.5GB 64MB 2ㅐ 0개
5500원 2GB 4.5GB 128MB 5개 0개
11000원 4GB 10.5GB 128MB 8개 20개
22000원 7GB 30GB 256MB 10개 30개

 

node.js 호스팅. 앱마다 도메인 1개 연결 가능

가격 용량 일일 트래픽 제한 RAM 앱 개수 제한
500원 400MB 600MB 300MB 1개
1100원 800MB 800MB 400MB 2개
5500원 2GB 2.5GB 500MB 4개
11000원 4GB 5.5GB 600MB 6개
22000원 6GB 10GB 700MB 10개

 

매니지드 워드프레스

가격 용량 일일 트래픽 제한 연결 가능한 도메인 수 제한
500원 500MB 800MB 1개
1100원 1GB 1.5GB 2개
5500원 3GB 3.6GB 5개
19800원 10GB 14GB 10개
33000원 10GB 500GB 20개

 

 

이것저것 추가된 애드센스 워드프레스도 있는데, 귀찮으니 패스

단독 웹호스팅은 최소 5만원부터 시작.

 

닷홈 (Dothome)

무료 호스팅에 도메인을 언결하기 위해서는 월 500원 요금제 가입 필요. 옛날에는 닷홈에서 구매한 도메인 한정으로 무료로 해줬는데, 이제는 돈받아요. 백엔드로 php만 사용 가능

가격 용량 월간 트래픽 제한
무료 500MB 15GB
무료 + 500원 750MB 22.5GB
1000원 1.5GB 90GB
5000원 5GB 210GB
10000원 10GB 450GB
30000원 15GB 무제한

 

단독 웹호스팅은 최소 5만원부터 시작.

 

개인적으로, 웹개발 찍먹용이라면 깃허브 페이지나 닷홈 무료 호스팅을 추천하는데, 닷홈을 쓴다면 언젠가에는 닷홈 밖으로 탈출하는 것을 권장해요.

닷홈에서 도메인을 구매하면 닷네임코리아라는 곳에서 구매하게 되는데, 구글에 닷네임코리아라를 한 번 검색하시면서 자동완성되는 것을 한 번 보세요.

 

호스팅케이알 (hosting.kr)

3만원을 넘는 요금제는 생략

 

리눅스 + php

가격 용량 월간 트래픽 제한
4500원 1GB 30GB
9500원 1GB 무제한
15000원 5GB 180GB
20000원 5GB 무제한

 

 

윈도우 + ASP

가격 용량 월간 트래픽 제한
9000원 1GB 30GB
19000원 1GB 무제한
30000원 5GB 180GB

 

 

윈도우 + ASP.NET

가격 용량 월간 트래픽 제한
11000원 1GB 30GB
24000원 1GB 무제한

 

가비아

가격 용량 월간 트래픽 제한 도메인 수 제한 운영체제
1000원 300MB 10GB 1개 리눅스
4900원 2GB 30GB 10개 리눅스
11900원 2GB 30GB 10개 윈도우

 

 

 


가상 서버 (VPS)

"아무것도 설치되지 않은 항상 켜진 상태인 컴퓨터" 그 자체를 빌려주는 서비스

사용자가 직접 다 설치해야 해요. "내가 알아서 다 해야 한다"는 "내맘대로 다 할 수 있다"는 뜻

서버쪽 언어로 node.js든 Python이든 php든 자바 스프링이든 내가 쓰고 싶은거 설치해서 쓰면 돼요.

위에서 언급한 연결 가능한 도메인 수 제한 같은 것도 그냥, 내가 알아서 가상 호스트 사용해서 원하는 만큼 다 연결시킬 수 있어요.

대신, "웹사이트를 유지시켜주는 프로그램"도 알아서 설치해야 하고, FTP로 .html 파일을 올리고 싶다면 그것도 알아서 다 설치 및 설정해야 해요.

 

Cafe 24 (카페24)

가격 용량 RAM 월간 트래픽 제한
5500원 30GB 1GB 300GB
11000원 40GB 2GB 500GB
16500원 50GB 3GB 800GB
33000원 100GB 4GB 1.2TB

 

AWS Lightsail

1년 동안 무료로 사용 가능

 

IPv4 지원

가격 CPU RAM SSD 월간 트래픽 제한 운영체제
$ 5 2개 0.5GB 20GB 1TB 리눅스 또는 유닉스
$ 7 2개 1GB 40GB 2TB 리눅스 또는 유닉스
$ 9.5 2개 0.5GB 30GB 1TB 윈도우
$ 12 2개 2GB 60GB 3TB 리눅스 또는 유닉스
$ 14 2개 1GB 40GB 2TB 윈도우
$ 22 2개 2GB 60GB 3TB 윈도우
$ 24 2개 4GB 80GB 4TB 리눅스 또는 유닉스

 

IPv6만 지원

가격 CPU RAM SSD 월간 트래픽 제한 운영체제
$ 3.5 2개 512MB 20GB 1TB 리눅스 또는 유닉스
$ 5 2개 1GB 40GB 2TB 리눅스 또는 유닉스
$ 8 2개 512MB 30GB 1TB 윈도우
$ 10 2개 2GB 60GB 3TB 리눅스 또는 유닉스
$ 12 2개 1GB 40GB 2TB 윈도우
$ 20 2개 2GB 60GB 3TB 윈도우
$ 20 2개 4GB 80GB 4TB 리눅스 또는 유닉스

 

Vultr (벌쳐)

EPYC는 AMD에서 만든, Xeon은 Intel에서 만든 서버용 고성능 CPU에요.

기본적으로 디도스 방어를 지원하나, 크게 의미가 없다는 평가가 있어요.

가격 CPU RAM SSD 월간 트래픽 제한 비고
$ 2.5 1개 0.5GB 10GB 0.5TB IPv6만 지원
$ 3.5 1개 0.5GB 10GB 0.5TB  
$ 5 1개 1GB 25GB 1TB  
$ 6 1개 1GB 25GB 2TB EPYC 또는 Xeon
$ 6 1개 1GB 32GB 1TB Xeon 3GHz+
$ 10 1개 2GB 55GB 2TB  
$ 12 1개 2GB 50GB 3TB EPYC 또는 Xeon
$ 12 1개 2GB 32GB 2TB Xeon 3GHz+
$ 15 2개 2GB 65GB 3TB  
$ 18 2개 2GB 60GB 4TB EPYC 또는 Xeon
$ 18 2개 2GB 80GB 3TB Xeon 3GHz+
$ 20 2개 4GB 80GB 3TB  
$ 24 2개 4GB 100GB 5TB EPYC 또는 Xeon
$ 24 2개 4GB 128GB 3TB Xeon 3GHz+
$ 28 1개 2GB 25GB 4TB  
$ 30 1개 4GB 30GB 4TB  

 

제 홈페이지가 현재 벌쳐로 유지되고 있어요. 서울 리전 사용시 종종 데이터센터 정전 등으로 인해 서버가 재부팅되는 경우가 있어요.

가격이 너무 낮은 요금제를 고른다면 일부 리전을 사용할 수 없어요.

Digital Ocean (디지털 오션)

가격 CPU RAM SSD 월간 트래픽 제한
$ 4 1개 512MiB 10GiB 500GiB
$ 6 1개 1GiB 25GiB 1000GiB
$ 12 1개 2GiB 50GiB 2000GiB
$ 18 2개 1GiB 60GiB 3000GiB
$ 24 2개 3GiB 80GiB 4000GiB

 

linode (리노드)

기본적으로 디도스 방어 지원. 한국 리전 미지원

가격 CPU RAM SSD 월간 트래픽 제한
$ 5 1개 1GB 25GB 1TB
$ 12 1개 2GB 50GB 2TB
$ 24 2개 4GB 80GB 4TB

 


 

사실 VPS 가격 알아보면서 웹호스팅들 가격도 함께 적었을 뿐, 제가 관심이 있는 쪽은 VPS에요.

리눅스 서버 직접 한 번 만져본 이후로, 내맘대로 다 할 수 있다는 높은 자유성 때문에 호스팅 못쓰는 중

'웹 개발' 카테고리의 다른 글

이상한 생각?  (0) 2025.10.05
React 찍먹은 해봐야하는데  (0) 2025.10.02
여친 노래방 번호 검색기는  (5) 2025.09.12

당분간은 깃허브에 커밋을 올리지 않는 날이니, 아마 다음 주 수요일에 공유할 것 같아요.

 

 

아무튼 신비 귀여움

BlackBox라는 창 관리자가 있었는데, 저걸 기반으로 Fluxbox와 Openbox가 만들어졌어요.

Openbox는 사실상 다시 새로 만들어진 상태라 더 이상 BlackBox 시절의 소스코드는 남아있지 않구요.

 

아무튼 전 Fluxbox를 사용할거예요. 멀쩡한 환경을 원하신다면 KDE Plasma 등을 사용하는 것을 권장해요.

여기서 하나하나 다 수동으로 설정하는 것들은 Plasma와 같은 데스크톱 환경을 사용한다면 자동으로 다 될거예요.

 

그냥 간단하게 설치하고 디자인이 예쁜 편리한 GUI 환경을 원하신다면 KDE Plasma 사용을 추천해요

설치 방법 : https://sinzdev.tistory.com/3

 

ArchLinux에 KDE Plasma 설치 (데스크톱 환경)

보시다싶이, 아치리치눅스만 설치하면 검은 화면에 하얀 글자만 있는 환경이 끝이에요.아치리눅스는 없어도 되는 것들은 전부 없애버리는데, GUI도 굳이 있을 필요는 없으니 없애버렸기 때문.

sinzdev.tistory.com

 

 

Fluxbox 설치하기

$ sudo pacman -S fluxbox xorg-server xorg-xinit xterm

 

xorg-server는 GUI 환경 사용을 위해 설치,

xorg-xinit은 startx 명령어 사용을 위해 설치

xterm은 터미널. fluxbox를 설치하면 터미널은 함께 설치되지 않고, 다음다음 사진처럼 startx를 하면 xterm이 3개 열리는지라, xterm이 없으면 오류가 뜨기 때문에 설치

 

아무튼 이제 로그인을 한 뒤에 startx를 입력하면,

 

이런식으로 터미널이 3개 나올텐데, 저기서 아무 터미널에 exec startfluxbox를 입력하면

 

 

이렇게 fluxbox를 사용할 수 있어요. 문제는 저 터미널들 중 하나를 닫으면 fluxbox도 같이 꺼져요.

 

로그인 화면 만들기

slim이라는 몹시 가벼운 DisplayManager도 있다고 들었는데, 전 그냥 전부터 사용하던 lightdm을 사용할거예요.

$ sudo pacman -S lightdm lightdm-gtk-greeter
$ sudo systemctl enable lightdm

 

 

이제 재부팅을 및 리눅스로 부팅하면 이런 로그인 화면이 나오고,

 

로그인을 하면 정상적으로 실행된 듯한 fluxbox가 나올거예요.

 

 

바탕화면 아무 곳에다가 마우스 오른쪽 클릭을 해서 메뉴를 열 수 있어요.

 

웹 브라우저 설치

분명 메뉴에 웹 브라우저인 firefox가 있는데, 눌러도 안켜질거예요. 이건 파이어폭스를 설치하지 않았기 때문이에요.

터미널(xterm)을 열어서 pacman -S firefox 명령어로 파이어폭스를 설치하면,

 

설치가 완료되어도 파이어폭스는 안켜질거예요. 사실 저 부분은 비어있기 때문.

그러니 vim .fluxbox/menu 명령어 등을 통해 메뉴를 구성하고 있는 파일을 열어서, 아래와 같이 적힌 부분을

[exec] (firefox) {}

 

 

아래와 같이 바꾸시면, 파이어폭스가 열릴거예요

[exec] (firefox) {firefox}

 

 

a 키를 눌러서 편집모드 진입, 내용 수정 후 ESC 키를 눌러서 편집모드 탈출, :wq 입력 후 엔터를 입력하여 저장 및 닫기

 

 

그냥 직감적으로 알 수 있는 것처럼

[exec] (메뉴에 보일 내용) {실행할 내용}

같은 구조에요.

 

아무튼 이제 파이어폭스가 잘 실행되네요.

 

파일 탐색기 설치

Gentoo 쪽에서는 thunar를 추천하던데, 전 평소에 사용하던 nemo를 사용할거예요.

$ sudo pacman -S nemo

 

설치 완료 후 터미널에 nemo를 입력하면 잘 켜지네요.

 

 

텍스트 편집기 설치

 

 

leafpad가 몹시 가볍다고 들었어요.

$ sudo pacman -S leafpad

 

 

물론 전 예전부터 사용하던 xed를 사용할거예요. 왼쪽은 xed, 오른쪽은 leafpad.

xed 설치는 sudo pacman -S xed로 가능

 

 

와 드디어 vim 탈출이다. .fluxbox 폴더에 있는 menu 파일을 수정해서 nemo와 xed를 추가했어요.

 

인터넷 연결 설정

nmtui를 사용하면 와이파이 연결 등이 가능한 화면이 출력되니, menu 파일에 nmtui를 추가했어요.

메뉴에 이것저것 추가한 것 최종본은 나중에 올릴 계획

 

시스템 종료 메뉴 등 추가

로그아웃은 이미 있으니 일단 그대로 복사 붙여넣기하고, 재부팅은 restart, 시스템 종료는 halt -p 명령어로 추가했어요.

halt 명령어만 사용하면 시스템만 끄고 기기 전원은 끄지 않는지라, 뒤에 -p까지 적어주어야 해요.

shutdown 명령어로도 끌 수 있지만, 일부 환경에서는 작동하지 않으니 참고

화면 해상도 조절

xrandr로 화면 해상도 조절이 가능하니 참고. 전 굳이 메뉴에는 넣지 않을거예요.

해상도만 바꾸고 싶으시다면 --rate 주사율 부분은 생략해도 되고, 모니터 목록은 xrandr만 입력하면 나올거예요.

$ xrandr --output 모니터이름 --mode 가로x세로 --rate 주사율

 

xrandr는 xorg-xrandr를 설치하면 사용할 수 있어요.

$ sudo pacman -S xorg-xrandr

화면 밝기 조절

xrandr로 화면 밝기 조절도 가능해요. 다른 사람들은 단축키를 따로 설정했던데, 일단 전 메뉴에만 넣어둘 생각이에요.

미래의 내가 단축키로 이것저것 설정해두겠지. 밝기는 0에서 1사이인 실수에요.

xrandr --output 모니터이름 --brightness 밝기

 

전 일단 하위메뉴를 따로 만들어서 25%, 50%, 75%, 100%로 넣어두었어요.

 

스크린샷

scrot를 사용하면 돼요.

$ sudo pacman -S scrot

 

scrot를 입력하면 바로 화면이 캡쳐되고, 저런식으로 뒤에 "-cd초"를 입력하면 해당 시간이 지난 뒤에 캡쳐 실행.

이번에도 하위메뉴로 뺀 뒤에, 일단 즉시 캡쳐, 2초 뒤 캡쳐, 5초 뒤 캡쳐를 넣어두었어요.

 

잠금화면 설정 또는 설치

전 lightdm을 사용하니, dm-tool lock 명령어로 화면을 잠구도록 만들었어요.

다른 가벼운 화면보호기를 원하신다면 xlock를 사용하면 돼요. pacman -S xlockmore로 설치 가능, xlock 명령어로 실행 가능.

 

xlock를 실행하면 화면보호기 같은 것이 랜덤으로 나오고, 아무 키나 누르면 아래와 같은 화면이 나와요. 여기서 비밀번호 입력 후 엔터를 치면 잠금이 풀려요.

 

하지만 전 dm-tool lock을 사용할 거예요.

한글 입력기 실행 및 설정

저번 글에서 pacman -S ibus ibus-hangul로 설치했던 ibus를 사용할거예요.

터미널에 ibus-setup을 입력하면 ibus 데몬을 실행할지 물어보고, Yes를 누르고 또 뭘 누르면

 

이렇게 ibus 설정 화면이 나올텐데, 저기서 Add 버튼 클릭

 

Korean 검색해서 선택한 뒤에

 

Hangul 선택 후 추가

 

 

아무튼 한글 입력이 잘 되고 있어요. 한영키로 전환하는 기능은 단축키 추가 뒤적거리면서 능력것 추가하면 돼요.

딱히 추가를 하지 않더라도 알아서 작동할 수도 있어요.

 


자동으로 ibus를 실행시키는 방법이 있을텐데, 전 일단 귀찮으니 대충 메뉴에 추가했어요. "ibus start"로 추가하면 돼요.


 

추가할 만한 내용이 더 생각나면 이 게시글 뒤에 추가될 수도 있어요. 배경화면 설정이나 테마 변경 등은 따로 올릴 계획

아무튼 이건 menu 파일 중 제가 수정한 일부에요.

    [exec] (xterm) {xterm}
    [exec] (firefox) {firefox}
    [exec] (nemo) {nemo}
    [exec] (xed) {xed}
    [submenu] (system)
        [exec] (network) {xterm -e nmtui}
        [submenu] (brightness)
            [exec] (25%) {xrandr --output eDP-1 --brightness 0.25}
            [exec] (50%) {xrandr --output eDP-1 --brightness 0.5}
            [exec] (75%) {xrandr --output eDP-1 --brightness 0.75}
            [exec] (100%) {xrandr --output eDP-1 --brightness 1}
        [end]
    [exec] (ibus) {ibus start}
    [end]
    [submenu] (screenshot)
        [exec] (now) {scrot}
        [exec] (after 2s) {scrot -cd2}
        [exec] (after 5s) {scrot -cd5}
    [end]
    [submenu] (power)
        [exec] (lock) {dm-tool lock}
        [exit] (logout)
        [exec] (reboot) {reboot}
        [exec] (shutdown) {halt -p}
    [end]

 

 

대충 적용된 모습

 

 

이건 미리보기 이미지용 이미지.

 

 

Fluxbox에 테마 적용 등은 나중에 다룰 계획.

이건 FluxBox를 사용하는 BlackArch Linux의 모습인데, 테마 적용하면 나름 멋있거나 예쁘게 만들 수 있어요.

 

보시다싶이, 아치리치눅스만 설치하면 검은 화면에 하얀 글자만 있는 환경이 끝이에요.

아치리눅스는 없어도 되는 것들은 전부 없애버리는데, GUI도 굳이 있을 필요는 없으니 없애버렸기 때문.

 

아치리눅스 설치는 이전 게시글 참고 : https://sinzdev.tistory.com/2

 

서버에 올려두고 사용하거나 본인이 변태라면 저 정도로도 사용할 수 있겠지만, 전 그런 변태가 아니니 KDE에서 만든 Plasma라는 데스크톱 환경을 설치할거예요. KDE는 독일어라서 카데에라고 발음해요.

KDE라는 이름을 가진 곳에서 KDE라는 이름을 가진 데스크톱 환경을 만들었는데, 이후에 데스크톱 환경의 이름만 Plasma로 바꾸었어요. 하지만 그래도 KDE라고 불리는 중

데스크톱 환경 설치 (KDE Plasma)

방법1) 필요한 것만 설치

 

진짜로 필요한 데스크톱 환경만 설치되고, 터미널과 파일 탐색기, 웹 브라우저 등은 함께 설치되지 않아요.

아래 명령어에서 따로 설치하는 konsole는 터미널이고 dolphin은 파일 탐색기, firefox는 웹 브라우저인 파이어폭스에요. 

 

$ sudo pacman -S plasma konsole dolphin firefox

 

 

방법2) 그냥 다 설치

 

터미널, 파일 탐색기, 메모장 등도 다 함께 설치되는데, 그만큼 용량을 많이 차지할거예요.

웹 브라우저는 크롬이나 파이어폭스가 아닌, Falkon으로 설치될거예요. 팔콘의 옛날 이름은 QupZilla.

sudo pacman -S kde kde-applications-meta

 

 

 

아무튼 이제 설치가 끝났다면 플라즈마의 디스플레이 매니저인 SDDM 활성화

$ sudo systemctl enable sddm

 

 

reboot 명령어 등을 통해 재부팅을 하면, 이제 이렇게 GUI로 이루어진 로그인 화면이 나올거예요.

 

 

저기서 로그인을 하면 이렇게 데스크톱 환경인 KDE Plasma가 나와요.

 

 

한글 폰트 & 한글 입력기 설치 및 설정

 

설치 명령어는 이전 게시글에서도 언급했어요.

sudo pacman -S noto-fonts-cjk ibus ibus-hangul

 

 

아무튼 iBus 설정을 실행하고

 

 

Input Method에서 Add 버튼을 눌러서

 

 

세로로 점점점 되어있는거 누르고 Korean 검색 및 선택 후

 

 

Hangul을 추가하면 돼요.

 

 

아무튼 한글 입력 잘 되는 듯. 한영키로 전환하는건 알아서 될 수도 있고 안 될 수도 있어요.

리눅스 실행시 자동으로 한글 입력기도 같이 켜지는 것은 능력것 설정해보세요.

 

 

위 스크린샷 속 KWrite는 KDE에 기본적으로 같이 딸려있는 메모장 같은 프로그램인데, 위에서 필요한 것만 설치하셨다면 함께 설치되어있지는 않을거예요.

 

로그인 화면 디자인 변경

사실 저거 로그인 화면이 조금 몬생기긴 했다.

sddm을 검색하면 나오는 Login Screen 화면에 들어가서

 

 

로그인 화면을 바꿀 수 있다. 여기서 원하는 디자인을 선택하면 되는데, 여기서 모습을 바꾸면 기존에 있던 저 몬생긴 모습으로 되돌릴 수 없다.

 

 

아무튼 바뀐 로그인 화면 모습

 

 

로그인 화면 말고도, 테마 적용 등을 통해 싹 다 바꿀 수 있다.

+ Recent posts