loading
본문 바로가기

BACK-END19

[리눅스] 나만의 명령어 만들기 리눅스를 공부하던 중, 디렉토리 구조에서 /bin, /sbin (=/usr/bin, /usr/sbin) 파일에 기본적인 명령어가 저장되어있고, 리눅스는 파일로 모든것이 실행되는 구조이니 명령어를 만들어서 넣으면 실행되겠구나 생각했다. 실제로 직접 만든 명령어를 권한 편집해서 넣어놓으면 명령어처럼 실행될수 있고, 명령어를 직접 만들진 않아도 alias 별칭처럼 사용하는 방식도 있었다. 그래서 daram 이라고 어디서든 치면, 다람쥐 그림이 출력되면 재밌겠다 싶어서 간단하게 만들어보았다. 그림을 문자로 변환하기 처음에는 아스키코드로 사진을 넣었을때 변환되게 하는 코드를 짜려고했는데, 역시 세상에는 능력자들이 많다..! 아무래도 shell 에서 볼거다보니 아스키코드보다는 점자로 된게 더 뚜렷하게 잘 보일것 같.. 2024. 4. 22.
[리눅스] 리눅스 파일구조와 특징 - Rocky Linux 9 리눅스 구조 리눅스(LINUX is not UNIX)는, 계보도도 많고 배포판도 다양한 프리웨어(오픈소스) 컴퓨터 운영체제이다. 유닉스에서 갈라져나온 (그러나 유닉스 운영체제는 아닌) 리눅스는 엄밀히 말하면 '리눅스커널'을 이야기하는거지만, 리눅스커널과 자유 소프트웨어(GNU)를 합쳐서 배포하는 리눅스 배포판을 결국 리눅스라고 부른다. 리눅스의 특징은 여러가지가 있겠지만, 특징적으로 살펴보면 아래와 같다 1. 리눅스는 역트리구조( /root 을 기준)의 계층적 파일구조를 가지고 있으며 다중사용자 및 다중 처리 시스템(멀티유저&멀티태스킹)이 가능하다. 이는, 모든 것이 파일화 되어있다는 소리라 하드디스크, 키보드 같은 실제 하드웨어적인 장치도 파일로 관리한다. 2. 이더넷을 포함하여 TCP/IP, ATM등.. 2024. 4. 16.
[네트워크] 라우팅 프로토콜 정적라우팅과 동적라우팅 앞선 포스팅에서 작성한 정적라우팅(Static Routing)은 동적라우팅에 비해 부하는 적지만, 관리자가 직접 모든 경로를 다 수동설정해줘야 하는 번거로움이 있었다. 네트워크 규모가 커질수록 모든 경우의 수를 다 하나하나 잡아줘야하기때문에 소규모 네트워크, 경로가 정해진 라우팅에 적합한 방식이다. 동적라우팅은 라우터끼리 통신하면서 최적의 경로를 찾는 방식으로, 장애가 발생해도 라우터끼리 통신에 의해 우회로를 개척하며 수동으로 라우팅해주지 않아도 되는 장점이 있다. 하지만 라우터끼리 통신하는 자체도 통신의 부하가 발생하며 라우터 리소스를 할당해야한다. 동적라우팅은 거리벡터, 링크상태로 나뉘며 소규모 네트워크와 대규모 네트워크에 적합한 방식등으로 분류된다. AS(Autonomous .. 2024. 4. 5.
[네트워크] 패킷트레이서 - 기본사용 및 정적라우팅, 디폴트 정적라우팅 시스코에서 만든 프로그램이긴 하지만, 네트워크 연결과 라우팅을 직접 해 볼 수 있는 패킷트레이서. 해당 사이트에서 회원가입을 먼저 진행하고, Cisco packet tracer > view courses 해서 각 운영체제에 맞게 다운로드를 진행하자. 해당 경로는 조금씩 바뀌겠지만, 패킷 트레이서 코스를 수강신청하고(무료) 다운로드 하는 큰 틀은 똑같으니 찾기 어렵지 않다. 참고로 우분투, M1 맥북에서 잘 돌아간다 (가끔 메세지적는창 오류날때도 있는데 재가동 하면 문제없다..) https://www.netacad.com/courses/packet-tracer Cisco Packet Tracer - Networking Simulation Tool Enroll, download, and get started.. 2024. 4. 2.
데이터베이스의 흐름, DBMS의 종류와 형태에 관하여 데이터베이스란? 데이터베이스는 저장된 데이터를 체계적으로 모은 것이라고 정의할 수 있다. 즉, 논리적으로 모델링된 정보 클러스터를 데이터라고 한다면, 모든 데이터 모음은 저장 방법이나 위치에 관계없이 데이터베이스라고 할 수 있다. 문서에 종이를 보관해놓는것도 데이터베이스고, 컴퓨터에 저장한 데이터도 데이터베이스이다. 하지만 컴퓨터가 발전하고 이 안에 논리적으로 저장하고 효율적으로 사용하기 위한 방법의 고민이 관계형모델부터 NoSQL을 시작하게 했다고 볼 수 있다. 초기 방안중 '계층적 모델'이 있었는데, 현대 파일시스템과 유사한 트리구조를 가지고 있다. 다만, 이 계층적모델은 부모(상위)와 자식(하위)간의 관계의 유연성이 떨어지는 문제가 있었는데, 하나의 부모는 하나의 자식을 가질수도 있고, 여러명의 자.. 2024. 1. 11.
윈도우 환경에서 자바기반 개발환경 설정하기 자바를 배울 때... 왠만하면 윈도우 환경에서 배우는 경우가 많다. 나 같은 경우에는 윈도우, 맥 둘다 써서 둘다 환경설정을 했었는데... 그래서 나중에 참고도 할 겸 윈도우 기반으로 완전 기본 설치법을 적어보았다. 이 글은 윈도우 10/2021년 중순기준이다. [2022년도에도 딱히 설정방법이 바뀐건 없는 듯 하다] 맥으로 환경설정은 이 게시글에서 >> 2020.08.12 - [BACK-END/JAVA] - Mac 에서 자바 path 및 환경변수 설정하기 * 맥에서 JDK 초기설정 1. conEmu 설치 conemu.github.io/ ConEmu - Handy Windows Terminal ConEmu-Maximus5 is a full-featured local terminal for Windows .. 2021. 5. 4.
글들을 잠시 비공개 처리하였습니다 Backend (71개) Frontend (23개) 알고리즘 (4개) TIL (약 10개) 정도를 잠시 비공개 처리하였습니다. ERROR CHECK 같은 경우에는 수정할 사항이 없어 그대로 두고, 대부분의 것은 비공개 처리하였습니다. 기존에 완전 기초적으로 배우면서 적었던 내용들이라, 조금더 깊이있게 공부하고, 겸사겸사 기본도 다질겸 다시 내용을 채워 가독성있게 쓰고싶어 비공개 처리해두었습니다 :) (배우는것만 해도 정신없어 과연 언제 다 공개처리가 될지는 미지수....) 예를 들어 Security의 경우 단순히 시큐리티를 구현하면서 인증/인가과정에 대해서만 적었었는데 시큐리티, 보안, SSL 등 연관되는것들을 전부 공부하고 통합적으로 새롭게 작성하면 좋을 것 같았습니다. 기본적인 내용도 중요하지만, 제.. 2021. 4. 29.
모던자바(Modern JAVA)? 더 나은 자바개발자가 되기 위하여 더 나은 자바개발자가 되기 위한 글이라는 것을 보았다. 자바를 공부하다보면 그런 생각이 든다. 어떻게 더 깊게 공부하고 탐구할 수 있을까 ? 프로젝트를 하면서 자바의 1/100정도만 맛보았을 뿐인데, 이 매력적인 언어는 얼마나 더 깊이 있는 걸까? 단순한 프로젝트를 진행했을 뿐이지만, 그 과정에서 만난 매력적인 소재들이 꽤 많았다. 그중 가장 기억에 남는 것이 Wrapping 하는 것이었다. java.doc 에 가서 보면 알겠지만 모든 클래스들은 어떤 큰 주제에 속해있고, extend 와 implement 되는 관계도가 적혀있다.(이것에 대해서 하나하나 뜯어보는 즐거움은 일단 뒤로하고...) wrapping에 대해서 조금이나마 써볼 수 있었던 것은 스프링시큐리티에서 interceptor를 원하는 방향으로.. 2021. 4. 29.
맥(MAC)에서 자바기반 프로그램 설정 세팅 JDK/이클립스 설치 및 환경변수 설정은 이전 포스팅을 참고해주시면 될 것 같다 2020/08/12 - [BACK-END/JAVA] - Mac 에서 자바 path 및 환경변수 설정하기 * 맥에서 JDK 초기설정 본 환경은 맥os/intel 기반입니다. - M1칩은 다르게 작동할 수 도 있습니다. 다른 게시글을 참고해주세요 Brew 설치 만약 home-brew가 설치되어있다면 brew update만 진행한다. 그렇지 않은 경우에는 설치하면 된다. 터미널창을 열어서 적기만 하면 바로 다운된다. 앞으로도 맥으로 뭔가를 다운받을때는 습관적으로 brew update 를 꼭 진행하고 하는게 좋다. > brew install > brew update //항상 업데이트를 진행하고 브루를 사용한다 Tomcat 설치 wa.. 2021. 2. 22.