메타코드 정처기 필기 1강 https://www.metacodes.co.kr/edu/read2.nx?M2_IDX=30659&page=1&sc_is_discount=&sc_is_new=&EP_IDX=14668&EM_IDX=14492 [40% 최대 할인 / 25.01.06까지] 2025 정보처리기사 필기 합격 올인원ㅣ기출문제 풀이 포함 www.metacodes.co.kr 1강 - 소프트웨어 설계 ◼️ 요구사항 확인▪️ 요구 사항 분석- 소프트웨어가 무엇을 해야 하는가를 추적해 요구사항 명세를 작성하는 작업으로, 사용자의 요구를 추출해 목표를 정하고 어떤 방식으로 해결할 것인지 결정하는 단계- 소프트웨어 개발의 출발점이면서 실질적인 첫번째 단계 ▪️ 요구 사항 분석 특징- 개발 비용이 많이 드는 단계는 아..
ubuntu에서 하드 디스크(HDD)를 마운트 하다가 superblock이 손상되어서 복구를 해야 했다.superblock을 복구하기 위해서는 대체 superblock을 확인하고 그걸로 복구한 후 재마운트 해주면 된다! 1. 대체 가능한 superblock 확인sudo dumpe2fs /dev/sda1 | grep -i superblock-> 여기서 출력된 superblock 번호로 복구를 진행하면 된다. 2. 대체 superblock으로 복구sudo fsck -b "대체 번호" /dev/sda1 3. 재 마운트이후 /etc/fstab 에서 변경 된 UUID로 수정 해 준 후 저장 해 주면 된다.sudo mount -t ext4 /dev/sdb1 /mnt/HARDsudo mount -a 4. 확인..
1. 디스크 확인sudo fdisk -l물리적으로 연결된 하드디스크가 제대로 인식이 되고 있는지, 경로는 어디인지 확인부터 해야 한다.제대로 하드디스크가 인식이 된다면 위처럼 /dev/sdb 또는 /dev/sda 경로로 용량과 같이 뜬다. 2. 파티션 생성ubuntu는 파일 시스템 상 4TB 이상의 디스크를 한번에 마운트 할 수 없어 정상적으로 마운트하려면 조금 다른 과정을 거쳐야 한다.sudo parted /dev/sdb이렇게 하면 (parted)가 생기게 되면서 파티션 초기화를 할 수 있는 환경이 된다.mklabel gptunit TBmkpart primary 0.00TB 8.00TBprint순서대로 명령어들을 입력 해 준 후 print를 하면 파티션 정보를 확인할 수 있다."q"를 입력해서 par..
python의 __future__ 문 중에서 from __future__ import annotations는 함수나 클래스가 정의될 때 타입 힌트를 평가하지 않고 문자열 형태로 저장한다. 코드 작성과 유지보수가 훨씬 간단해지며 다음과 같은 상황에서 유용하다. 1. forward reference 간소화두 클래스가 서로 참조해야 할 때, 타임 이름을 문자열로 감싸야 'NameError'가 발생하지 않았는데 from __future__ import annotations를 사용하면 문자열로 감쌀 필요가 없다.class A: def __init__(self, b: 'B'): # 문자열로 감싸야 함 self.b = bclass B: def __init__(self, a: 'A'): ..
종종 도커 컨테이너에서 작업을 한 결과물을 다른 서버로 옮길 때 scp를 사용하는데 scp: Permission denied를 마주할 때가 있다.. 도커 컨테이너 내에서 생성된 폴더 및 파일들이 전부 root 계정에서 생성 되었기 때문에 생기는 문제로 두 가지 방법으로 해결할 수 있다. 1. 권한 부여먼저 이동하고자 하는 폴더 및 파일의 권한을 확인 후 쓰기 권한이 없다면 부여 해 주면 된다.r은 읽기 권한, w는 쓰기, x는 실행 권한으로 옮기고자 하는 대상에 w 권한이 없다면 부여 해 줘야 한다.sudo chmod 777 "target file" 2. 소유자 변경권한을 부여했는데도 동일한 에러가 발생한다면 소유자를 변경 해 줘야 한다.root 계정에서 생성한 파일을 user 계정으로 scp를 통해 ..
conda가 설치 되어 있는 pytorch docker image로 컨테이너를 생성했는데 conda activate 명령어로 가상환경이 활성화가 안되는 문제를 마주했다. 시키는대로 shell을 닫고 재시작 후 conda init bash를 했는데 별 다른 변화가 없었다. 찾아보니 conda가 설치된 경로에 있는 파일로 직접 가상환경을 활성화 해 주면 conda activate로도 활성화를 할 수 있다고 한다.위 사진에서 conda 가상환경 실행 스크립트의 경로는여기이다. source /opt/conda/etc/profile.d/conda.sh이렇게 직접 가상환경을 활성화 해 주고 나면 conda activate 명령어로 가상환경이 활성화 된다.
putty ppk를 전달 받아서 aws 서버에 접속해서 작업 중이었는데 vscode에서 편하게 코드 작업을 하고자 vscode에 ssh 연결을 했다.vscode에서 ppk로 ssh 접속을 하는 건 처음이어서 여기저기 많이 찾아보면서 성공했다..! 1. putty install먼저 putty를 아래 사이트에서 설치를 해 줘야 한다.https://www.putty.org/ Download PuTTY - a free SSH and telnet client for WindowsIs Bitvise affiliated with PuTTY? Bitvise is not affiliated with PuTTY. We develop our SSH Server for Windows, which is compatible w..
https://school.programmers.co.kr/learn/courses/30/lessons/258712?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 제출 코드def solution(friends, gifts): answer = 0 n = len(friends) friend_dict = dict() for i in range(n): friend_dict[friends[i]] = i table = [[0] * n for _ in range(n)] gift_in..
특정 폴더 내에 있던 모든 파일들의 이름을 한번에 수정을 해야 했는데 코드를 짜서 실행 시키려니 더 좋은 방법이 없을까 알아보다가 rename 명령어를 알게 되었다.# ubunturename 's/old_string//g' *.txt # old_string을 지우는 명령어rename 's/old_string/new_string/g' *.txt # old_string 대신 new_string으로 대체하는 명령어ubuntu에서는 rename 명령어를 사용해서 터미널 상에서 현재 폴더에 있는 모든 파일들의 파일명에서 특정 문자를 삭제하거나 새로운 문자로 대체하는 등 수정할 수 있다. 윈도우에서도 동일한 작업을 하고 싶었는데 powershell에서는 rename 명령어가 먹히지 않았다.#..
YOLOv10: Real-Time End-to-End Object Detection, Ao Wang, et al., 2024 를 읽고 요약, 정리한 글입니다.github : https://github.com/THU-MIG/yolov10 ◼️contrbution- 기존 YOLO 아키텍쳐는 NMS에 대한 의존성이 높아 정확도는 향상시키지만 latency를 초래함.- 본 논문은 NMS 없는 YOLO 모델을 만들기 위해 이중 할당 전략을 제안하여 중복 예측 문제를 해결함.- 본 논문은 계산 중복을 줄이기 위해 lightweight classification head, spatial-channel decoupled downsampling, rank-guided block design을 포함한 아키텍쳐를 제안함. ..