목록알쓸전컴 (343)
알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)
cfdisk 를 이용하는게 ssh 에서 가장 심플 하고 직관 적이여서 사용방법을 간략이 적습니다. sudo cfdisk /dev/sda 위와 같은 창이 뜨는데 여기서 리사이즈를 하면 증설이 쉽게 된다. 리사이즈를 하고 난뒤 본인 같은 경우 lmv 이라서 sudo pvresize /dev/sda4 sudo vgextend fabweb-vg /dev/sda4 sudo lvextend -l +100%FREE /dev/fabweb-vg/root /dev/sda4 sudo resize2fs /dev/mapper/fabweb--vg-root 같은 작업을 추가적으로 해 주었다. cfdisk 을 사용할 경우 본인의 경우는 아래와 같은 에러가 뜨면서 파티션 조정이 안되었기 때문 입니다. All primar..
해당 문제는 병렬 프로세스 처리중 몇몇 프로세스에서 반복된 루프에서 정지되는 현상이 있어 원인이 무었인지 파악하고자 필요해서 디버깅할때 유용한 방법 입니다. 아래와 같이 가상 환경의 python을 gdb의 인자와 함께 pid를 인자로 넘겨주고 gdb를 실행 시킵니다. sudo gdb /home/test/django_project/test/venv/bin/python 3398109 아래 명령어를 치면 (gdb) bt C코드로 된 스택 트레이스가 보이게 됩니다. 이를 python으로 변경하기 위해서는 해당 python 실행파일의 원본이 되는 소스 코드에 보면 위와 같은 gdb 폴더안에 libpython.py 파일이 있습니다. (gdb) source /home/bhkim/Python-3.10.10/Tools/..
JWT (Json Web Token) JWT는 Web에서는 주로 사용자의 인증을 할때 Access Token,Refresh Token 으로 많이 사용 됩니다. JWT는 주로 인증을 목적으로 사용 되게 됩니다. JWT (HS256) HS256의 Token의 인증 방식 HS256 알고리즘 인증 방식의 Token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.KQ6N4X4AiqAI7RMqD3gbNi-gVgheLz20jAO9gTxshNM HS256 방식 토큰 검증 방법 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMj..
Spring 을 사용할때 Pageable을 사용하면 multiple sort 를 하려면 sort query를 위와 같이 적용해서 보내 주어야 한다. 하지만 axios에서 const { data } = await axios.get("/test", { params: { page: 0, sort: ["testColumn1,asc","testColumn2"], }, }) 위처럼 보내면 http://127.0.0.1:8181/test?page=0&sort[]=testColumn1,asc&sort[]=testColumn2 http://127.0.0.1:8181/test?page=0&sort[]=testColumn1,asc&sort[]=testColumn2 위처럼 쿼리가 나가서 Spring Controller 에서 ..
apache2 서비스 실행 후 내가 만들 Bash 실행 apache2 서비스 실행후에 특정 Bash 실행 파일을 실행 시킬 작업이 있어서 찾아 보게 되었습니다. 방법은 /lib/systemd/system/apache2.service 파일을 수정 하는것 입니다. 저의 경우 일단 Bash 실행 파일을 /home/user/apache2StartAfter.sh 여기에 작성해 두었습니다. 1. sudo nano /lib/systemd/system/apache2.service 2. ExecStartPost 설정 추가 [Unit] Description=The Apache HTTP Server After=network.target remote-fs.target nss-lookup.target [Service] Type..
Apache2 Vue3(Vite) 배포 해당 과정은 Apache2 에 Vue3 프로젝트를 여러개 배포 한다는 과정에 작성 되어 있습니다. 응용하면 1개 배포는 쉽습니다. Vue3 프로젝트 vite.config.ts export default defineConfig({ plugins: [ vue() ], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, base: "/waferMap/", }) 저의 경우 base 를 "/waferMap" 으로 하여 접속 Url - http://배포주소:포트/waferMap 으로 설정 하도록 했습니다. Public 폴더안 img 참조 변경 저의 Vue Project 폴더 구조 안 Pu..
Apache2에서 Django 배포 재작성의 이유 최근에 python 버전의 다양화에 따른 mod_wsgi 의 실행 환경의 변화 Django의 많은 버전 업그레이드 DjangoRestFrameWork 인증 이슈(JWT 포함) ubuntu 에서 설정 디테일 하게 하기 위해. 위와 같은 이유로 배포 절차를 다시 작성 하게 되었습니다. Django Project 기본 정보 프로젝트 이름 : bwaferMap static 파일 경로: static collectstatic 경로: staticfiles settings.py STATIC_URL = '/bWaferMap/static/' STATICFILES_DIRS = [ BASE_DIR / 'static' ] STATIC_ROOT = os.path.join(BASE..
아래와 같이 입력해 줍니다. sudo sh -c "/usr/bin/printf '\xfe\xed\xfe\xed\x00\x00\x00\x02\x00\x00\x00\x00\xe2\x68\x6e\x45\xfb\x43\xdf\xa4\xd9\x92\xdd\x41\xce\xb6\xb2\x1c\x63\x30\xd7\x92' > /etc/ssl/certs/java/cacerts" sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 출처 multicloud.tistory.com/105
grpc.io/docs/languages/python/quickstart/ Quick start This guide gets you started with gRPC in Python with a simple working example. grpc.io 문서에는 툭 하니 아래와 같이 쓰라고 하고 설명을 읽었지만 이렇게 하면 helloworld_pb2.py , helloworld_pb2_grpc.py 가 생성 된다고 나오지만 Input 인자에 대한 이해가 부족해 한참을 헤메 었기에 적어 둔다. python -m grpc_tools.protoc -I../../protos --python_out=. --grpc_python_out=. ../../protos/helloworld.proto -I 옵션은 protos..
삽질 과정을 최대한 줄이려고 노력 했지만 영상 중간 중간에 삽질 과정이 들어가는군요 ... 해당 부분은 제가 oAuth2 Login lib가 어떤것인지 알아보고 이해하고 찍은 동영상 입니다. www.youtube.com/watch?v=3niJTyBUIPI 일단 OAuth2 의 Login의 테스트가 될 서버의 상태를 먼저 본뒤에 Login Lib 를 사용해 보겠습니다. http://10.20.10.114:8080/fAuth/#/login?clientId=TestAuth&redirectUri=http%3A%2F%2Flocalhost%3A8181%2Fresource%2FTEST2&scope=message.read%20message.write&state=123 이렇게 추가 적으로 OAuth2 에 필요한 정보를 ..