11월, 2018의 게시물 표시

Windows 10 npm update

https://matthewhorne.me/how-to-update-npm-on-windows-10/

Bash 입문자를 위한 핵심 요약 정리 (Shell Script)

이미지
bash variable에 대해 잘 정리된 문서가 있어 아래 링크에서 퍼옴. ref) https://blog.gaerae.com/2015/01/bash-hello-world.html Bash 입문자를 위한 기본적인 문법과 알고 있으면 좋은 것들만 정리했다. (이런 것도 있구나 싶을 정도만 이해하도록 간단한 설명과 예제로 작성됨) 첫 시작은 문자 출력하기(Hello World) 고전적이지만 "hello world" 단순 출력부터 시작해보자. 파일명은 hello.sh 로 만들고 실행해보자. 단 두줄이면 끝이다. (만일 실행이 안된다면 퍼미션을 변경해야되는데 뭔지 모르겠다면 일단 이렇게 해봐라. chmod 700 hello.sh ) 참고: echo 문장을 출력하는데 자동으로 줄바꿈 됨 참고: printf C언어와 비슷함 #!/usr/bin/env bash echo "hello world" printf "hello world" printf "%s %s" hello world 주석(Comments) # 기호로 시작하면 주석이다. 함수(Function) 형식은 다른 언어와 차이는 없다. 그러나 function 는 생략해도 된다. 함수 명을 쓰면 함수가 호출이 되는데 주의할 것은 호출 코드가 함수 코드보다 반드시 뒤에 있어야 된다. 함수 코드 보다 앞에서 호출 시 오류가 발생한다. string_test () { echo "string test" } function string_test2 () { echo "string test 2" echo "인자값: ${@} " } string_ test string_ test 2 # 함수에 인자값 전달하기(공백의로 뛰어서 2개의 인자값을 넘김) string_ test 2 "he

[Linux] systemd에서 부팅시 실행할 서비스 관리하기 (CentOS 7)

원래 부팅시 정해진 서비스 또는 스크립트를 실행시키는 건 init (System V Init)라는 프로그램의 몫이였습니다. 유닉스가 처음 생길때부터 그래왔고, 지금도 그렇습니다.(하지만 지금은 다른 아이로 교체되는 시기입니다.) init는 그 이름처럼 리눅스의 초기화부분을 담당합니다. init 사용자들이 /etc/rc.d/init.d 디렉토리에 부팅시 실행할 서비스 스크립트를 넣으면, init는 부팅이나 특정행동이 있을때 그 스크립트들을 자동으로 실행시키는 역활을 했었습니다. 그러면 사용자들은 chkconfig명령으로 자동실행 서비스를 관리하거나 service start 명령으로 서비스들을 실행키거나 끌 수 있었습니다. 하지만 centos 7을 넘어온 현재... 끝까지 유지될 것 같았던 init는 systemd이라는  새로운  아이에게 임무를 빼앗버렸답니다. 결국 유눅스 탄생부터 항상 init가 있었던 자리.. 프로세스1( PID 1 )의 자리 또한  systemd에게 빼앗기고 말았습니다.  따라서 centos 7에서는 부팅 서비스를  systemd 에서 관리하게 되었습니다. init는 없어지지는 않았지만 제 기능을 하지못하는 상태입니다. 1. init를 밀어낸 새로운 아이 systemd의 정체 systemd는 init에 비해 우월한 성능과 뭐든지 잘하는 재능(기능)을 가지고 있었습니다. 그야말로 "엄친아"였던 것입니다. 그러니까 개발자들도 systemd 매력에 흠뻑 빠졌기에 데려왔겠죠..  systemd는 정말 기능이 많습니다. 서비스관리, 시스템 로그관리, 사용자관리, 시간, 원격, cgroup 관리등.. 참 할 수 있는 일이 많습니다. 시스템의 전반적인 관리를 전부 systemd 이 담당하고 있습니다. 그리고 아이는 부팅시 실행하는 서비스를 최소화하고, 추후 병렬실행이라는 정책을 갖고 있었습니다. 때문에  centos 7 에서는