PID : proces id의 축약어, 프로세스 식별 고유번호1. 전체 프로세스 정보
root@il7:~# ps -ef
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 04:08 ?        00:00:00 /sbin/init
root           2       0  0 04:08 ?        00:00:00 [kthreadd]
root           3       2  0 04:08 ?        00:00:00 [rcu_gp]
root           4       2  0 04:08 ?        00:00:00 [rcu_par_gp]
root           5       2  0 04:08 ?        00:00:00 [slub_flushwq]
root           6       2  0 04:08 ?        00:00:00 [netns]
root           8       2  0 04:08 ?        00:00:00 [kworker/0:0H-events_
2. bash가 실행중인지 검색
root@il7:~# ps -ef | grep bash
j            964     766  0 04:12 tty1     00:00:00 -bash
root         971     970  0 04:12 pts/0    00:00:00 -bash
j            999     998  0 04:12 pts/1    00:00:00 -bash
root        1006    1005  0 04:12 pts/2    00:00:00 -bash
root        1052    1006  0 05:57 pts/2    00:00:00 grep --color=auto bash
3. top = Table of Process
root@il7:~# top
top - 05:55:22 up  1:46,  4 users,  load average: 0.34, 0.31, 0.29
Tasks: 119 total,   1 running, 118 sleeping,   0 stopped,   0 zombie ★ (부모 process와 자식 process간 trouble이 발생했음을 뜻)
%Cpu(s):  0.3 us,  0.2 sy,  0.0 ni, 99.0 id,  0.2 wa,  0.0 hi,  0.3 si,  0.0 st
MiB Mem :   1975.8 total,   1003.9 free,    600.8 used,    371.1 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1220.9 avail Mem
    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
    835 mysql     20   0 1791560 393144  35380 S   1.0  19.4   0:35.12 mysqld
     17 root      20   0       0      0      0 I   0.3   0.0   0:02.26 kworker+
     ,,,
4. pstree = Process Tree = 모든 process 부모 process 시스템의 정보 출력
root@il7:~# pstree -pn						-pn : 정렬 옵션
systemd(1)─┬─systemd-journal(358)
           ├─multipathd(402)─┬─{multipathd}(406)
           │                 ├─{multipathd}(407)
           │                 ├─{multipathd}(408)
           │                 ├─{multipathd}(409)
           │                 ├─{multipathd}(410)
           │                 └─{multipathd}(411)
           ├─systemd-udevd(405)
           ├─systemd-timesyn(523)───{systemd-timesyn}(530)
           ├─systemd-network(591)
           ├─systemd-resolve(593)
           ├─dbus-daemon(606)
           ├─networkd-dispat(612)
           ├─systemd-logind(631)
           ├─java(652)─┬─{java}(789)
           │           ├─{java}(799)
           │           ├─{java}(800)
           │        
           │           ├─{java}(919)
           │           └─{java}(920)
           ├─sshd(657)───sshd(978)───sshd(998)───bash(999)───sudo(1004)───sudo(+
           ├─apache2(679)─┬─apache2(680)─┬─{apache2}(703)
           │              │              ├─{apache2}(708)
           │              │              ├─{apache2}(710)
           │              │              ,,,
           │              │              ├─{apache2}(749)
           │              │              └─{apache2}(750)
           │              └─apache2(681)─┬─{apache2}(698)
           │                             ├─{apache2}(700)
           │                             ├─{apache2}(701)
           │                             ,,,
           │                             ├─{apache2}(739)
           │                             ├─{apache2}(741)
           │                             └─{apache2}(743)
           ├─login(766)───bash(964)───sudo(969)───sudo(970)───bash(971)
           ├─unattended-upgr(778)───{unattended-upgr}(839)
           ├─mysqld(835)─┬─{mysqld}(854)
           │             ├─{mysqld}(855)
           │             ,,,
           │             ├─{mysqld}(900)
           │             └─{mysqld}(902)
           ├─sendmail-mta(924)
           └─systemd(957)───(sd-pam)(958)
    
root@il7:~# jobs			- 백그라운드 작업 
[1]+  Stopped                 top
root@il7:~# jobs -l			-l : 작업 list detail 출력
[1]+  1045 Stopped (signal)        top
root@nc7:~# nl /etc/shells		- 변경 가능한 shell 목록 출력
     1  # /etc/shells: valid login shells
     2  /bin/sh
     3  /bin/bash
     4  /usr/bin/bash
     5  /bin/rbash
     6  /usr/bin/rbash
     7  /usr/bin/sh
     8  /bin/dash
     9  /usr/bin/dash
    10  /bin/ksh93
    11  /usr/bin/ksh93
    12  /bin/rksh93
    13  /usr/bin/rksh93
쉘 종류 (출처 : https://www.leafcats.com/222)
- BASH (Bourne-Again Shell) [/bin/bash] : 일반적으로 가장 흔하게 사용되는 쉘이다. sh 본쉘과 호환되기 때문에 대부분 sh와 bash에서 모두 작동된다.
- CSH (C Shell) [/bin/sh] : C 언어와 유사한 문법을 가지고 있다. 유닉스의 기본 쉘이다.
- TCSH [/bin/tcsh] : 일반적인 C 쉘이며 사용자 중심이고 속도가 빠르다.
ksh 특징
- 명령 줄 편집 기능의 확장
- 다양한 조건 테스트 및 수학 연산 기능
- 배열 및 연관 배열 지원
- 환경 변수 및 로케일 관리 기능
- 셸 함수 및 별칭 지원
- 작업 관리 및 프로세스 제어 기능
root@nc7:~# ai ksh			- ksh 쉘 설치
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  ksh93u+m
Suggested packages:
  binfmt-support
  ,,,
Linux 부팅 순서
power on > ROM-BIOS > 부트 메니저(GRUB) > 커널로드 > 파일시스템 > 파일 시스템 마운트 > 시스템 초기화 (init, systemd) > 로그인
부팅 메니저
root@il7:/boot# nl /etc/default/grub
=>
     # For full documentation of the options in this file, see:
root@il7:/boot# nl /boot/grub/grub.cfg 
=> 
	# DO NOT EDIT THIS FILE
    # It is automatically generated by grub-mkconfig using templates
    # from /etc/grub.d and settings from /etc/default/grub
- 부팅시 파일 실행순서
0 . poweroff.target
1 . rescue.target -single user mode
2 . multi-user.target - Network service x
3 . multi-user.target - 정상적 사용
4 . Not used = 사용 x = 따로 정의해야함
5 . graphical.target - GUI
6 . reboot.target - 시스템 재부팅
apt 명령 | 명령 | 설명 | get 명령 | 
|---|---|---|
| apt list | 패키지 목록 | dpkg -l | 
| apt list --installed | 패키지를 설치 | |
| apt show | 패키지 상세 정보 | apt-cache show | 
| apt remove | 패키지 삭제 | apt-get remove | 
| apt purge | 패키지와 관련 설정 파일 일괄 제거 | apt-get purge | 
| apt update | 사용 가능한 패키지의 목록 업데이트 | apt-get update | 
| apt upgrade | 패키지 설치/업그레이드를 통해 시스템 업그레이드 | apt-get upgrade | 
| apt autoremove | 불필요한 패키지 자동 제거 | apt-get autoremove | 
| apt full-upgrade | 가능한 모든 패키지 업그레이드 | apt-get dist-upgrade | 
| apt search | 프로그램 검색 | apt-get search | 
| apt edit-sources | 소스 정보 파일 편집 | |
| 다운 실행 | apt-get download+ 패키지 명 | 
| 이름 | 설명 | 
|---|---|
| FAT32 | 디지털 카메라 등에 장착되는 대부분의 메모리 카드와 수많은 컴퓨터 시스템에 널리 쓰이는 컴퓨터 파일 시스템 구조 | 
| NTFS | 윈도우 NT 계열 운영체제의 파일 시스템 | 
| ISO 9660 | CD rom 형식과 CD rom에서 파일을 표현하는 방법에 대해 ISO(국제 표준화 기구) DPTJ가 정한 표준 규격 | 
| nfs(★) | Linux network file-system, 네트워크 파일 체계. 규약을 사용하면 통신망을 통해 저장된 컴퓨터에서 다른 컴퓨터의 디스크를 간단한 방법으로 접근 | 
| ext4(★) | Linux가 현재 기본으로 사용하는 file-system, ext2,ext3에서 발전 | 
| SWAP | 부족한 Memory 보충을 위한 file-system, 보통 실제 메모리의 2배 설정 | 
| 저널링 | log 기록하여 정확성 체크 | 
mount : 물리적으로 존재하는 장치를 논리적인 dirtory에 연결을 의미. 특정장치를 사용하기 위해 메모리 할당은 특징root@il7:/# fdisk -l			- 마운트 정보 확인
Disk /dev/sda: 30 GiB, 32212254720 bytes, 62914560 sectors
Disk model: VBOX HARDDISK 				★ ( RockyLinux에선 VBoxLinuxAdditions.run 실행파일을 켠 이유)
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 75875877-E953-4D00-9FCF-5CC253151856
Device        Start      End  Sectors Size Type
/dev/sda1      2048     4095     2048   1M BIOS boot
/dev/sda2      4096  2101247  2097152   1G Linux filesystem
/dev/sda3   2101248  6295551  4194304   2G Linux swap
/dev/sda4   6295552 31461375 25165824  12G Linux filesystem
/dev/sda5  31461376 41947135 10485760   5G Linux filesystem
/dev/sda6  41947136 62912511 20965376  10G Linux filesystem

root@il7:~# df -h					 				- 디스크에 마운트 확인
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           198M  760K  197M   1% /run
/dev/sda4        12G  4.5G  6.7G  41% /
tmpfs           988M     0  988M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/sda2       974M  130M  777M  15% /boot
/dev/sda6       9.8G   24K  9.3G   1% /data
/dev/sda5       4.9G  136K  4.6G   1% /home
tmpfs           198M  4.0K  198M   1% /run/user/1000
root@il7:~# mount -t vboxsf			 				-  VirtualBox의 공유 폴더(file sharing) 기능을 위한 가상 파일 시스템과 mount 하는 작업
root@il7:~# mount -t vboxsf win /yes 
=
mount [options] <source> | [--target] <directory>
mount -t 		vboxsf 		  win    	/yes 
		(마운트 드라이브형식)   (window파일)  (Linux 파일)
root@il7:/# df -h	
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           198M  760K  197M   1% /run
/dev/sda4        12G  4.5G  6.7G  41% /
tmpfs           988M     0  988M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/sda2       974M  130M  777M  15% /boot
/dev/sda6       9.8G   24K  9.3G   1% /data
/dev/sda5       4.9G  136K  4.6G   1% /home
tmpfs           198M  4.0K  198M   1% /run/user/1000
win             932G  132M  932G   1% /yes			- 마운트 성공
root@il7:~# cd /yes/								- 경로 변경
root@il7:/yes# ls									- 정상적인 마운팅이 완료
' 드디어 되어따'   test.txt   winwin.txt
vi /etc/fstab
12 /dev/disk/by-uuid/bb54bda0-2f6e-4bda-9d6a-cf6a2cf52c96 	/home 			ext4 	defaults,usrquota 		0 		1
    <file system> 										<mount point>   	<type>  		<options>    <dump>  <pass>| Option | 의미 | 
|---|---|
| defaults | rw + auto(자동 마운팅) + nouser(일반계정 마운트x) = 계정의 용량 제한할때 사용 | 
| dump (백업을 수행) | 1 : dump on! / 0 : dump off! | 
| fsck | 1,2 : 파일 시스템 검사와 복구를 수행! (1,2는 우선순위) / 0: 검사 복구 수행 x | 
| > fsck는 파일 시스템을 검사하는 동안 시스템의 부하를 줄이기 위해 파일 시스템을 읽기 전용 모드로 마운트하고 검사를 수행. 따라서 파일 시스템을 검사하려면 해당 파일 시스템을 마운트 해제한 후 fsck를 실행요함. | |
| tmpfs | 하나 이상의 프로세스 영역에 접근할 수 있도록 공유 메모리 지원 | 
| UUID | Universioal Unique IDentifier : 범용 고유 식별자 장치나 구성 설정에 할당되는 고유 값 |