본문 바로가기

전체 글

SSH로 원격 서버 접속 + VS Code로 SSH config 설정하기 필요한 정보 1. 서버를 포워딩할 포트 번호 2. 서버의 SSH 키 (또는 서버 계정 ID와 비밀번호) 3. 서버 IP(public IP. 즉 내가 로컬에서 접근할 수 있는) 주소 4. 서버 username ID와 비밀번호가 있다면 # 128.162.216.92 refers to arbitrary IP address(서버의 public IP 주소 예시를 의미) # -p 12345 -> port option 포워딩할 포트 주소 예시 ssh your_server_id@128.162.216.92 -p 12345 위와 같이 입력한 후, This key is not known by any other names Are you sure you want to continue connecting (yes/no/[fing.. 2022. 10. 13. 14:49

 ㆍ 

2023년 이전/리눅스
포트 포워딩하기 ssh -L : # 예시) ssh -L 4040:127.0.0.1:9080 aws_server1 2022. 7. 18. 14:35

 ㆍ 

2023년 이전/리눅스
git 브랜치 이름 바꾸기(로컬 & 리모트 저장소) 1. github 홈페이지에서 직접 repository settings > branch로 들어가 브랜치 이름을 바꾼다.(리모트 저장소 브랜치 이름을 바꾼 것) 2. 위 캡처 이미지대로 실행 git branch -u origin/main main 위 명령어를 이해하려면 우선 upstram branch라는 개념에 대해 이해해야 합니다: https://devconnected.com/how-to-set-upstream-branch-on-git/ git remote set-head origin -a 위 명령어에 대한 설명은 이 글이 잘 설명하고 있습니다: https://stackoverflow.com/questions/8839958/how-does-origin-head-get-set 2022. 6. 28. 14:28

 ㆍ 

2023년 이전/깃과 버전 관리
SCP를 이용하여 로컬과 원격 서버(UTM, AWS, 네이버 클라우드 등) 사이 파일 전송하기 먼저 제 로컬에서 UTM Ubuntu Linux 서버로 파일을 전송하는 법을 알아보겠습니다. 1. UTM 가상머신을 실행하여 로그인 후 현재 Linux 서버의 IP 주소 알아내기 [현재 입력하고 있는 터미널은 Linux 가상머신의 터미널] hostname -I 명령어를 입력합니다. 현재 리눅스 서버의 IP 주소는 192.168.64.2 이라고 바로 알려줍니다. 2. SSH가 제공하는 scp(secure copy) 명령어를 이용하여 파일 전송하기 로컬의 터미널에서 다음과 같이 명령어를 입력합니다. scp [file path to transfer] [username]@[IP address]:[file path to download] 참고로 대괄호 [](brackets)는 필수로 입력해야 하는 명령어를 의미하.. 2022. 6. 5. 19:32

 ㆍ 

2023년 이전/리눅스
fork() 함수의 사용 1. fork()를 호출했을 때 각 process의 데이터는 따로 나뉘어 저장되기 때문에 global variable인 int x도 마찬가지로 서로 영향을 주지 않습니다. #include // #include #include void fork1(){ int x = 1; pid_t pid = fork(); if( pid == 0 ){ printf("Child has x = %d\n", ++x); } else{ printf("Parent has x = %d\n", --x); } printf("Bye from process %d with x = %d\n", getpid(), x); } int main() { fork1(); return 0; } 출력 결과: 1. fork() 함수는 child process면 .. 2022. 6. 3. 18:59

 ㆍ 

2023년 이전/리눅스
fgets 함수의 예시 다음은 아래 IBM에서 fgets 함수에 대한 포스트 예시를 활용하여 작성한 코드입니다. https://www.ibm.com/docs/ko/i/7.3?topic=functions-fgets-read-string #include #define MAX_LEN 100 int main(int argc, char *argv[]) { FILE *stream; char line[MAX_LEN], *result; stream = fopen(argv[1], "rb"); int lineNum = 1; while ((result = fgets(line, MAX_LEN, stream)) != NULL){ printf("Line %d: %s\n", lineNum, result); lineNum++; } if (fclose(st.. 2022. 6. 3. 01:07

 ㆍ 

2023년 이전/C언어
포인터의 쓰임 1: 포인터의 복사본 만들기 + 포인터가 가리키는 값 참조하기 #include #include typedef unsigned char* pointer; int main() { unsigned int v1 = 0x1234CDEF; pointer orig; orig = (pointer) &v1; printf("v1: %#x orig: %#x\n", v1, orig); printf("orig[0]: %#x, orig[1]: %#x, orig[2]: %#x, orig[3]: %#x\n", orig[0], orig[1], orig[2], orig[3]); return 0; } /* 출력 결과 v1: 0x1234cdef orig: 0x6fdff1e8 orig[0]: 0xef, orig[1]: 0xcd, orig[2]: 0x34, orig[3]: 0x12 */ 1. unsign.. 2022. 4. 7. 20:48

 ㆍ 

2023년 이전/C언어
C언어: 공백을 구분해서 문자열 나누어 입력받기(feat. strtok 함수) 참고 사이트: https://www.techonthenet.com/c_language/standard_library_functions/string_h/strtok.php strtok 함수의 정의는 다음과 같습니다. char *strtok(char *s1, const char *s2); s1은 검색할 문자열, 다시 말해서 토큰으로 나눌 대상이 되는 문자열입니다. s2 또한 문자열이나, 이 문자열에는 delimiter(제거하고자 하는 문자)이 포함되어 있습니다. 예를 들어 공백 ' '과 개행문자 '\n'을 구분자로 문자열을 자르고 싶다면, s2를 " \n"으로 설정해서 넣으면 됩니다. 그리고 strtok 함수는 s1을 구분하여 얻어낸 토큰의 시작 주소를 담은 포인터를 반환합니다(포인터를 반환한다는 사실이 중.. 2022. 3. 28. 13:55

 ㆍ 

2023년 이전/C언어