GItlab에 push를 했건만 아래와 같은 오류가 발생해서 이를 해결하고자 작성합니다.error: RPC failed; result=22, HTTP code = 413fatal: The remote end hung up unexpectedly 구글링을 해보면 원인은 크키가 1MB보다 큰 파일이 있을 경우에 발생되는 에러라고 합니다. 1. git config --global http.postBuffer 52428800-> 파일의 크기를 50MB로 할 수 있습니다.-> 실패 2. git config --global http.postBuffer 524288000-> 실패 3. git config --global http.postBuffer 1048576000-> 실패 4. local git folder인 /..
가끔 실수로 commit을 한다거나 git push에서 오류가 났을 경우 git commit을 취소해야 하는데 생각보다 명령어를 자주 써서 작성하고자 합니다. 간단하게 정리하면 다음과 같습니다. git reset -soft : index 보존(add한 상태, staged 상태), 워킹 디렉토리의 파일 보존, 즉 모두 보존되어 있음 git reset -mixed : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉토리의 파일 보존, 즉 수정한 부분은 보존 git reset -hard : index 취소(add하기 전 상태, unstaged 상태), 워킹 디렉토리의 파일 삭제, 즉 수정한 부분또한 삭제 다음은 예제입니다. git log : commit 목록을 확인한다. git log ..
ansible로 다양한 명령어를 통해 node들을 제어할 수 있습니다. 예를 들어 web이라는 node들에게 test.txt를 삭제하게 명령하려면 아래와 같습니다. ansible web -m shell -a "rm /home/test.txt" -b 여기서 -m 은 모듈을, -a 는 명령어를, -b는 root 권한을 의미합니다. 해석하자면 web이라는 node들에게 shell 명령어와 sudo권한으로 rm /home/test.txt를 수행하라는 의미입니다. 기본적으로 ansible의 node들, host들은 /etc/ansible/hosts 파일에 담겨져 있습니다. main PC와 node PC간 SSH 통신이 가능하면 위의 명령어를 수행할 수 있습니다. 다음은 이런식으로도 변형이 가능합니다. ansibl..
Maven에서 사용할 수 있는 명령어들을 정리해서 작성해보고자 합니다. 업무에서 Jenkins를 주로 사용하는데 Maven 명령어들이 많이 나와 이를 공부하고자 합니다. 아래의 내용은 Maven 공식 페이지를 참조했습니다. http://maven.apache.org/ref/3.6.3/maven-embedder/cli.html Maven Embedder – Maven CLI Options Reference maven.apache.org 먼저 Maven에서 사용할 수 있는 명령어들입니다. compile -> 컴파일 수행 test -> 컴파일 수행 후 테스트 클래스 수행 package -> 컴파일을 수행하고 컴파일한 소스를 packaging 양식에 맞춰 프로젝트 내 지정한 경로 디렉토리에 생성 install ..
업무를 하면서 find, grep 명령어를 잘 사용하면 할수록 편리하다는 것을 느꼈습니다.하지만 아직 저의 실력은 미천하기 때문에 이번에는 find, grep을 공부하면서일의 효율을 높이고자 합니다. find는 파일을 찾는 기본적인 명령어인데 특정 이름의 파일 및 특징을 가진 파일을 찾는 명령어입니다.find [PATH]-> 해당 PATH에 있는 파일 및 디렉토리 표시find . -name [FILE]-> 현재 디렉토리 아래 모든 파일 및 하위 디렉토리에서 파일 검색find . -name "PP*"-> PP로 시작하는 파일 검색find . -name "*PP*"-> PP가 포함된 파일 검색find . -name "*.txt" -delete-> txt 확장자를 가진 모든 파일 검색 및 삭제 grep은 문..
제가 익숙해지고자 기록으로 남겼습니다. Fabrice은 Python의 라이브러리이자 커맨드 라인 도구로 배포, 시스템 관리와 관련된 일들을 처리한다. 서버에 직접 접속하지 않고, Local에서 Fabric 명령어를 통해 Local 및 원격 서버에 명령을 내릴 수 있다. 먼저 Fabric의 기능은 크게 다음과 같습니다. 1. SSH 명령어를 로컬 서버, 원격 서버에서 실행 2. Local과 Remote간의 파일 전송 env -> 환경변수를 입력 env.hosts -> 명령어를 수행할 서버 주소의 리스트 env.user -> 유저이름 run() -> 원격 서버에서 명령을 수행 local() -> 로컬 서버에서 명령을 수행 put() -> 로컬 서버에서 원격 서버로 파일을 업로드 get() -> 원격 서버에서..
면접질문에서 질문받았던 TCP와 UDP의 차이를 다뤄보고자 합니다. 많이 질문받았던 만큼 이 부분은 기본적으로 알고 있어야 한다고 생각합니다. TCP는 Transmission Control Protocol을 의미하며 네트워크 계층 중 전송 계층에서 사용하는 프로토콜입니다. 장치들 사이에 논리적인 접속을 성립시키기 위해 연결을 설정하여 신뢰성을 보장하는 연결형 서비스입니다. 3-way handshaking을 통해 연결을 설정하고, 4-way handshaking을 통해 연결을 해제합니다. 흐름제어를 가지고 있어 데이터 처리속도를 조절하여 수신자의 버퍼 오버플로우를 방지합니다. 또한 네트워크 내의 패킷 수가 넘치지않게 방지하는 혼잡제어를 가지고 있으며 신뢰성이 높은 전송입니다. UDP는 User Datagr..
IT 직무에 있어서 자주 듣는 개념들인데 이 부분을 확실하게 정리해보고자 합니다. 먼저 CI는 Continuous Intergration을 의미하며, 지속적인 통합입니다. 개발자를 위한 자동화 프로세스를 말하며 애플리케이션에 대한 새로운 코드 변경 사항들이 정기적으로 빌드 및 테스트 되어 공유 저장소에 통합되면서 여러 개발자가 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있습니다. CI가 나오기 전 까지는 개발을 끝마치면 배포를 해야지만 코드에 오류가 있는지, 올바르게 작동하는지를 검증할 수 있었습니다. 하지만 CI를 적용하게 되면 각자의 개발자가 자신의 기능을 구현하고 완성되면 Main 브랜치와 통합하고 빌드 및 정상적으로 동작하는지 테스트할 수 있습니다. 간..