일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 액세스회선
- Pipeline
- gradle
- Linux
- 허브
- Set
- tomcat
- IntelliJ
- cloud
- jdk
- AOP
- post
- 캐시서버
- Collection
- ansible
- Jenkins
- 라우터
- LAN어댑터
- 방화벽
- container
- DevOps
- Java
- STREAM
- sonarQube
- Spring
- map
- docker
- mybatis
- JPA
- 소켓
- Today
- Total
목록분류 전체보기 (195)
거북이-https://velog.io/@violet_evgadn 이전완료
파일 소유권 ◎ 소유권(Ownership)이란? Linux는 대표적인 Multi-User OS이다. 이런 환경에서 중요한 것은 특정 파일이 어떤 User(혹은 Group)에 의해 관리되고 있는가이다. 이런 "파일을 소유 및 관리하고 있는 User(Owner) 혹은 Group"을 파일 소유권이라고 한다. 파일 소유권은 User와 Group으로 구성되어 있다. User는 여러 그룹에 동시에 속할 수 있으며 파일 1개는 1개 유저와 1개 Group만 Ownership으로써 가질 수 있다. Root 계정(관리자 계정)은 Super User로써 서버에 존재하는 모든 파일에 대하여 소유권을 가지고 있다. 파일 허가권 ◎ 허가권(Permission)이란? 파일 소유권이 파일의 주인을 명시하는 거라면 허가권이란 특정 ..
들어가기 앞서 Redirection과 Pipe는 Linux 명령어를 더욱 강력하고 편리하게 해주는 핵심 역할을 하는 기능이다. 이 2가지를 제대로 활용하지 못한다면 Linux 자체를 잘 활용하기가 어려워진다. 이번 Section은 계속해서 활용할 기술이기 때문에 잘 알아둬야 한다. Pipe ◎ Linux Pipe란? Linux를 활용하다 보면 이전 명령어의 결과를 다음 명령어의 입력값으로 활용하는 방식으로 여러 개의 명령을 동시에 사용하고 싶을 때가 있다. 예를 들어 현재 디렉터리에 있는 모든 파일명 중 "sample"이라는 문자열을 포함하는 파일명만 찾고 싶은 경우가 있을 것이다. 파이프란 이를 가능하게 해주는 도구로써 이전 명령어의 결과물을 다음 명령(주로 필터링)에서 사용할 수 있게 도와준다. ◎ ..
링크 ◎ 링크란? 이전에 설명했지만 링크 파일이란 원본 파일을 다른 경로나 다른 파일명으로도 접근할 수 있도록 링크시킨 파일을 말한다. 여기에서 알 수 있듯 "링크"란 Windows의 바로가기 같은 개념으로 특정 파일이나 디렉터리에 링크를 걸어 다른 경로나 파일에서도 원본 파일에 접근할 수 있게 만드는 것을 말한다. 링크의 종류에는 Hard Link(하드 링크)와 Symbolic Link(심볼릭 링크)가 존재한다. 두 개 모두 동일하게 동작하는 것처럼 보이지만 개념적으로는 완전히 다른 방식으로 동작한다. 이 차이점을 제대로 알아야 상황에 맞는 링크를 활용할 수 있으므로 두 개의 차이에 대해 자세히 알아보자. ◎ 하드 링크 원본 파일과 동일한 Inode를 가지는 링크를 말한다. 이전에 말했듯 Linux는 ..
Indode ◎ Inode란? Inode는 OS에서 사용하는 파일 시스템의 하나로써 Linux에서 사용된다. Inode의 기본 구조는 File System을 대표하는 Super Block, 파일의 상세정보를 저장하고 있는 Inode Block, 실제 데이터를 담은 Data Block으로 되어 있다. 여기에서 "Block"이란 파일 시스템의 단위를 의미하며 하나의 파일에는 다수의 데이터 블록들이 존재할 수 있다. ◎ 그림으로 보는 Block 구조 ◎ Super Block 슈퍼 블록은 Linux File System 전체를 대표하는 Block으로 File System 전체 정보 및 Partition에 대한 정보를 포함하고 있다. 이전에 "df" 명령어를 통해 전체 Linux System에 대한 상태를 확인할..
Working Directory ◎ Working Directory란? Working Directory(작업 디렉터리)란 사용자가 현재 작업 중인(접속해 있는) 디렉터리를 의미한다. CMD 같은 명령 프롬프트와 상호 작용을 할 때 항상 Working Directory 내에서 모든 작업이 수행된다. Linux System을 로그인하면 기본적으로 User의 Home Directory로 접속한다고 했는데 이를 조금 고급스럽게 표현하면 Working Directory가 Home Directory로 설정이 되는 것이다. 이전에 배웠던 현재 경로를 출력하는 명령어 "pwd" 또한 현재 Working Directory를 출력하는 것이다. ◎ Path 관련 규약들 구분자 "/"를 통해 Directory 혹은 파일을 구..
Linux File 종류 Linux는 저장하는 모든 것들을 파일 형태로써 관리하는 OS이다. 그렇다면 Linux에서 관리하는 파일의 종류에 대해 알아보자. ◎ 일반 파일 우리가 생각하는 일반적인 파일로써 Windows에서 부르는 파일과 똑같은 개념이라 생각하면 된다. 데이터를 저장하는데 활용되며 Linux는 대부분 일반 파일 + Directory 파일로 구성되어 있다. Windows에서는 텍스트 파일을 메모장에서 볼 수 있듯 Linux에서는 ASCII 코드로 구성된 텍스트 파일을 VI Editor 계열의 문서 편집기를 통해 확인 및 수정이 가능하다. 텍스트 파일 외의 파일들은 확장자에 맞는 응용 프로그램이 있어야 확인 가능하다. ◎ 디렉터리 파일 디렉터리 파일은 일반 파일과 (하위) 디렉터리 파일들을 저..
연동 과정 1. Apache Tomcat 설치 https://tomcat.apache.org/ 원하는 버전의 Tomcat을 설치하자. 참고로 Tomcat 9부터는 Java 8부터 지원하니 이를 고려해 설치하도록 하자. 2. 본인의 OS 환경에 적합한 파일 다운로드 필자는 64-bit Window를 활용하기 때문에 64-bit Windows.zip 파일을 다운로드하였다. 이렇게 파일 다운로드를 하고 원하는 위치에 압축을 풀어놓자. 개인적으로는 "C:\" 바로 아래에 Tomcat을 위한 (영어 이름) 폴더를 만들고 그곳에 압축을 푸는 것을 추천한다. 이유는 2가지 있는데 먼저 여러 가지의 Tomcat 버전을 사용해야 할 경우 관리하기가 편해지며, 두 번째로 가끔 Path에 한글이 들어가는 경우가 있는데 한글..
재부팅 reboot shutdown -r now init 6 종료 # 시스템 종료 시 sync 작업 수행 X poweroff -n halt -n # 시스템 종료 시 sync 작업 수행 shutdown -h now init 0 # 시스템 강제 종료 halt -f # 시스템을 종료시키며 동시에 Power Off 시킴 halt -p ◎ Sync 명령어에 대한 설명에 "sync 작업"이라는 문구가 붙어 있다. 그렇다면 sync 작업은 무엇일까? Linux에는 sync라는 명령어가 있는데 이는 File System Buffer의 모든 데이터를 하드디스크에 보내는 하드디스크 동기화 명령어이다. 즉 sync 명령어를 수행하면 파일 버퍼에 있는 데이터까지 모두 하드 디스크에 저장되므로 데이터 손실을 막을 수 있는 것이..
Linux 부팅 과정 요약 HW 단계 전원을 켬 BIOS(or UEFI)에서 HW를 검색 BootLoader 단계 BootLoader 위치 찾기 & 시작 BootLoader에서 OS 고르기 Kernel 단계 2-2 단계에서 선택한 OS에 맞는 Kernel과 초기 RAM 디스크(initrd) 시작 INIT 단계(SysV / Systemd) 초기화된 프로세스(init or systemd) 시작 선택된 Run Level이나 Target에 따라 서비스 시작 Linux에서 Booting은 위 모든 과정을 거쳐야지 일어난다. Linux 부팅 프로세스 한눈에 보기 Linux 시스템의 부팅 프로세스는 위 사진과 같다. 크게 보자면 Hardware 단계, Bootloader 단계, Kernel 단계, Init 단계 순서..
코딩 테스트 시 필요한 이유 정규 표현식(Regular expression;regex)은 특정한 규칙을 가진 문자열의 집합을 표현하는 형식 언어이다. 여러 프로그래밍 언어나 텍스트 편집기에서 정규 표현식을 통한 문자열 검색 및 치환 기능을 지원하고 있어 만약 자유자재로 활용할 수 있다면 매우 강력한 기술이다. 하지만 정규표현식은 "패턴"을 위한 형식 언어이기 때문에 "또 하나의 프로그래밍 언어"라고 할 정도로 문법이 복잡하다. (사실 필자도 정규표현식 문법을 검색하지 않으면 정규표현식을 제대로 활용하지 못한다.) 코딩 테스트에서 정규 표현식이 필수 지식은 아니다. 왜냐하면 프로그래밍 언어 또한 검색 기능의 함수가 많기 때문에 이들을 잘 조합하면 정규 표현식 비슷한 효과의 함수를 만들 수 있다. 하지만 정..