본문 바로가기
반응형

linux33

Docker - M1 no matching manifest for linux/arm64/v8 in the manifest list entries 에러 no matching manifest for linux/arm64/v8 in the manifest list entries 이 에러는 현재 Docker를 이미지 빌드 혹은 가져오때 플랫폼에 맞는 타입이 없어서 나타난다. 필자는 M1에서 실행하였는데, 실제 M1은 Linux는 아니기 때문에 발생한다. 보통 M1과 같은 일반적이지 않은 클라이언트를 사용시 발생한다. 현재 클라이언트의 종류를 확인하고자 한다면, docker version 명령으로 알 수 있다. 이를 해결하기 위해서는 --platform 옵션을 사용해서 호환이 가능한 플랫폼으로 직접 지정하여 적용하여야 한다. M1의 경우 Linux와 호환이 가능하기 때문에 linux/amd64 혹은 linux로 지정하면 사용이 가능하다. 이는 Docker 이미.. 2024. 2. 29.
Logrotate 한시간 단위로 로그 생성하는 방법 Logrotate를 사용하여 한 시간 단위로 로그를 생성하려면 다음과 같은 방법을 사용할 수 있다. /etc/logrotate.conf 파일을 편집한다. 다음과 같은 설정을 추가한다. /var/log/my_log { rotate 1 daily hourly } 위 설정은 /var/log/my_log라는 로그 파일을 매일 한 시간 단위로 생성한다. 또는 다음과 같은 설정을 사용할 수도 있다. /var/log/my_log { rotate 1 daily compress dateext } 위 설정은 /var/log/my_log라는 로그 파일을 매일 한 시간 단위로 생성하고, 압축하며, 파일 이름에 날짜를 추가한다. 잘 동작하는지 Debugging mode를 통해서 확인할 수 있다. sudo logrotate -d.. 2024. 2. 29.
Linux - 메모리 PageCache/BufferCache/Shared 이해 메모리를 비우기 전에, 우선 먼저 메모리를 알아야 할 것 같다. free 명령을 이용해서 현재 메모리 상황을 보면 다음과 같다. 메모리는 현재 1GB(985Mbyte )가 전체이고, 현재 사용중인 메모리는 170Mbyte이고 비어있는 공간은 230Mbyte 이다. 이외 buff/cache가 있는데 이는 실제로 사용이 가능한 공간이라고 봐도 무방하다. 그래서 뒤에 available이라는 문구로 사용이 가능하다고 표현하고 있다. 그렇다면 buff/cache는 어떤 공간일까. 이와 관련있는 부분으로는 Pagecache와 BufferCache에 대해서 알아보도록 하겠습니다. PageCache/BufferCache PageCache와 BufferCache는 같은것 같지만 조금 다른게 구분이 필요하다. 먼저 Pag.. 2024. 2. 24.
Docker - 컨테이너에서 vi(vim) 편집기 사용하기 도커 이미지에서 긴급하게 작업을 진행해야 하는경우 vi 편집기를 사용해야 할 때 유용하다. 먼저 현재 자신 컨테이너의 정보를 확인한다. docker ps $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7c0bd248fced /asecurity/test:latest "bash -c /test…" 3 days ago Up 3 days test 이후 아래 명령을 이용해서 도커 컨테이너로 들어간다. 마지막에 bash를 입력해줘야 기본 명령어를 사용할 수 있다. docker exec -it 7c0bd248fced bash 성공적으로 도커 이미지에 들어왔다면 프롬프트를 확인할 수 있다. 이제 vi 에디터를 설치하도록 하자. apt-get upd.. 2024. 2. 23.
리눅스 - swappiness, Swap 조절 리눅스도 그렇고 윈도우도 그렇고 메모리가 부족해지면 보조 저장장치를 메모리로 사용하게 된다. DB나 Redis와 같은 고성능을 요구하는 어플리케이션의 경우 SWAP을 사용하게 되면 성능에 치명적인 영향을 미칠 수 있다. 따라서 아래와 같이 메모리 최적화를 위해 SWAP을 사용하지 않도록 적용하면, 효과적일 수 있다. /etc/sysctl.conf 파일을 편집한 후 다음과 같은 설정을 지정할 수 있다. vm.swappiness = [숫자값] 위 설정에서 [숫자값]은 원하는 swappiness 값을 지정한다. 예를 들어, swappiness 값을 0으로 설정하려면 다음과 같이 입력한다. sysctl -w vm.swappiness=0 또는 아래 명령을 통해서도 바로 적용이 가능하다. echo 0 >/proc/.. 2024. 2. 22.
Rufus - Linux/Ubutu 설치시 부팅 불가 오류 해결 UEFI/ISOHybrid 최근에 서피스 고에 리눅스를 설치해야 하는데, 부팅 USB로 인식하지 못하는 부분이 있어서 이를 해결하기 위해 다양하게 구성해본 결과 가장 큰 부분은 바로 GPT 로 설정해서 UEFI가 지원하는 USB로 만들어야 한다는 것이였다. GPT는 2010년 전에 대다수 컴퓨터 장비에서 지원하기 시작했기 때문에 2024년인 지금 사용하는 컴퓨터들은 대부분 지원한다고 보면 된다. ISOHybrid는 ISO모드로 사용해도 이상 없다는 것을 아래 이미지를 통해서 남긴다. ISO 이미지 모드이기 때문에 부팅이 않되는게 아니고, 부팅 로더에 문제이므로, ISO 모드로 이미지를 생성하도록 하자. 2024. 2. 18.
Nginx - Reverse Proxy로 활용하기 Docker 환경에서 모듈별로 나누어 관리하는 것이 관리의 편의성을 높이기 된다. 역활 별로 시스템 구성을 나누어 관리하면, 유지보수 및 관리 편의성이 좋기 때문에, Nginx 를 이용할 경우 Reverse Proxy를 이용해서 외부에서 연결되는 접점을 별도로 설정하는 방법에 대해서 정리보도록 하겠다. Nginx는 Reverse Proxy로 구성하는 방법은 기본적으로 location에 proxy_pass를 기입하여 구성할 수 있다. 여기에 추가적으로 Proxy 관련된 옵션을 이용하여 보다 Proxy 설정을 할 수 있다. 그리고 SSL 인증서를 구성한 경우 인증서 경로를 설정해 주어야 하는데, Certbot에서 구성시 확인되 인증서 파일 정보를 기입해 주면 된다. 무료 SSL 인증서인 Lets Encryp.. 2022. 12. 25.
Azure - Linux Disk Add in VM Azure에서 물론 AWS 역시 Disk를 추가하였다고 하더라도 바로 해당 머신에서 사용할 수 없고, 초기화 및 연결 작업을 해주어야 한다. 여기에서는 어떻게 연결이 가능한지 간단히 알아보도록 하겠다. 가장 먼저 진행할 부분은 Disk가 정상적으로 확인되는지이다. ls 명령과 lsblk 명령을 이용해서 연결 정보를 확인 할 수 있다. ls -alF /dev/disk/azure/scsi1 lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd" 아마 보통 처음 Disk를 연결하였다면, /dev/sdc에 연결되어 있을 것이다. 이를 파일 시스템을 지정하여 포맷을 진행하고, partprobe 유틸리티를 사용하여 커널이 새 파티션 및 파일 시스템을 인식하는지 확인하도록 하자. p.. 2022. 12. 13.
Mac/Linux - 로컬 CLI 에서 Base64 인코딩, 디코딩 하기 패스워드를 API에서 사용하거나 기록할 경우 Base64를 이용해야 하는 경우가 종종 발생한다. 문자열 전환 방법과 파일 전환 방법에 대해서 정리해보자. 1. 문자열 인코딩 문자열 전환은 echo 옵션을 이용해서 사용할 수 있다. 문자열 만 변환해야 하기 때문에 -n 옵션을 사용해서 줄바꿈 기호를 표시하지 않도록 한다. echo -n 'asecurity'|base64 YXNlY3VyaXR5 2. 문자열 디코딩 base64 에 -D 옵션을 제공한다. echo 'YXNlY3VyaXR5'|base64 -D asecurity% 3. 파일 인코딩 -i 옵션으로 사용이 가능하다. 파일을 Base64로 인코딩 하는 경우 내용이 출력 내용이 많고, 디코딩시 파일을 이용하는 것이 유용하기 때문에 -o 옵션을 함께 사용하.. 2022. 11. 1.
반응형