본문 바로가기
반응형

분류 전체보기131

[Linux] 사용자와 그룹 관리 사용자 제어 명령어 useradd - 사용자 추가 [root@localhost ~] man useradd# 옵션 확인 [root@localhost ~] useradd -u 1234 newuser2# id 지정 [root@localhost ~] useradd -g newGroup newuser3# 그룹 지정 [root@localhost ~] useradd -d /newHome newUser4# 홈 디렉토리 지정 [root@localhost ~] useradd -s /bin/csh nweUser5# 쉘 지정 쉘은 설정하지 않으면 기본으로 /bin/bash 로 되어있습니다. passwd - 사용자 비밀번호 변경 [root@localhost ~] passwd# root 비밀번호 변경 [root@localhost.. 2024. 3. 23.
[Vue] Vite 환경 변수 + axios전역 설정으로 개발/배포 URL 구분하기 Vite Proxy https://ko.vitejs.dev/config/server-options.html#server-proxy Vite Vite, 차세대 프런트엔드 개발 툴 ko.vitejs.dev vite.config.js export default defineConfig({ plugins: [vue()], server: { proxy: { '/api': { target: 'http://localhost:8080', changeOrigin: true, } } } }) server.proxy를 사용해서 /api/~ 요청시 서버 URL로 요청하게 설정 했지만 빌드했을때는 localhost가 아닌 배포된 서버 URL로 요청해야 합니다. 그래서 Vite에서 제공하는 Proxy 방법말고 다른 방법으로 설정하.. 2024. 3. 13.
[AWS] EBS 볼륨 축소(루트 볼륨 변경) EBS 루트 볼륨 변경 # 디스크 용량 확인 [ ~]$ df -h ... /dev/xvda 600G 49G 45G 9% / 현재 사용중인 용량은 루트 볼륨 용량의 9%밖에 되지 않습니다 루트 볼륨의 용량이 너무 커서 600G -> 100G 축소 하려고 합니다. 새로운 볼륨 생성 더 작은 크기의 볼륨을 생성하고 루트 볼륨을 바꿔주는 방법으로 진행했습니다. 생성한 볼륨도 인스턴스에 연결해 줍니다.(같은 가용 영역으로 생성!) # 블록 디바이스 목록 [ ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 600G 0 disk └─xvda1 202:1 0 600G 0 part / xvdf 202:80 0 100G 0 disk# new! 600.. 2024. 3. 13.
[AWS] EC2 인스턴스 /etc/fstab 편집 오류 (readonly) 문제 발생 blkid /dev/xvda 같은 블록 디바이스의 UUID를 출력합니다. /dev/xvda1: LABEL="/" UUID="UUID1" TYPE="xfs" PARTLABEL="Linux" PARTUUID="PARTUUID1" /dev/xvdf: UUID="UUID2" TYPE="xfs" 이런식으로 출력됩니다. xvda1으로 마운트 돼있는 걸 xvdf로 변경하려고 합니다. cat /etc/fstab /etc/fstab은 부팅시 자동으로 마운트 해주는 설정입니다. # UUID=UUID1 / xfs defaults,noatime 1 1 cat으로 확인해보니 이렇습니다 UUID2로 변경하겠습니다 vi /etc/fstab 해당 파일을 vi 편집기로 열고 # # UUID=UUID1 / xfs defaul.. 2023. 12. 11.
[Firebase] Functions private key 에러(deploy 실패) 문제 발생 firebase functions deploy에 실패했습니다. firebase deploy --only functions --debug 원인을 알기 위해 debug 모드로 Firebase Functions를 배포해봅니다. Function failed on loading user code. This is likely due to a bug in the user code. Error message: Provided module can't be loaded.\nIs there a syntax error in your code?\nDetailed stack trace: Error: Failed to parse private key: Error: Invalid PEM formatted message.\.. 2023. 12. 11.
[SpringBoot] DI 생성자 주입 생성자 주입 전 OrderServiceImpl.java public class OrderServiceImpl implements OrderService{ MemberRepository memberRepository = new MemoryMemberRepository();// DIP 위반! @Override public Order createOrder(Long memberId) { Member orderMember = memberRepository.findById(memberId); ... } } OrderServiceImpl이 MemberRepository(인터페이스) 뿐만 아니라 구현체인 MemoryMemberRepository에도 의존하고 있습니다. 만약 구현체를 MemoryMemberReposito.. 2023. 10. 26.
[PHP] AWS S3 업로드/다운로드 AWS 설정 AWS SDK 설치 composer require aws/aws-sdk-php composer.json, composer.lock 파일과 함께 종속성이 설치됩니다. AccessKey, SecretKey 얻기 IAM 대시보드에서 "사용자"를 선택하고 "사용자 생성" 버튼을 클릭하여 새 IAM 사용자를 생성합니다 권한 정책 중에 AmazonS3FullAccess를 검색해서 선택하고 다음 버튼을 누릅니다. 액세스 키를 다운로드 받으면 csv파일로 Access key ID와 Secret access key가 들어있습니다. 이 두 키를 가지고 업로드와 다운로드를 해보겠습니다. 업로드 form.php ... ... input에 업로드할 파일을 넣습니다 update.php // AWS SDK 로드 req.. 2023. 10. 17.
[SpringBoot] 프로젝트 빌드 및 실행 빌드 프로젝트 디렉토리를 보면 이렇습니다. 저는 프로젝트에서 바로 터미널에서 작업했습니다. ./gradlew build 위 명령어로 프로젝트를 빌드합니다. 그럼 프로젝트 안에 build라는 폴더가 새로 생겼습니다. cd build/libs 새로 생긴 build디렉토리 안의 libs 디렉토리로 이동합니다. SNAPSHOT.jar 파일이 생성되어 있는데, 이 파일로 실행시키겠습니다. SNAPSHOT -plain.jar를 실행하면 no main manifest attrubute, in ... 에러가 발생합니다. build폴더 지우고 재 빌드 ./gradlew clean 빌드가 잘 안됐다면 clean 명령어를 사용하면 build폴더가 삭제됩니다. ./gradlew clean build clean과 build를 .. 2023. 10. 17.
명령어 형식과 특징 명령어 형식 3주소 명령어 형식 원래 자료가 없어지지 않고 보전됨 프로그램 전체 길이가 짧아짐 명령어의 길이가 길어짐 메모리에 접근하는 횟수가 많아져서 수행시간이 길어짐 Operand 1과 Operand 2를 연산해서 Operand 3에 저장합니다 ADD 1(Operand1) 2(Operand2) = 3(Operand3) 2주소 명령어 형식 가장 일반적으로 사용되는 명령어 형식 처리 결과가 Operand 1에 저장됩니다 ADD 1(Operand1) 2(Operand2) = 3(Operand1) 1주소 명령어 형식 누산기(ACC)를 이용하여 연산함 LOAD 1(Operand1) = 1의 데이터를 ACC에 저장 ADD 2(Operand1) = 2의 데이터를 ACC에 저장된 데이터와 합 0주소 명령어 형식 모.. 2023. 9. 27.
JSP 내장 객체 내장 객체란? JSP 페이지가 서블릿으로 변환될 때 JSP 컨테이너가 자동으로 생성해서 제공해주는 객체 표현식(expression)과 스크립트릿(scriptlet)에서 프로그램을 편리하게 할 수 있습니다. 내장 객체의 영역 내장 객체의 영역은 다음과 같습니다. 내장 객체 종류 - 페이지 입 · 출력에 관련된 객체 - JSP 페이지가 처리되는 동안의 외부 환경 정보를 제공하는 객체 - JSP 페이지에 관련된 객체 - 에러에 관련된 객체 객체 변수 구분 영역 내용 request interface request 클라이언트의 HTTP 요청정보를 저장한 객체 response interface page HTTP 요청에 대한 응답정보를 저장한 객체 pageContext class page 응답 페이지 실행에 필요한 .. 2023. 9. 22.
[NestJS]TypeORM과 DB 컬럼 명명 규칙 기존 Entitynotice.entity.ts@Entity() export class Notice extends BaseEntity { @PrimaryGeneratedColumn() wr_no: number; @Column() wr_category: string; @Column() wr_subject: string; @Column() wr_content: string; @Column() wr_hit: number; @ManyToOne((type) => Member, (wr_writer) => wr_writer.mb_boards, { eager: false, }) wr_writer: Member; @Column() wr_date: Date; }간단한 게시판 Entity를 만들었습니다 TypeORM을 사용해.. 2023. 9. 21.
반가산기와 전가산기 반가산기 한자리 2진수 2개를 더하는 회로 합(SUM : S)와 캐리(Carry: C, 자리올림)를 계산하는 회로 기본 구조는 이런 식입니다. 4가지의 경우의 수를 모두 구하면 이렇게 되고 X Y C S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 표로 보면 다음과 같습니다. Carry는 X AND Y와 값이 같고, Sum은 X XOR Y와 같게 됩니다. 전가산기 2진수 한 자리 덧셈을 할 때 발생한 자리올림을 고려한 덧셈 2개의 반가산기와 한개의 OR이 필요 위와 같은 식으로 덧셈이 됩니다. 8가지의 경우의 수를 모두 구하면 이렇게 되고 X Y C¡(자리올림 값) C¡₊₁(Carry) S(X+Y+C¡) 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1.. 2023. 9. 19.
Docusign SDK (JWT Grant인증)전자 서명 빠른시작 / SDK https://developers.docusign.com/docs/esign-rest-api/quickstart/overview/ Quickstart overview Learn about what the DocuSign Quickstart enables you to do, how to use it, and how it differs from other DocuSign examples. developers.docusign.com 빠른 시작 가이드입니다. 조건이 PHP8.0이상이라고 해서 저는 빠른 시작을 하지 못했지만 버전이 된다면 편할 것 같습니다. https://developers.docusign.com/docs/esign-rest-api/sdks/php/setup-and-confi.. 2023. 9. 19.
논리게이트와 드 모르간 법칙 NOT 게이트 인버터(inverter)라고 부르기도 함 반전 또는 보수(complement)기능을 수행 INPUT OUTPUT A 0 1 1 0 입력이 0이면(0V) 출력은 1(5V), 입력이 1이면(5V) 출력은 0(0V) 하나의 입력 변수에 의해서 수행 X는 A바(bar) 또는 프라임(prime)이라고 읽음 AND 게이트 INPUT OUTPUT A B 0 0 0 1 0 0 0 1 0 1 1 1 입력이 2개인 AND 게이트인 경우, A=B=1(5V)일때 출력은 1(5V) 출력식은 도트를 사용하거나 생략, 읽을 때는 A and B 논리곱이라고 함 OR 게이트 INPUT OUTPUT A B 0 0 0 1 0 1 0 1 1 1 1 1 모든 입력이 0일 때만 0, 하나라도 1이면 1이 됨 출력식은 X=A+B,.. 2023. 9. 10.
10진 표현 pack형식/unpack형식, 2진 부동 소수점 unpack 형식 연산 불가능, 출력 가능 1바이트(8비트)를 존(zone)부분과 디지트(digit) 부분으로 구성 zone - 항상 1111(16진수 F)가 들어감 digit - 10진수 값이 BCD 코드로 들어감 가장 오른쪽 zone 부분에 부호가 들어감 양수인 경우 - 1100(16진수 C) 음수인 경우 - 1101(16진수 D) 부호가 없을 경우 - 1111(16진수 F) zone digit zone digit sign digit 1111(F) 1111(F) 양수 1100(C) 음수 1101(D) 없음 1111(F) 10진수 + 426을 언팩 10진수 형식으로 표현하면? 이런식으로 4 2 6 나눠서 표현할 수 있다 정답: F4F2C6 pack 형식 연산 가능, 출력 불가능 10진수 한자리를 표현하.. 2023. 9. 5.
패리티 비트, 해밍 코드 패리티 비트 - 에러 검출 코드 1비트의 오류를 검출만 가능, 교정은 불가합니다 홀수 패리티 짝수 패리티 코드 안의 '1'의 개수가 홀수로 되도록 코드 안의 '1'의 개수가 짝수로 되도록 홀수 패리티 1의 개수가 홀수가 되도록 0을 붙여서 송신합니다. 짝수 패리티 1의 개수가 짝수가 되도록 1을 붙여서 송신합니다. 해밍 코드 - 에러 검출 코드 1비트의 오류를 검출, 교정이 가능한 코드, 1,2,4,8비트가 오류 검출을 위한 패리티 비트 기본 구조는 이렇습니다. 여기서 BCD코드 1001에 대한 해밍 코드를 구하려면?(단, 짝수) 먼저 1001을 BCD코드에 대입합니다. 5, 6, 7에 4가 들어가 있는데 5 = 0, 6 = 0, 7 = 1 입니다. 1이 1개니 홀수입니다. 4에 1이 들어와야 짝수가 되.. 2023. 9. 5.
반응형