IT 274

ubuntu 20.04 내 계정 한글 이름 폴더 영어로 일괄 변경하기

자꾸 까먹고 다시 설치할 일 있을 때마다 검색하게 되어 기록용으로 남깁니다. LANG=C xdg-user-dirs-gtk-update ls -l 영어로 잘 바뀌었어도 다시 부팅하면 폴더명을 한글 이름으로 바꿀거냐며 또 물어보게 되는데 어물쩡 잘못 선택하면 도루묵 됩니다. 다시 보이지 않는다는 체크 박스에 체크한 다음에 안바꾼다 선택하면 다시 귀찮게 하지 않습니다.!!

IT/System Digging 2021.11.17

오류 error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

기록용으로 남깁니다. 참고로 환경은 Ubuntu 20.04 입니다. make menuconfig 명령이 실행이 안되어서 확인해보니 제목과 같은 오류가 떠 있었고, 분명 ncurses 관련 패키지들이 설치되어 있음에도 불구하고 해당 오류가 뜨고 있었습니다. 구글을 뒤지다 보니 12.04 환경에서 비슷한 경험을 한 글이 있었습니다. 내용을 보니 설치된 패키지들은 64비트이고 32비트 라이브러리를 의존하는 프로그램은 해당 오류가 나올 수 있으니 해당 라이브러리를 설치해라고 설명이 되어 있었습니다. apt search ncurses 로 ncurses5* 과 libncurses5 관련 내용 중 설치 안되어 있는 것을 확인해서 그 중 하나를 설치했더니 문제가 해결되었습니다. sudo apt install libnc..

IT/gcc 2021.11.05

[python] magic number

기록용으로 남깁니다. 파이썬이 실행되어 생성되는 *.pyc 파일에는 사용된 파이썬 버전 정보가 파일 맨 처음 4바이트에 저장되어 있습니다. 보통은 bad magic number 등의 문제가 생기면 *.pyc 파일을 지우고 재생성하면 되는데 그렇지 못한 상황을 위해 기록으로 남깁니다. 문제가 되는 pyc 파일의 첫 4바이트를 little endian 으로 직접 읽어서 확인하셔도 되고, 정상적으로 접근 가능한 환경이 있는 경우에는 코드로 확인하셔도 됩니다. # python 2.x 대 import imp imp.get_magic().encode('hex') 'd1f20d0a' # python 3.x 대 import importlib importlib.util.MAGIC_NUMBER.hex() '420d0d0a..

IT/python 2021.10.05

[python][virtualenv] 이미 가상 환경이 구축된 이후 설치된 전역 패키지 가져오기..

기록용으로 남깁니다. virtualenv 를 사용하다 보니 왠만한 것은 source ~/wiznet/venvA/bin/activate 한 다음에 정상적으로 pip3 로 설치 가능하지만 apt 패키지로 제공되는 것들은 root 계정 권한으로 설치되기 때문에 이미 virtualenv 를 구성한 다음에는 이를 자동적으로 참조할 방법은 없습니다. 현재 확인한 방법으로는 이를 찾아서 수동으로 복사하는 것입니다. 일단 제가 설치한 apt 패키지는 rpi.gpio 패키지입니다. sudo apt install rpi.gpio 전역 저장소를 찾습니다. find /usr -name 'site-packages' /usr/lib/pypy/lib-python/2.7/site-packages /usr/local/lib/pytho..

IT/python 2021.09.13

[virtualbox] NAT 호스트와 가상머신간의 scp 파일 복사하기

기록용으로 남깁니다.환경게스트가상머신에 우분투 20.04 설치openssh-server 설치호스트윈도우10 wslwsl 에 openssh-server 설치virtualbox 네트워크는 NAT로 설정먼저 가상머신을 종료하고 해당 가상머신의 설정>>네트워크 항목을 들어갑니다.포트 포워딩 설정을 추가해줍니다.현재 제 윈도우 호스트 ip는 192.168.7.2 입니다. 가상머신인 우분투는 10.0.2.15입니다. 포트는 임의로 10022를 사용하겠다고 지정했습니다. 가상머신의 22번과 연결해놨죠.이제 가상 머신을 실행시켜서 터미널을 실행시킵니다.윈도우(WSL) -> 가상머신(ubuntu) 파일 복사윈도우의 WSL 터미널에서 명령을 내립니다. 아래 예제는 현재 ..

IT/virtualbox 2021.09.09

[RaspberryPi] 재부팅 없이 네트워크/와이파이 재시작하기

기록용으로 남깁니다. 다른 여러가지 방법들이 있지만 그런 것은 검색을 하시고 기본적인 리눅스에서도 동작할만한 cli 에서 내리는 명령을 소개합니다. 우선 내가 제어할 네트워크 인터페이스 이름을 확인합니다. 제 경우에는 wlan0 을 사용중에 있네요. pi@RPwiznet002:~ $ ip -4 -o addr 1: lo inet 127.0.0.1/8 scope host lo\ valid_lft forever preferred_lft forever 3: wlan0 inet 192.168.11.24/24 brd 192.168.11.255 scope global dynamic noprefixroute wlan0\ valid_lft 3493sec preferred_lft 3043sec 유선인 경우에 os 정책에 ..

IT/RaspberryPi 2021.08.20

[python3] a bytes like object is required not 'str' 오류

기록용으로 남깁니다. 제목과 같은 오류 발생시 split() 등의 함수를 사용할 때 나타날텐데 넘어온 값이 str 이 아니라 bytes 로 되어 있어서 발생하는 오류입니다. 혹시 모르니 type 으로 자료형을 확인하거나 print 로 직접 출력해서 bytes 로 되어 있는 것을 확인해봅시다. bytes -> str 은 간단합니다. string_variable.decode() 하면 str로 변환됩니다. 이 결과물에 split()을 하던 다른 함수를 사용하면 되겠습니다.

IT/python 2021.07.16

[python] 윈도우10에서 python.exe 실행 경로 확인하기

venv 나 virtualenv 를 쓸 때 내 환경이 내가 지정한 env 에 잘 연결되었나 확인하고 싶을 때가 있습니다. 참고 글에 따르면 sys.path 를 출력해보면 알 수 있다고 합니다. 다만 vscode 기준 해당 폴더의 터미널에서 python3 를 실행시켜서 출력해보면 여전히 전역 python 경로가 출력됩니다. python3.exe 자체가 PATH 가 전역으로 잡혀있는 바이너리로 실행이 되었기 때문인데요 해당 테스트 코드를 cmd 상에서 하지 않고 빈 .py 파일을 만들어서 해당 코드에서 확인하면 현재 venv 에 포함된 경로를 의존하고 있음을 확인할 수 있습니다. import sys for p in sys.path: print(p) # or just sys.path # print(sys.pa..

IT/python 2021.07.01