elmitash의 모든 글

일본에서 일하고 있는 자바 웹 어플리케이션 개발자.

Dell Inspiron 7472 윈도우11에서 업데이트 후, 터치패드 사용 불가 문제

윈도우 11 23H2 누적업데이트 설치 후, 터치패드에 투핑거 제스쳐라든가 마우스 버튼 기능 등이 작동하지 않는 문제가 있었다.
이전에도 이런 일이 있었는데, 그때는 Intel-HID-Event-Filter-Driver_33CDY_WIN_2.2.1.377_A11_04 드라이버 설치해서 고쳐졌던 기억이 있었는데 이번에는 안되더라.

장치 관리자에서 I2C HID 디바이스에 코드10 에러가 떠 있고, 장치를 시작할 수 없습니다.라고 되어있었다.
Intel-Serial-IO-Driver를 설치해 보라는 글이 있어서 그것도 해 봤지만, 안됨.

I2C HID DEVICE
여기 페이지에 matheus_ap씨 말대로 PS/2 마우스 장치를 제거하고 리부팅하면 기존 PS/2 마우스 드라이버 대신 다른 PS/2 마우스 드라이버가 설치 되면서
I2C HID 에 에러가 사라지고, 터치패드 기능이 모두 원래대로 돌아왔다. 만세!

며칠 후 다시 터치패드 스크롤 기능이 먹통이 되어서 PS/마우스 장치를 제거 했는데 커서가 사라지는 문제가 생겼다.
장치 관리자에서 I2C HID 디바이스가 다시 에러표시가 되어있어서 장치를 제거하고 새로고침(하드웨어 변경을 스캔)하니 고쳐졌다.
계속 이 문제가 생기는 듯…

Clipboard (copy, paste, cut) not working when dragging and dropping files in Swing

We’ll set the TransferHandler on the JTextArea to be a handler that can drag and drop files, which will overwrite the existing TransferHandler associated with the clipboard and make it disappear.

I couldn’t find a solution to this problem, even after hours of searching Stackoverflow, because it doesn’t happen unless the file is dropped into a JTextField or JTextArea.

This is where ChatGPT comes in as a savior.

I loved working with ChatGPT to find the answers.

Written in Korean.
https://chatgpt.com/share/8c34c15e-2d32-4c03-9ec0-f21ee0b6bd22

Below, the above is written in Korean.

JTextArea에 TransferHandler를 파일 드래그 앤 드롭이 가능한 핸들러로 설정하게 되는데 이렇게 하면 기존 클립보드와 연결된 TransferHandler가 덮어씌워져서 사라지게 된다.
JTextField나 JTextArea에 파일드롭을 하지 않으면 생기지 않은 문제여서 그런지 Stackoverflow를 몇시간 뒤져도 이 문제를 해결 할 방법이 없었다.
여기서 구세주 ChatGPT가 나타남.
ChatGPT와 함께 해답을 찾아가는 과정이 너무 좋았다.
https://chatgpt.com/share/8c34c15e-2d32-4c03-9ec0-f21ee0b6bd22

한글로 검색해서 들어올 사람은 없을것 같으니 DeepL로 번역한 영어로 씀.

이전에도 안풀리는 문제가 있어서 ChatGPT한테 물어보니 답은 아니어도 힌트를 얻어서 해결한 적이 있는데,
이번에는 ChatGPT가 해결 못하는 부분을 내가 힌트를 줘서 ChatGPT가 답을 찾는 장면이 나왔다.

이런건 구글 검색으로도 해결하지 못하는 문제라서 AI가 아주 인상적인 능력을 보여주는 것 같다.

우분투 데스크탑은 아직 못 써먹겠다.

24.04 LTS 버전이 나와서 노트북을 윈도우11->우분투 데스크탑으로 바꿔서 써 보려고 인스톨 했는데 온갖 문제에 시달리다 하루만에 포기하고 윈도우로 되돌아간다.

이하 내가 부딪힌 문제들.

내가 일본어 키보드를 쓰니 한/영 변환 문제는 이전에 쓴 글(커널 레벨로 우분투 키매핑 바꾸기 (일본어 키보드에서 한영키 사용)) 내용대로 해결을 했는데,
이것도 처음에 인터넷에서 검색해 보면 xmodmap으로 하라고하지만, xmodmap으로 해 보면 크롬 브라우저에서 먹히지 않거나, 브라우저를 재기동 안하면 안먹히거나, 스크린샷 키는 매핑이 안먹히거나 문제가 많아서 결국 keyd를 써서 깔끔하게 해결이 되었다. 하지만, keyd를 쓰는 방법은 옛날 글이라 찾기가 쉽지 않았다는거.

우분투 데스크탑 설치하고 기본 브라우저가 파이어폭스라 크롬 인스톨을 하려고 하는데 다운로드한 크롬의 .deb 파일은 더블클릭 실행으로는 인스톨이 안된다.
(추기: gdebi를 인스톨하면 gui에서 더블클릭 실행으로 인스톨 가능.)
dpkg -i xxx.deb로 설치가 되긴했는데 설치해도 아무런 반응이 없어서 재기동하고 다시 설치하니 그제서야 크롬이 인스톨 됨.
그리고 최종적으로 우분투 부팅 직후에 크롬을 실행하면 무반응하는 문제 때문에 왼도우로 돌아간다.

윈도우 설치 USB를 만드려고 우분투에서 bootable usb를 만드는 방법을 찾아봐도 이방법 저방법 많았고, 그 중에서 비교적 간단한걸 찾아서 윈도우 USB를 만들고 부팅해 봤더니 에러를 뿜고 있고…

우분투를 10년 전부터 가끔씩 깔아서 써 보고 있는데 이런식이면 제대로 쓰기가 힘들지…
우분투 서버야 잘 쓰고 있지만, 데스크탑은 일반인용으로 만드는 것일텐데 크롬 설치/실행 정도는 문제 없이 되야지.

추가로 일본어로 우분투를 인스톨한 이후에 발견한 문제점.
1. 스피커 볼륨을 90% 정도 올리기 전까지는 소리가 안남. 90% 정도 되는 특정 위치까지 볼륨을 올리면 급속도로 볼륨이 올라가 소리가 너무 크게 남. JBL Pebbles USB 스피커 사용 중.
2. 한국어를 처음에 인스톨 안할 경우에 ibus-korean인스톨을 하면 추가되는 한국어(Hangul) 이외에 ‘조선어,한국어’, ‘Korean 104/108’ 같은 입력 소스는 선택해도 한글을 못씀.

커널 레벨로 우분투 키매핑 바꾸기 (일본어 키보드에서 한영키 사용)

xmodmap을 사용하면 적용 안되는 어플(크롬이라던가…)이 많아서 커널 레벨로 키매핑 변경을 하는 keyd를 사용해서 일본어 키보드에 한/영 키를 넣어보자.

keyd github https://github.com/rvaiya/keyd
참고한 링크
https://superuser.com/questions/1785052/swapping-keys-with-xmodmap-doesnt-work-in-all-applications

우분투 24.04 데스트탑을 설치하면 git, make, gcc가 없어서 같이 설치했다.

keyd 설치

키 이름 확인 방법 키를 누를때 표시된다.

키 매핑 파일을 작성

아래 내용을 붙여 넣는다. 필요 없는 부분은 #으로 주석처리할것.
내가 사용하는 매핑 설정은 일본어 키보드에 스페이스바 오른쪽에 변환 키를 한/영 전환키로 바꾸는 것과
PrtScr키(keyd에서는 sysrq로 인식됨)를 Home키로, Insert키를 End키로 서로 바꾸는 것이다.

파일 저장 후 리로드하면 적용 된다.

내 키보드에 있는 키들을 바꿀 떄는 monitor로 확인하면 되지만 없는 키로 바꾸고 싶을 경우에는 리스트에서 골라보면 된다.
한/영 키를 찾을때 아래 커맨드를 입력해서 찾았다.

윈도우에서는 아래 어플로 변경하면 간단.
윈도우10 노트북 일본어 키보드에서 Sharp Keys로 한영키 설정

윈도우11 0x80004002 에러로 업데이트 불가 문제 해결

마소 스토어 앱에서 앱 업데이트가 안되길래 알아보니 윈도우 업데이트도 똑같은 0x80004002 에러로 안되고 있는 상태.

0x80004002 에러

0x80004002 에러로 검색해 보니 온갖 해결 방법이 있는데 제대로 된것 찾기가 힘들었지만 결국 찾아내서 해결했다.

출처 – https://www.reneelab.jp/0x80004002.html (일본어)

관리자 권한으로 CMD 실행
->윈도우키 누른 후에 cmd 검색하고 커맨드 프롬프트 위에서 마우스 오른쪽 클릭해서 관리자 권한으로 실행한다.

커맨드 프롬프트에서 아래 커맨드를 순서대로 입력한다.

ren은 rename으로 해당 폴더를 .old폴더로 바꾸는거니 추후 삭제해도 무방. 다른 문제가 생기면 원래대로 되돌리기 위해 .old를 붙여서 백업하는 것.

계속해서 아래 커맨드를 순서대로 입력한다.

이 커맨드를 실행하는 목적은 SoftwareDistribution, catroot2 폴더를 지우는것인데
그냥 지우면 이 폴더들을 사용하는 서비스들로 인해서 정상적으로 지워지지 않기 때문에 우선 서비스를 정지시키고, 폴더를 삭제(이동) 후, 서비스를 재시작하는 것이다.

이후 윈도우 재시작을 하고 나서 업데이트를 해 보면 잘 된다.
업데이트 중에 0x800706BA 에러가 나오는 경우도 있는데 잠시 시간(5분 10분?)을 두고 재시도하니 업데이트가 잘 된다.