20210108 - TIL

Starve·2021년 1월 8일
0

TIL

목록 보기
5/38
post-thumbnail

오늘 한 일

  • 마스터 클래스 수강

  • 미션 2 완성 및 제출

  • 리눅스 역사와 유닉스와의 차이 학습

    • 리눅스의 역사:
      1991년 미닉스에 실망한 리누스 토르발스가 제작한 운영체제이다. 오픈소스의 형태를 띄고 있어, 다양한 사람들이 배포판을 제작 할 수 있는 것이 특징이다.
      현재로는 보안이 처음 버전보다 강해져, 서버 시장에서 주도적인 운영체제이다.

    • 유닉스와의 차이:

      리눅스는 오픈소스이며 무료로 배포되는 운영체제인 반면, 유닉스는 대학이나,회사 등 기업에서 주로 선호하며 사용되는 운영체제이다. 가격도 판매처 별로 가격이 다르다.
      리눅스는 주로 커뮤니티 기반이기 때문에, 버그탐지와 해결이 무척 빠른 반면, 유닉스는 독점적인 성격을 띄고 있어, 버그 수정 및 패치를 조금 기다려야 했다.

  • 쉘 종류에 대해 학습

    • bash(Bourne-Again Shell): 리눅스에서 많이 사용하고, 최초로 개발된 쉘인 본 쉘의 변종. 명령행 편집기능을 제공한다.

    • sh(Bourne Shell): 상호대화형 방식을 취하지 않는 것이 특징인 쉘. 주로 쉘 명령 대본을 작성하는데 사용된다. 모든 유닉스 시스템의 표준 구성요소이다.

    • csh(C 프로그램 스타일 Shell): 버클리대학에서 개발된 쉘. 프로그래머들에게 적합하다. 명령행 편집 기능은 제공하지 않으며, C언어와 유사한 언어를 사용한다. 상호대화형 방식의 구성을 갖고있다.

    • ksh(Korn Shell): 유닉스에서 가장 많이 사용되는 쉘. 본 쉘과 호환되며, 명령행 편집기능을 제공한다.

    • zsh: Korn Shell 과 매우 유사하지만, 유용한 기능 등을 추가하여 개선시킨 쉘이다. 가장 최근에 나온 것이 특징.

  • 쉘 스크립트에 활용한 다양한 사례:

    • 리다이렉션 기능을 사용해, 명령에 필요한 값을 받거나, 수행결과를 파일이나 장비에 전송해 관리자가 원하는 형태로 재가공 하거나 관리절차를 자동화 하는데 매우 유용하다.

      • 서버 상태 감시: 여러대의 서버를 관리하는 상황에서 각각의 서버를 관리하는 번거로운 작업 대신, 쉘스크립트를 이용하여 간단한 서버 작동 여부를 확인 할 수 있다. (서버의 규모가 크지 않을 때 주로 사용)
        그리고 이 결과를 메일로 발송시키는 자동화 작업 또한 가능하다.
      • 데몬 및 프로세스의 시작과 정지의 자동화
      • 정기점검 항목에 대한 시스템 스케줄 등록의 자동화
    • 파일을 한번에 다운로드 받는 것

오늘 느낀 점

  • 이것저것 삽질하면서 완성을 하고나니 별 것 아닌 코드고, 부족함도 많이 보이는 코드지만 괜히 뿌듯해져서 자꾸 들여다 보게 되는 것 같다.

    미래에는 내가 오늘 짠 코드를 보고 창피해할 수 있을 정도로 성장했으면 정말 좋을 것 같다!!

  • 좀 더 적극적인 활동을 하는 것을 다음 주 목표로 잡아야겠다. 더 많이 질문하고 공부해야지.

내일 할 일

  • 알고리즘 저장용으로 사용 할 github.io 블로그 정돈하기
  • 운영체제 강의 수강
  • 자바의 정석 정리
profile
노력

0개의 댓글