태그 글 보관함: 문제 해결

엑스박스 시리즈 코디에서 SMB 사용하기

엑스박스 시리즈에서 코디(kodi)를 설치하면 최신 버전(내 경우 18.9)에서는 SMB를 지원하지 않는다.
윈도우에서 폴더 공유를 하면 SMB 로 공유 되기 때문에 윈도우에서 간단하게 공유해서 쓸때는 SMB를 많이 쓰게 되는데, 너무 불편해서 방법을 찾아봤다.

SMB 활성화 방법

애드온 -> 내 애드온 -> 가상 파일시스템 -> SMB Support(libsmb2) 선택한 상태에서 A 버튼을 누르고 있으면 팝업메뉴가 뜨는데 사용하기를 선택하면 활성화 된다.

코디 smb 활성화 상태
SMB 활성화하기 전에는 없었던 윈도우 네트워크(SMB) 가 추가되어 있다.

별것도 아닌데 이거 찾는데 꽤 고생했다.
SMB 쓰는 사람이 많을텐데 이걸 왜 꺼두는지 모르겠다.

Xbox series x 스피커 오디오 변경시 에러 코드 0x80bd0009

엑시엑을 오래된 PS3 시절 구닥다리 홈시어터 5.1ch 스피커로 연결해서 엑박 설정에서 5.1ch로 설정하려니 에러가 발생. 에러 코드 0x80bd0009.
검색 해 보니 엑시엑 이전부터 많은 사람들이 만나게 되는 에러인듯한데 한글로 된 설명은 없어서 써 본다.

에러코드 0x80bd0009

해결방법

설정-일반-TV와 디스플레이 옵션-비디오 화질 및 오버스캔-디스플레이
HDMI 선택 후, 수동 설정 사용 버튼 누르면 화면이 작아진다.
이전 설정 메뉴인 비디오 화질 및 오버스캔으로 되돌아 가서 해상도를 각자 TV나 모니터의 해상도로 다시 맞추면 화면 크기는 다시 돌아온다.

이제 설정-일반-볼륨과 오디오 출력-스피커 오디오
5.1 비압축이나 7.1 비압축이나 비트스트림 출력을 고르면 0x80bd0009 에러 없이 설정이 잘 된다.

출처: Xbox 1 error code 0x80bd0009

-끝-

golang sciter Unhandled sciter event case: 32768 문제해결

golang에서 sciter 예제 어플을 테스트하는데, 뷰단의 스크립트에서 네이티브 코드쪽 펑션을 호출하는 코드가 있으면 실행이 안된다.

에러코드. Unhandled sciter event case: 32768

sciter의 golang 바인딩인 go-sciter 문제였고, 깃허브의 이슈란에서 힌트를 얻어서 해결했다. https://github.com/sciter-sdk/go-sciter/issues/239
해결 방법은 go.mod 파일에서 go-sciter 버전을 최신버전으로 지정하면 된다.

go.mod

gcc 버전 바꿔보고 별쇼를 다 했는데 역시 포럼을 잘 봐야한다… ㅠㅠ

터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 20.04 LTS

글 제목을 바꾸었다.
터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 18.04 LTS에서 터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 20.04 LTS 로.
그렇다. 우분투 서버 20.04 도 터미널 컬러는 아래와 같이 바꾸면 된다.

터미널 컬러는 왜 기본이 아닐까…
우분투 서버 18.04 LTS/우분투 서버 20.04 LTS 설치하고 제일 먼저 해야하는 일.

홈디렉토리 이동 후 .bashrc 를 편집한다.

아래 줄을 찾아서 주석을 해제하자.

.bashrc 파일을 적용.

이전 글 우분투 서버 14.04 에서는 /etc/skel/.bashrc 파일을 가져와서 홈디렉토리의 .bashrc 파일을 덮어 썼는데 18.04 에선 바뀌었나…
어쨋든 위 방법으로 해결했다.

20.04 버전에서 설치하자마자 확인해 봤는데 /etc/skel/.bashrc 파일과 홈의 유저 디렉토리의 .bashrc 파일은 똑같았다.
그냥 force_color_prompt=yes 요걸 주석 해제하는 방법으로 가야한다.
 
 
관련글: 터미널 글자색 컬러가 나오게 하는 방법. 우분투 서버 14.04 LTS

Golang Postgresql 접속시 jdbc URI 사용할 때 이스케이프

Golang 에서 Postgresql 접속시 익숙한 JDBC URI 방식으로 접속 정보를 쓰고 싶었는데, 패스워드에 특수문자가 있어서 제대로 접속이 안된다. 패스워드의 특수문자는 이스케이프 해서 사용하는 방법을 설명한다.

Go 에서 Postgresql 접속하기

Go 에서 Postgresql 접속하는 방법을 검색하면 DB 접속 정보를 넣는 방법을 아래처럼 쓰고 있다.

위 코드에서는 호스트, 포트를 지정하지 않는데, 기본값인 localhost, 5432를 사용할 때는 지정하지 않아도 된다. 아래 lib/pq 문서를 보면 기본값이 나와있다.

lib/pq 문서 – https://pkg.go.dev/github.com/lib/pq?tab=doc

하지만, 고 어플리케이션을 항상 DB가 있는 서버에서 돌릴 것도 아니고, 호스트랑 포트만 써도 아래처럼 길어지게 된다.

난 간결한 URI 방식이 좋다. 다행히 lib/pq 문서에 보면 지원한단다. 바꿔서 써보자.

필요한 정보만 모아서 쓰니까 알아보기가 쉽다. 이게 잘 돌아가면 좋은데 말이지.
딱 보면 패스워드 부분의 특수문자가 문제가 되게 생겼다. 실제로 돌려보면 아래처럼 에러가 나고…

해결방법은 문제가 되는 패스워드를 이스케이프 처리하면 된다.

이스케이프 처리

아래 특수문자를 퍼센트 인코딩하면 된다.

wikipedia percent encoding
Wikipedia Percent-encoding – https://en.wikipedia.org/wiki/Percent-encoding

이스케이프한 패스워드는 아래처럼 된다.

이걸로는 접속 안된다. 콤마는 이스케이프 안해도 되더라. 콤마는 그대로 둔 아래 코드로 접속에 성공했다.

결론은 파싱에 방해가 되는 특수문자만 이스케이프 처리해 주면 되는듯하다.
 
 
패스워드에 특수문자 넣기 좋아하는 나 같은 사람들이나 생기는 문제라 이 글이 도움될 사람은 별로 없을 것 같은데, 이렇게 써두지 않으면 나중에 내가 또 같은 함정에 걸리게 되니까 포스팅해 둬야한다. ㅋ

여담

자바에서도 같은 문제가 있나해서 해 봤는데 애초에 유저명과 패스워드는 URI 에 포함하지 않고 따로 입력하게 되어 있어서 이스케이프 처리 없이도 잘 접속 되더라.
golang 에 lib/pq 도 같은 방식으로 만들지…
 
 
접속 테스트에 사용한 golang 에서 postgresql 접속해서 select 하는 소스코드
GOLANG POSTGRES 접속해서 필요없는 컬럼은 빼고 가져오기