목록분류 전체보기 (64)
기록을 합시다.
whoami 명령어 : 현재 사용자가 로그인한 계정을 보여줌 telemain1@danhee:~$ whoami telemain1 w 명령어 : 접속해 있는 사용자 정보 및 시스템 정보를 화면에 출력 telemain1@danhee:~$ w 22:57:20 up 1:02, 0 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT useradd 명령어 : 시스템에 새로운 사용자 계정 추가, 루트 권한 필요 m 옵션 : 사용자 계정 추가 및 홈 디렉터리 생성(home/niniz 같은 거) telemain1@danhee:~$ sudo useradd -m niniz [sudo] password for telemain1: telem..
Udemy에서 약 4개월 정도의 강의 무료권을 얻었는데, 엄청 어려운 거 들으면 뭐 백퍼 열심히 안 들을 것 같고.. 원래 관심있었던 Go에 대한 초심자 강좌(?)를 듣기로 했다. Go 깔기 All releases - The Go Programming Language go.dev 위의 링크에 들어가서 자기 컴퓨터의 운영체제에 맞는 설치 프로그램을 다운로드 받으면 된다. 난 윈도우여서 맨 왼쪽에 msi 확장자 프로그램을 다운 받았다. 그리고 설치 프로그램을 실행하면.. 생각보다 설정해줄 거는 별로 없다보니 그냥 Next만 열심히 갈겨주면 된다. 설치도 매우 빠르다. ㄷㄷ 그러면 Go가 잘 설치되었는지 확인하려면 아래와 같이 터미널을 띄워서 go version라고 커맨드를 쳐주면 된다. 그러면 일단은 설치 ..
Let's encrypt를 사용해서 Nginx에 https 적용을 하다가, Putty를 이용해서 서버에 다시 접속을 하려고 하니 SSH 접속이 안 되었다. 분명 직전에 방화벽을 서버에서 설정해준 게 문제였던 것 같아서 아래와 같이 해결했다. 네이버 퍼블릭 클라우드 설정 일단은 포트 포워딩 정보에서 서버 접속용 외부 포트 9333번임을 기억해야 한다. 우분투 설정 ufw status 커맨드를 통해, 리눅스 방화벽 상태를 본다. 아마 Nginx로 리버스 프록시 설정하신 분들은 ufw status가 active 상태로 이미 되어있었을 거다. 그리고 분명 9333 포트는 없을 거다. 그러면 직접 9333 포트를 아래와 같은 커맨드로 추가해준다. sudo ufw allow 9333 Rule added라고 터미널에..
문제 요약 입을 수 있는 총 옷가지 수 (다 벗는 건 안됨ㅋ) 내가 생각한 로직 모든 경우의 수들을 구해준다. 구한 수들의 최대값을 구한다. 최대값까지의 소수들을 구한다. 소수들이 내가 구한 경우의 수들에 포함되는지 확인한다. 파이썬으로 제출한 정답 import collections import itertools def solution(numbers): numbers_list = list(numbers); number_combis=[] for i in range(1, len(numbers_list)+1): number_combis.extend(itertools.permutations(numbers_list, i)) max_num = 0 number_combi_list = [] for combi in se..
문제 요약 입을 수 있는 총 옷가지 수 (다 벗는 건 안됨ㅋ) 내가 생각한 로직 각 종류의 옷가지 수에 +1(옷 안 입은 거)들을 거듭해서 곱해주고, 마지막에 -1(다 벗은 경우의 수)을 해줘야 한다. 파이썬으로 제출한 정답 from collections import Counter def solution(clothes): clothes_dic = Counter([clothe[1] for clothe in clothes]) count = 1 for count_clothes in clothes_dic.values(): count = count*(count_clothes + 1) return count-1 자바로 제출한 정답 import java.util.*; class Solution { public int..
Github Action 돌리다가 jar 파일 Build를 해주는 job에서 오류가 났다. ./gradlew: Permission denied가 떴길래, gradlew의 권한을 수정해주는 커맨드를 아래와 같이 추가해주었다. 그랬더니 잘 돌아감..(근데 또 다시 다른 에러가 ^^..)
NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 첫 번째로, MySQL 서버를 만들어준다. 위에 고가용성 체크는 무조건 빼준다. 서버 두 개 설치해서 돈을 더 청구하려는 네이버의 간악한 속셈이다. 두 번째 단계에서 USER_ID랑 USER 암호는 MySQL 유저를 그냥 만드는 거라고 생각하면 된다. HOST는 서버에 접속할 수 있는 IP를 적는 건데, 나는 일단 그냥 %라고 적었다. 마지막 단계에서는 그냥 생성을 눌러주면 끝난다. 서버가 다 만들어지면, 아래와 같이 뜨는데 ACG를..
문제 요약 파이썬으로 제출한 정답 def solution(n, computers): visited = [False]*(n+2) tree = 0 for i in range(n): if visited[i] == False: DFS(n, i, visited, computers) tree += 1 return tree def DFS(n, start, visited, computers): visited[start] = True for i in range(n): if (visited[i] == False) and (computers[start][i]==1): DFS(n, i, visited, computers) 자바로 제출한 정답 import java.util.*; class Solution { public int..
문제 요약 모든 기능들은 매일 개발 하되, 맨 앞의 일들이 개발 완료된 후에야 뒤에 완료된 연속된 일들도 동시에 배포한다. 한 번 배포할 때, 몇 개의 기능들을 배포하게 되는지 구하라. 내가 생각한 로직 첫 번째 기능의 100-현재 진행상황을 구하고, 이를 개발 속도와 나눠 총 며칠 후에 개발이 완료되는지 확인한다. 구한 일 수를 가지고, 모든 기능들의 개발 상황에 개발 속도*구한 일 수를 더해준다. 파이썬으로 제출한 정답 import math import collections def solution(progresses, speeds): q = collections.deque(progresses); s = collections.deque(speeds); answer = [] count = 0 while ..
문제 요약 임의의 전화번호가 다른 전화번호의 앞자리와 같으면 false를 반환, 그렇지 않다면 true를 반환해준다. 파이썬으로 제출한 정답 def solution(phone_book): for i in range(len(phone_book)-1): for j in range(i+1, len(phone_book)): if len(phone_book[i]) len(phone_book[j]): #접두사가 하나라도 있으면 False if phone_book[i].startswith(pho..