티스토리 뷰

 

XFS 64비트 파일시스템

현재 사용되는 파일시스템 중 가장 큰 파일 생성 가능
standalone [ 데몬 프로세스를 실행하는 방법 ]
: 백그라운드에서 데몬이 요청을 기다린다
>> 요청이 들어오면 독립적으로 처리한다
>> 항상 메모리에 올라와 있기에 자원을 많이 사용한다

웹 / 메일 등에 자주 사용되는 서비스
inetd [ 데몬 프로세스를 실행하는 방법 ]
>> 서비스 요청이 있을 때마다 inetd 라는 슈퍼 데몬에 의해 할당하는 데몬을 실행한다
>> 시스템 자원 관리에 효율적이다
>> 속도가 느리다

웹 / 메일 등에 자주 사용되지 않는 서비스

커널 2.4버전부터 xinetd가 inetd 역할 수행

xinetd 는 환경설정 파일을 이용해서 자체 접근 제어 가능

# / etc / init.d / 서비스명 [ 실행옵션 ] 사용
ex> / etc / init.d / httpd  start
cifs 유닉스 윈도우 동시에 지원하는 표준 파일 규약 프로토콜
# 삼바 파일 시스템 마운트 할 때 지정하는 유형 값
smb >> cifs 로 바뀌었다
udf 광 디스크의 파일 저장용 파일 시스템의 포맷 규격
nfs NFS 서버에서 공유한 파일 시스템을 NFS 클라이언트에서 마운트 하여 사용하는 FS

 

 

 

 

 

명령어

umask 권한을 빼주는 옵션
chmod ex> chmod 7 lin.txt == 007 

# IPv6 주소 축약하는 것과 비슷하게 생각하자
Sticky Bit Set-UID / Set-GID 는 s  사용

Sticky-bit 는 t 사용

실행 권한이 있는 x : t
실행 권한이 없으면 T
SET - UID - 이 권한이 사용된 파일을 실행 시 실행시킨 사람의 권한이 아닌 파일 소유주의 권한으로 실행한다

- 유저 실행 권한에 x 대신 s 가 붙은게 적용된 파일이다

- x 의 유무는 소문자와 대문자로 구분한다
S = x 없다
s = x 있다
du 디렉터리 사용량을 확인

- s : 사용량의 합계 ( 하위 디렉터리 X )
- h : 사람이 이해하기 쉽게 단위 표시
- a : 디렉터리 내부의 각 파일 별 사용량
- b / k / m : 각 단위별 표기
df 시스템 전체 디스크의 정보

- i : inode 확인
- h : 단위
- T : 파일시스템 타입
fsck 디스크 검사 / 파일시스템 복구
-  / lost + found : 파일 시스템 복구를 위한 fsck의 링크 디렉터리
export 환경 변수 생성
사용자 환경변수를 전역 변수로 설정
env 전역변수 설정 및 조회
set shell 변수 global 변수 모두 출력 가능
사용자 환경변수 설정 및 조회
grep <문자열> 문자열이 들어간 문장 찾기
nohup - 로그아웃해도 백그라운드 프로세스로 작업 가능

- 실행중인 프로세스 표준출력 / 표준에러를 nohup.out 파일 생성하여 기록

- 쓰기 작업 권한 없다면 $HOME/nohup.out 파일 생성하여 기록

# 자동 백그라운드 보내는게 아니라 & 명령어 이용해야 가능
killall - [signal] [process 이름]  
kill - [signal] [PID] ex> kill -9 1000, 1001, 1002 불가

kill -9 1000 1001 1002 로 띄어야 한다
pico 편집기 Ctrl + P / N / B / F
p : previous 이전 줄
n : next 다음 줄
b : back 뒤 ( 왼쪽 )
f : front 앞 ( 오른쪽 )

Ctrl + i 화면갱신
Makefile 프로그램의 빌드 과정을 표준 문법으로 기술한 파일

[ Makefile 이 존재하면, configure 없이 그 다음 단계 진행 ]
rpm - v : verbose
- q : query
- V : verify 
- c : configfiles
- h : # 기호 표현
-- nodeps : 의존성 관계 무시 설치
- i :  install
- U : upgrade == - i
- F : freshen 이전 버전 설치 되어있는 경우 설치 
mount -t [ FS ] [ dev ] [ mount point ] - CDroom : iso9660

- ms-dos : msdos

- windowsXP : ntfs

- ISO : loop

- NFS : nfs

- samba : smbfs
mount - a : / etc / fstab 에 있는 파일 시스템 모두 마운트
- o : 옵션 추가
remount / ro / loop ( iso 파일 마운트 ) /
-  o [ 계정 ] [ 패스워드 ]  : 마운트 할 때  계정 인증 필요할 때
quota - quotaon : 디스크 할당량 제한

- edquota : 디스크 할당량 설정

- quotacheck : 디스크 사용량 할당 정보 체크
chsh 셀 변경 명령어
- l :  변경 가능한 셀 list == cat  / etc / shells
histtimeformat 명령어를 수행할 때마다 현재시각을 history 에 기록
histfile 히스토리 파일의 절대 경로
finger 계정 정보 확인

- l : 좀 더 자세한 정보를 출력

- s : 간략한 정보 출력
service 서비스 실행 가능
jobs 백그라운드 작업 확인
( + ) 는 가장 최근에  실행
(  - ) 는 최근 실행 바로 전 
crontab - l : list
- r : remove
- e : edit
- u : user
fork 프로세스 복제 
- 하나의 프로세스가 다른 프로세스를 실행하기 위한 시스템 호출 방법 
exec 프로세스가 지정된 파일 실행 / 시스템 호출
# inetd 클라이언트의 서비스 요청시 프로세스 실행하고
종료 후에는 자동으로 프로세스 종료
awk - 패턴 탐색과 처리
- grep 과 비슷하
printf 자료를 형식화 하여 출력 ( C 언어 방식 )
sed vi 편집기의 문자열 치환과 같은 패턴으로 셀 환경에서 치환 가능
vi  - r  스왑 파일 리스트
vi  - r  [ file ] file.swp 내용 불러온 ( 복구모드 )
   
top 시스템 전체 상태 실시간 확인
[ CPU / PID ... ]
nice 프로세스를 새로 생성하는 경우에 초기 설정된 작업의 우선순위 변경
renice 실행되고 있는 프로세스의 우선순위를 변경 [ 프로세스 증가 없다 ]
vmstat 가상메모리 상태 확인
lspci 시스템에 설치된 모든 설정 및 정보를 출력
mke2fs 파일 시스템 생성
기본 설정 : / etc / mke2fs.conf
- t : 파일 시스템 설정
- j : 저널링 시스템으로 설정 >> 저널링 시스템은 ( ext 3 )
- b : 블록 크기 지정
- c : 배드 블럭 검사
ps - a : 터미널과 연관된 프로세스 출력 [ x 와 같이 사용하여 모두 출력 ]
- u : 소유자 기준 출력
- x : 데몬 프로세스처럼 터미널에 종속되지 않는 프로세스 출력
scanimage 이미지 스캔 명령어
- d : SANE 의 장치 파일명
- - format : 이미지 형식 지정 옵션 [ pnm / tiff ]
- L  : 사용 가능한 스캐너 장치 목록 출력

 

프로세스 우선순위를 뜻하는 NI 값 - 20 ~ 19 까지 가능하다
프로세스 상태코드
Z : zombie
T : stopped
W : paging

 

KILL 명령어
- l list 목록 확인
1 SIGHUP 재시작
2 SIGINT 인터럽트 [ == Ctrl + C ]
9 SIGKILL 강제종료
15 SIGTERM 정상종료
20 SIGSTP Ctrl + Z

 

디렉터리
/ boot 부트 이미지 디렉터리
/ bin 사용자 명령어 디렉터리
/ dev 장치 파일 디렉터리
/ etc  시스템 환경 설정 디렉터리
/ etc / rc . d 부팅 레벨별 부팅 스크립트 파일이 저장된 디렉터리
/ etc / rc.d / init.d 시스템 초기화 파일들이 저장된 디렉터리
/ etc / crontab 관리자가 직접 지정한 작업 설정 / 임의의 사용자 권한으로 실행 가능 / 시스템 관련 작업을 등록
/ lib 공유 라이브러리 및 커널 모듈 디렉터리
/ misc 아키텍처 독립 자료 디렉터리
/ mnt 마운트 포인트 디렉터리
/ opt 커널과 프로세스를 위한 가상 파일 시스템 디렉터리
/ root 루트 사용자 홈 디렉터리
/ sbin 시스템 명령어 디렉터리
/ tmp 임시 작업 디렉터리
/ usr 공유 파일 시스템 디렉터리
/ var 가변 자료 디렉터리
/ var / spool / cron crontab 파일 위치
/ lost + found 파일 시스템 복구를 위한 fsck의 링크 디렉터리
/ etc / bashrc 전역 환경변수 설정 파일
$ HOME / .bashrc 개인 사용자 환경변수 설정 파일
bash_logout : 사용자 로그아웃할 때에 실행할 명령을 등록하는 파일
bashrc : 개인 사용자
문법 강조 기능 Vi / Vim
GUI 기반 에디터 gedit
자동 들여쓰기 nano / vi
GPL 라이선스 nano
Apache 라이선스 pico


pico 가 불편해서 nano 개발

GNU emacs 는 리처드 스톨만이 'EMACS LISP' 라 하는 LISP 에 기반을 두는 
환경설정 언어를 가지고 처음부터 다시 만들었다 >> ELISP 라고도 불린다

 

FTP
mput 파일 업로드
mget 파일 다운로드

 

 

emacs 편집기
Ctrl + x
Ctrl + s
저장
Ctrl + x
Ctrl + c
종료
Ctrl + space 마크 설정
Ctrl + w 잘라내기
Ctrl + y 붙이기
Ctrl + k 한 줄 지우기
Ctrl + a 커서를 줄 맨 앞으로 이동
Ctrl + e 커서를 줄 맨 뒤로 이동
Ctrl + n 커서를 아래로 한 줄 이동
Ctrl + s 커서 아래 부터 찾을 문자열 검색
Ctrl + r 커서 위부터 찾을 문자열 검색
Ctrl + g 명령 끄기
ESC
%
" "
'  '
문자열 치환

 

Vi 문자열 치환

시작행, 끝행s / 원래 문자열 / 변경 문자열 / 옵션

 시작행 / 끝행 대신 전체 행을 표현하는 % 사용한다

 / < : 원래 문자열에 해당하는 단어 / \ >

 g 는 한 행에 원래 문자열이 여러번 나오면 전체를 변경하는 옵션
 
 ex> % s / \ < ihd \ > / linux / g
 
 
 
 간단하게 정리
 
 ^ 문장 시작
 $ 문장 끝
 < 단어 시작
 > 단어 끝
 
 \ 를 기호 앞에 써주면, 글자로 인식한다
 
 < 와 > 앞에는 \ 를 적어서 단어의 처음과 끝을 인식해줘야한다
 ^ 과 $ 는 \ 가 필요없다 아마도 커널 자체 설정에 내장되어 있는듯? 커널 설정파일을 못찾았다
vi 로 파일을 열면서 커서 이동

vi + 숫자 : 커서 위치 조정
숫자 없이 + 만 사용하면 맨 아랫줄로 이동
vi

abbrevation 설정 기능 >> 자주 입력하는 단어를 약어 설정
ab [ 약어 ] [ 문자열 ] : 약어를 입력하면 문자열로 대체 
ab : 현재 설정된 약어 목록 확인

 

 

 

 

 

/etc/fstab  >>  Dev | Mount Directory | FS type | Mount Option | dump 여부 | FS Check >> 6필드
VAR1=linux 는 환경변수 등록 X
export VAR2=linux2 환경변수 등록
소스파일 이용하여 프로그램 설치
Configure >> make >> make install
[ make 단계에서 타겟과 의존성 관련 작업 수행 후 실행파일 만든다 ]
./configure --prefix=path

configure 작업으로 생성된 다양한 파일 제거
make clean

 

cmake 기반 프로그램 (KDE / MySQL) 설치 순서
cmake >> makeinstall

 

ls file[12].py : file1.py 를 우선 찾고 없으면 file2.py 를 출력하라
최초의 프로세스 PID 는 1 이다

 

 

RedHat 계열 ( RPM 기반 ) - yum / rpm / apt
Devian 계열 ( dev 기반 ) - apt / dpkg / aptitude
openSUSE ( RPM 기반 ) : yaST / zypper

yaST : 패키지 설치 ~ 마우스 프린터 네트워크 부트로더 설정까지 지원하는 강력한 기능
데비안 계열 패키지 관리 프로그램
alien : rpm		[ - e : erase ]
apt-get : yum / dnf		[ - r : remove ]
dselect : dpkg 를 대화식 연속 처리
저장소 기반 패키지 관리기법 : yum / apt-get / zypper

 

 

Yum
install 설치
remove 삭제
update 업데이트
모두 업데이트 [ yum - y update ]
search 검색
info 정보
list [ word ] 단어가 포함된 패키지 리스트
history 작업 이력 출력
whatprovides [ filename ] 특정 파일 제공한 패키지

 

dpkg
- i install ( 패키지 설치 )
- l 설치된 패키지 list
- I Info
- c contents ( 패키지파일에 포함된 파일 목록 출력 )
- L Listfiles ( 패키지가 설치한 파일 목록을 출력 )
- r remove ( 패키지 제거 / 환경 설정 파일은 제거 X )
- P purge ( 환경 설정 파일까지 전부 제거 )
- - unpack 환경 설정은 하지 않고 패키지를 푼다
- - configure  - - unpack 옵션으로 풀린 패키지를 환경 설정

 

 

프린터 설정시
system-confi-printer 명령어 사용하여 설정
CUPS 로 로컬연결된 프린터를 네트워크 프린터처럼 사용 가능
리눅스 파일시스템에 프린터 직접 연결 시, 자동으로 파일 생성
usb포트에 연결하면, /dev/usb/lp0
직렬 포트에 연결하면, /dev/lp0


lpd : 프린터 데몬
lpc : 프린터 컨트롤
lpq : 기본프린터의 큐 목록 출력
lprm : 프린터 큐 작업 삭제
lpr : 내용 출력
lpstat : lp프린터 상태 출력


LPRng : 버클리 프린팅 시스템
CUPS : 애플 개발한 오픈소스 프린팅 시스템
[ HTTP 기반의 IPP ( Internet Printing Protocol ) 사용 ]
[ SMB 프로토콜 부분적 지원 ]
[ System V 형식과 BSD 형식의 커맨드라인 인터페이스 지원 ]

System V : lp / lpstat /cancel
BSD : lpr / lpq / lprm / lpc

 

표준 유닉스 장치 시스템 콜에 기반을 둔 것은 OSS ( 유닉스 사운드 인터페이스 )

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함