본문 바로가기

서버/Linux

(10)
[Linux] Bash 스크립트_03.반복문 For문 Basic 형식 for 변수 in 값 do ... done Range 형식 for 변수 in {값시작..값끝} do ... done C언어 스타일 for ((i = 0 ; i
[Linux] Bash 스크립트 _02.비교 IF문 형식 if문 형식 1 if test-commands; then ... fi if문 형식 2 if test-commands; then ... else ... fi if문 형식 3 if test-commands; then ... elif test-commands; then ... else ... fi elif와 else는 옵션이며 필수가 아님 if문 중첩 가능 test-commands는 [ ... ], [[ ... ]], (( ... ))의 형식으로 사용 가능 단, 괄호와 조건 사이에 띄어쓰기 필수 Integer 비교 -eq if [ $test -eq 123 ]; then ... fi -ne (not equal) -gt (greater than) -ge (greater than or equal to)..
[Linux] Bash 스크립트_01.기초 bash (Bourne-Again SHell) 리눅스 쉘 표준 스크립트 자동화/기능화에 사용될 수 있음 다양한 커맨드라인 툴을 활용 할 수 있음 파일/프로세스를 다루기 편리함 #!/bin/bash 를 제일 앞에 붙여줘야함. 사용하고자 하는 인터프리터를 정의하고 시스템에 알려주는 의미. 변수(Variable) 변수는 $test_variable 와 같이 $를 붙여줘야 함 변수 명에 대해서 확실히 정의하기 위해 {}를 넣기도 함. ${test_variable} test_variable="inamoto shinjicheol" 와 같이 값을 할당함 특수문자는 underbar(_)만 가능 대소문자도 구별함 영문이나 underbar로 시작할 수 있으며, 숫자로 시작할 순 없음 변수는 unset을 통해 초기화 할 수 ..
[Linux 기초] Process Process - 실행 중인 프로그램을 의미함. - 하드(Disk)에 저장된 프로그램을 실행하면, 메모리에 프로세스가 올라가게 됨 - CPU가 프로세스들을 실행함으로써 어플리케이션이 동작 - CPU가 다양한 프로세스들을 번갈아가며 실행을 시켜 준다. - CPU 코어 클럭이 높으면 성능이 더 좋으나, 그 만큼 발열이 올라가서 이슈가 발생할 수 있다 - 그래서 요즘은 코어 수가 더 각광을 받는다. - 여러 코어가 각각의 프로세스들을 나눠서 실행한다면 지연없이 처리가 가능하다 - 프로세스들은 종속관계에 따라 부모와 자식 프로세스가 있다 - 부모 프로세스가 자식 프로세스를 종료 처리를 진행하면, 그 과정에서 부모 프로세스에게 종료 상태 정보를 넘겨 준다. - 상태 정보는 정상 종료 여부, 시그널을 받아 종료 되..
[Linux 기초] 스크립트 Bash Script Bash 커맨드를 파일에다 모아놓은 것 간단하게 커맨드를 순차적으로 실행할 수 있도록 해보자 #!/bin/bash Bash 스크립트라는 것을 인지시켜 줌으로 해당 문구를 최상단에 박고 시작한다. 절대 경로로 실행했으나, 실행 권한이 없어 실행이 되지 않았다 X(실행) 권한을 넣어주자. 권한을 변경하면 파일이 녹색으로 바뀐다 이제 실행 됨 절대경로를 입력하지 않고 실행 하는 방법은 두 가지가 있다 1. 환경변수를 바꾼다 굳이 이렇게까지 해야하나 싶다 2. 상대경로를 사용한다 그냥 현재 디렉토리에 있는 파일을 실행하는 상대경로를 사용하면 된다. 간단 그 잡채
[Linux 기초] User & Group 생성 /etc/passwd 리눅스 내 계정들의 정보가 기입되어 있음 (시스템 계정 포함) [id] : [passwd] : [uid(user.id)] : [gid(group.id)] : [desc] : [절대경로] : [디폴트 쉘] 사용자 및 그룹 추가 adduser와 useradd 중 편한 커맨드를 사용하면 된다. 커맨드 뒤에 --help를 붙이면 보다 상세한 옵션들과 필수 인자들을 확인 할 수 있다. 그러면 다시 사용자를 생성 해보자. helly라는 사용자를 만들었다. 확인해보자. 사용자 스위치 su 커맨드를 통해 다른 사용자 계정으로 스위칭 할 수 있다. 사용자 & 그룹명도 확인이 가능하다. 사용자 삭제 adduser와 반대로 deluser로 삭제 가능하다. 커맨드 뒤에 --help를 붙이면 보다 상세한 ..
[Linux 기초] 파일 소유권, 권한 Permissions ls -al 입력하면 가장 앞에 출력되는 내용은 파일의 접근 권한을 나타낸다. 한번 해석해보자. drwxr-xr-x d : file의 타입을 나타낸다. - or d가 들어가며, 일반 파일 or 디렉토리로 이해하면 된다. rwx : Owner의 권한. read, write, execute(실행권한) r-x : Group의 권한. read와 execute 권한만 부여됐다. r-x : Other Users의 권한, Group과 동일한 권한을 부여받음. chmod (change mode) 파일의 권한을 수정하는 툴. 8진표기법 8진수를 2진수로 표시한다. Owner, Group, OtherUser에 해당하는 각 값은 0~7이 올 수 있다. 이를 2진수로 표현하여 아래와 같이 적용할 수 있다..
[Linux 기초] 파일 & 디렉토리 File 일반 파일 : 텍스트 파일이나 동영상 파일과 같은 일반 파일 디렉토리 : 폴더 개념이나 파일의 한 종류임 심볼릭 링크 파일 : 윈도우의 바로가기처럼 다른 파일을 가리키는 파일 블록 디바이스 파일 : 블록 디바이스를 제어하기 위한 파일 문자 디바이스 파일 : 문자 디바이스를 제어하기 위한 파일 파이프 파일 : 프로세스간 통신에 사용되는 파이프를 나타내는 파일 소켓 : 프로세스간 통신에 사용되는 소켓을 나타내는 파일 Directory / : 루트 디렉토리. 최상위 디렉토리 /bin : binary의 약자. 모든 사용자가 사용 가능한 실행파일이 위치하는 디렉토리 /sbin : 시스템 관리자 권한으로 사용 가능한 실행파일이 위치하는 디렉토리 /etc : 여러 설정 파일이 위치하는 디렉토리. /lib :..
[Linux 기초] 기초 기초 더 쌩기초 date 일시을 보는 명령어 포맷을 입력하면 원하는 포맷으로 출력할 수 있드아. 자세한 내용은 date --help 에서... history 사용했던 커맨드들을 조회할 수 있으며, 시퀀스 넘버로 해당 명령어를 실행 할 수 있다. 그리고 직전에 입력한 명령어는 !!로 사용할 수 있다. 물론, 방향키를 위로 올려서 사용할 수 있다. echo echo 뒤에 입력한 것을 출력해준다. bash 작성 시 변수들의 값을 출력해줄때 사용한다. 예시로 현재 디렉토리 정보를 가지고 있는 환경변수인 pwd를 echo 해보자. env 명령어를 통해 환경 변수의 값도 확인할 수 있다. which 특정 명령어(tool)의 위치를 알려주는 명령어 sudo 다른 계정의 권한으로 sudo 이후의 명령어를 실행한다. 계정을 명시해주지 ..
[Linux 기초] 기초 기초 쌩기초 패키지 관리 시스템(APT / YUM / RPM) 테스트 환경인 ubuntu는 apt를 사용한다. PC의 pkg manager를 이용해서 연결되어 있는 Repository에 패키지에 대한 요청을 보내서 사용자에게 보여줌. 가장 많이 하는 액션은 패키지 설치, 삭제, 조회임. 설치 sudo apt install hello 삭제 sudo apt remove hello 조회 apt list --installed | grep hello man 메뉴얼을 보여주는 명령어. man ls, man cp 등으로 명령어 앞에 man을 붙이면 가이드를 볼 수 있다. / 를 사용하면 검색도 가능하다. ls 현재 디렉토리 내용을 보여주는 명령어 : ls 많은 정보를 나타내는 명령어 : ls -al cd (change direc..