Linux의 응용
도서관의 가득한 책속에서 나는 냄새는 무척이나 좋았다.
그 책들은 많은 사람들의 역사를 담고 있다.
리눅스의 Root
리눅스 시스템에서 루트(root)라고 얘기하면 root 사용자 계정과, root 디렉터리 중 하나를 의미한다.
- 리눅스 시스템은 사용자(user) 중심의 시스템이다. 따라서 리눅스 시스템을 사용하기 위해서는 사용자 계정이 있어야 한다.
- 사용자 계정은 두 가지로 나눌 수 있다.
◈ 시스템 관리를 위한 관리자 계정(수퍼 유저 : Super User)
◈ 일반 사용자 계정
리눅스 디렉토리
- / : 최상위 경로
- /bin : 기본 명령어 위치, CentOS 7부터는 /usr/bing으로 심볼릭 링크 되어 있다.
- /boot : 커널 이미지, 부트로드 관련 파일 존재,별도의 파티션으로 할당을 권장하고 있다.
- /dev : 장치 파일이 저장된 디렉토리
- /etc : 설정관련 파일 및 디렉터리
- /lib : 라이브러리, CentOS 7부터는 /usr/lib으로 심볼릭 링크 되어 있다.
- /media : CD, DVD, USB 저장장치 마운트되는 곳이다.
- /opt : 추가적인 소프트웨어 설치 디렉터리
- /sbin : 시스템 관리자를 위해 사용되는 명령어 등이 저장되는 디렉토리, CentOS 7부터는 /usr/sbin으로 심볼릭 링크되어 잇다.
- /srv : 시스템 서비스들
- /tmp : 임시 디렉터리
- /usr : 시스템이 아닌 일반 사용자가 사용하는 프로그램이 설치된 디렉터리
- /var : 시스템 운용중에 저장되는 자료
- /home : 사용자들의 홈 디렉터리
- /root : root 사용자의 홈 디렉터리
- /proc : 커널과 프로세스를 위한 가상 파일 시스템
VIM 편집기
#파일 생성하기 / 파일 열기
dream$ vi text.txt
# 현재 커서의 위치부터 입력 : i
# 현재 커서의 위치 다음 칸 부터 입력 : a
# 현재 커서의 다음 줄에 입력 : o
# 현재 커서 위치의 한 글자를 지우고 입력 : s
# 현재 커서 줄의 맨 앞에서부터 입력 : I
# 현재 커서 줄의 맨 마지막 부터 입력 : A
# 현재 커서의 이전 줄에 입력 : O
# 현재 커서의 한 줄을 지우고 입력 : S
# 줄의 첫문자로 이동 : ^
# 줄의 맨 끝으로 이동 : $
# 첫번째 열로 이동 : 0
# 제일 끝 행으로 이동 : G
# 제일 첫 행으로 이동 : gg
# n 번째 행으로 이동 : nG
# 해당 숫자의 행으로 이동 : :숫자 + Enter
# 화면의 첫 줄로 이동 : H
# 화면의 중간으로 이동 : M
# 화면의 끝 줄로 이동 : L
#문자열 바꾸기(치환)
* 현재 문서를 편집중이라면, 키보드의 Esc 키를 눌러 편집모드에서 빠져나옵니다.
* 콜론(:)을 누르고 %s/foo/bar 라고 하면 모든 foo라는 문자열이 bar로 한꺼번에 치환됩니다.
다음과 같이 c 라는 옵션을 붙이면
:%s/foo/bar/c
바꿀 때마다 바꾸어도 좋은지 물어보기에 더 안전합니다. y를 누르면 바꾸고, n을 누르면 다음으로 건너뛰고, a를 누르면 모두 바꿉니다.
:%s/<foo>/bar
블록 선택 삭제
Ctrl + V
블록 선택
D 또는 X
sudoer 만들기
[root@dataplatform10 ~]# chmod u+w /etc/sudoers
[root@dataplatform10 ~]# ll /etc/sudoers
-rw-r-----. 1 root root 3729 2015-12-08 21:43 /etc/sudoers
[root@dataplatform10 ~]#
#vim 편집기를 통해 sudoer 파일 수정
# 특정 사용자 또는 그룹에에 sudo 권한을 부여하는 경우
# user1 사용자에게 sudo 권한
user1 ALL=(ALL) ALL
# wheel 그룹의 모든 사용자에게 sudo 권한을 부여하는 경우
%wheel ALL=(ALL) ALL
# 패스워드 확인 없이 sudo 권한을 사용하고 싶은 경우
# 사용자의 경우
user1 ALL=(ALL) NOPASSWD: ALL
# 그룹의 경우
%wheel ALL=(ALL) NOPASSWD: ALL
출처: https://sseungshin.tistory.com/82 [My Dev. story]
포그라운드 작업과 백그라운드 작업
모든 프로세스는 백그라운드 또는 포그라운드라는 두가지중 하나의 모드로 작동한다. 즉, 리눅스의 모든 프로세스는 전면부라고 하는 포그라운드 작업, 후면부라고 하는 백그라운드 작업 중 하나의 상태로 실행된다.
포그라운드 작업 ( Fore ground )
일반적으로 리눅스에서 실행시키는 거의 모든 명령어는 포그라운드로 실행된다.
tail -100f sample.md
백그라운드 작업 ( Back ground )
명령어 뒤에 “&” 문자를 붙일 경우 백그라운드로 실행된다.
- 백그라운드로 명령어실행(&)
명령어를 실행할때 백그라운드작업으로 실행하고자 할때는 명령어 뒤에 “&” 붙여주면 된다.
- 실행중인 프로세스를 백그라운드모드로 전환하기(bg) / 백그라운드로 실행중인 프로세스를 포그라운드로 전환하기(fg)
tail -100f sample.md &
[1] 49878
---
title: Sample
---
I am making Sample for study
⚙ dream ~/GIT/linesIO/lines_new/lines.io gh-pages ±
jobs
[1] + running tail -100f sample.md
⚙ dream ~/GIT/linesIO/lines_new/lines.io gh-pages ±
fg %1
[1] + 49878 running tail -100f sample.md