어디서 펐는데....오래되서 기억이 안나네요...ㅎㅎ
시스템 종료 명령어 | ||
shutdown |
| 시스템 종료 |
-h now / halt / init 0 | 시스템 종료 | |
-h +10 | 10분 후 종료, h:halt | |
-r 22:00 | 오후 10시에 재부팅, r:reboot | |
-c | 예약된 shutdown명령 취소 | |
-k now | 종료 메세지는 보이나 종료 안됨 | |
-r now /reboot /init 6 | 재부팅 | |
logout / exit |
| 로그아웃 |
init 명령어 | 런레벨(Runlevel) /etc/inittab 에 지정되어 있음 | |
init | 0 | 종료모드 |
1 | 단일 사용자 모드(시스템 복구시 사용) | |
2 | NFS 없는 다중 사용자 모드 | |
3 | 텍스트 모드의 다중 사용자 모드 | |
4 | ||
5 | x윈도우 모드의 다중 사용자 모드 | |
6 | 재부팅 모드 | |
vi | 명령모드 -> 입력모드 | |
vi | i | 커서 위치에서 입력 모드 변경 |
a | 커서 위치 우측 한 칸에서 입력 모드 변경 | |
s | 커서 문자를 지우고 입력 모드 변경 | |
x | 한 문자만 지우기 | |
del | 커서 위치 문자 삭제 | |
dd | 한 줄 잘라내기 | |
15dd | 15줄 잘라내기 | |
yy | 현재 커서 라인 복사 | |
15yy | 15줄 복사 | |
dw | 한 줄 잘라내기 | |
15dw | 15줄 잘라내기 | |
p | 현재 커서의 아랫 줄에 붙여넣기 | |
P | 현재 커서가 있는 줄에 붙여넣기 | |
u | 되돌리기 | |
:! [command] | 멀티태스킹 기능 | |
:e [filename] | 파일열기 | |
:q | 종료[변경 없음] | |
:q! | 강제 종료[변경 무시] | |
:w | 저장 | |
:wq | 저장 후 종료 | |
x : == wq | vi 편집기 종료 | |
x : == w | vi 편집기 종료 | |
"Ctrl + f" | 아래 화면 페이지 이동 | |
"Ctrl + b" | 위의 화면 페이지 이동 | |
G | 파일의 제일 마지막으로 이동 | |
gg(Shift+g) | 파일의 가장 처음으로 이동 | |
80G | 파일의 80번째 줄로 이동 | |
r | 한 문자만 변경 | |
R | Replace | |
| ||
set nu | 줄 번호 보이기 | |
set nonu | 줄 안보이기 | |
set ts = 4 | Tab 키의 공백 넓이를 지정 (기본값: 8) | |
vi !/.exrc | set ts=4 등의 환경설정 저장 | |
new [filename] | 화면 분할 기능 | |
"Ctrl + w + w" | 화면간 이동 | |
find ./ [찾을 문자열] | 현재 디렉토리에서 검색 | |
find ./ -name "*.txt" -print | xargs grep [찾을 문자열] | *.txt에서 문자열 검색 | |
:/long | 아래로 long이라는 문자열 찾기 | |
:?long | 위로 long이라는 문자열 찾기 | |
tip) vi 에디터 비정상적 종료시 대처법 | ||
예제 | ||
vi abc.log 를 비정상적으로 종료시 2. ls -a 로 파일 확인하고 "rm .install.log.swp"으로 삭제 | ||
man 명령어 | ||
man (manual) | name | 명령어의 이름과 간단한 설명 |
synopsis | 사용법을 개괄적으로 보여줌 | |
description | 해당 명령어의 자세한 설명 | |
option | 해당 명령이 사용하는 옵션들의 설명 | |
environment | 해당 명령이 사용하는 환경 변수들에 대한 설명 | |
examples | 해당 명령을 사용하는 예제 | |
files | 명령과 관련되 명령에서 사용하는 파일들을 설명 | |
see also | 해당 명령과 관계된 다른 설명 및 관련 문서를 보여줌 | |
warnings | 해당 명령을 사용하면서 발생할 수 있는 문제점들을 설명 | |
diagnostics | 해당 명령을 사용하면서 발생하는 각종 오류 메시지들에 대한 설명 | |
bugs | 해당 명령의 알려진 버그에 대한 설명 | |
genisoimage | iso 생성 | |
| ex) | genisoimage -r -J -o ㅁ.iso /boot |
-r -J | 8글자 이상의 파일명 및 대소문자를 구분해서 인식 | |
-o | 출력할 파일을 위한 옵션 | |
a.iso | 생성될 iso 파일명 | |
/boot | 포함될 파일 또는 디렉토리 | |
cdrecord | cd로 굽기 | |
growisofs | DVD로 굽기 | |
ls | dos의 "dir" | |
현재 디렉토리 목록 | ||
| /usr/bin | /usr/bin 의 디렉토리 목록 |
-a | 디렉토리 목록(숨김파일 포함) | |
-I | 디렉토리 목록 자세히 | |
*.txt | txt파일 보여줌 | |
-l /usr/bin/a* | /usr/bin/ 디렉토리에서 앞글자가 a인 목록 | |
cd | 디렉토리 이동 | |
사용자의 홈 디렉토리로 이동 | ||
| ~root | root 사용자의 홈 디렉토리로 이동 |
.. | 상위 디렉토리로 이동 | |
/usr/bin | /usr/bin 디렉토리로 이동(절대경로) | |
../usr/bin | 상대경로로 이동 | |
pwd | 현재 작업중인 디렉토리 경로 출력 | |
rm | 삭제(권한 요구) | |
a.txt | 삭제(내부적으로 rm -i로 연결) | |
-i a.txt | 삭제 시 확인을 물어본다 | |
-r a | a 디렉토리 삭제 | |
-rf a | a 이하 전부 강제 삭제 | |
rf | 포멧 | |
cp | 복사 | |
a.txt b.txt | a.txt를 b.txt 파일로 복사 | |
-r a b | 디렉토리 복사 | |
touch | 크기 0 파일 생성 존재시 수정 시간 변경 | |
a.txt | a.txt라는 크기 0 파일 생성 | |
mv | 파일 이름 변경 및 위치이동 | |
a b c d | a, b, c 파일을 d 디렉토리로 이동 | |
a.txt b.txt | 이름 변경 | |
mkdir | 새로운 디렉토리 생성 | |
a | 현재 디렉토리 아래 a 디렉토리 생성 | |
-p a/b | 현재 디렉토리 아래 a/b 디렉토리 생성 | |
rmdir | 디렉토리 삭제 | |
a | 현재 디렉토리 아래 a 디렉토리 삭제 | |
cat | 텍스트 작성 파일 화면에 출력 | |
a.log | a.log 텍스트 파일 화면에 출력 | |
head | 텍스트 파일 앞 10행 출력 | |
a.log | a.log파일 앞 10행 출력 | |
fail | 텍스트 파일 뒤 10행 출력 | |
a.log | a.log파일 뒤 10행 출력 | |
more | 텍스트 파일 페이지 단위 출력 | |
"space" | 다음페이지 | |
"b" | 앞 페이지 | |
"Q" | 뒷 페이지 | |
+100 a.log | a.log파일 100행 부터 출력 | |
less | more의 확장 | |
file | 파일의 종료 표시 | |
clear | 명령창 청소 | |
사용자 및 그룹 관련 명령어 | ||
useradd (or) adduser | 실행시 /etc/passwd, /etc/shadow, /etc/group에 새로운 행 추가 | |
newuser | ||
-u a newuser | a 라는 이름의 유저 추가 | |
-g mygroup newuser | mygroup에 포함된 newuser 생성 | |
-d /newhome newuser | 홈 디렉토리가 newhome인 newuser 생성 | |
-s /bin/csh newuser | 기본 셀 /bin/csh 지정 | |
passwd | 비밀번호 지정 및 변경 | |
newuser | newuser의 비밀번호 지정 및 변경 | |
usermod | useradd와 사용법 동일, 사용자 속성 변경 | |
-g root newuser | newuser의 그룹을 root 그룹으로 변경 | |
userdel | 사용자 삭제 | |
newuser | newuser 삭제 | |
-r newuser | ||
change | 사용자 암호 주기적 변경 | |
-l newuser | newuser에 설정된 사항 확인 | |
-m 2 newuser | 설정암호 최소 일자(2일) | |
-M 30 newuser | 설정암호 사용가능 일자(30일) | |
-E 2013/12/12 newuser | 2013/12/12에 암호 만기 | |
-W 10 newuser | 만기 10일 부터 경고 메세지 출력 | |
groups | 사용자가 속한 그룹 표시 | |
groupadd | 새로운 그룹 생성 | |
newgroup | newgroup이란 이름의 새로운 그룹 생성 | |
-g 555 newgroup | 그룹 ID가 555인 newgroup생성 | |
groupmod | 그룹 속성 변경 | |
-n newgroup mygroup | newgroup 이름을 mygroup으로 변경 | |
groupdel | 그룹 삭제 | |
newgroup | newgroup 그룹을 주요 그룹으로 지정한 사용자가 없을 때 사용 가능 | |
gpasswd | 그룹의 암호를 생성하거나 관리를 수행 | |
newgroup | newgroup의 암호지정 | |
-A newuser newgroup | newuser를 newgroup의 관리자로 지정 | |
-a user1 newgroup | user1을 사용자로 추가 | |
-d user1 newgroup | user1을 사용자에서 제거 | |
RPM | ||
-Uvh [package file] | 설치 | |
-U | 설치되어 있지 않다면 'i'와 같이 설치, 설치되어 있다면 업데이트 | |
-v | 설치 진행 상황 확인 | |
-h | 설치 진행 과정을 화면을 출력 | |
-e [package name] | 삭제 | |
↓ 이미 설치된 패키지 질의 | ||
-qa [package] | 설치되었는지 확인 | |
-qf [파일 절대 경로] | 어느 패키지에 포함 된 것인지 확인 | |
-ql [package] | 어떤 파일이 포함되었는지 확인 | |
-qi [package] | 상세정보 | |
↓ 설치되지 않은 패키지 질의 | ||
-qlp [package] | 어떤 파일이 포함되었는지 확인 | |
-qip [package] | 상세정보 | |
YUM | ||
| install [package] | 패키지 설치 |
-y | 무조건 yes로 선택하여 설치 | |
install [rpm file] | rpm 파일 설치 | |
check-updata [package] | 업데이트 가능한 목록 보기 | |
updata [package] | 패키지 업데이트, 없다면 설치 | |
remove [package] | 패키지 제거 | |
info [package] | 패키지 정보 | |
localinstall [package] | 로컬에서 설치(iso파일에서 설치) | |
groupinstall [package group] | yum grouplist로 확인 후 통채로 설치 | |
list [package] | 패키지 리스트 출력 | |
list all | 모든 패키지 파일 출력 | |
list mysql* | mysql이 들어간 모든 패키지 파일 출력 | |
provides [filename] | 특정 파일이 어느 패키지에 들어있는지 보기 | |
install --nogpgcheck [rpm file] | GPG키 검사 생략 설치시 GPG키 생략하고 설치됨 | |
파일 압축, 묶기 | ||
bzip2 | bz2로 압축하거나 풀기 | |
[filename] | 파일명.bz2로 압축 | |
-d [filename.bz2] | 파일명.bz2를 일반파일로 만든다 | |
bunzip2 | bzip2 -d와 동일 | |
gzip | gz으로 압축하거나 풀기 | |
[filename] | 파일명.gz로 만든다 | |
-d [filename.gz] | 파일명.gz를 일반파일로 만든다 | |
tar | 확장자명 tar로 묶거나 풀기 | |
c | 새로운 묶음 | |
x | 묶은 파일 풀기 | |
t | 묶음을 풀기 전 경로 표시 | |
f | 묶음 파일 명 지정 | |
v | 과정 표시 | |
z | tar + gzip | |
j | tar + bzip2 | |
사용 예제 | ||
tar cvf a.tar | ||
tar xvfj a.tar.bz2 | ||
tar xvfz a.tar.gz | ||
파일 위치 검색 | ||
find | [경로] [옵션] [조건] [action] | |
옵션 | ||
-user | 소유자 | |
-newer | 전, 후 | |
-perm | 허가권 | |
-size | 크기 | |
경로 | ||
디폴트 | ||
-exec | 외부 명령 실행 | |
사용 예제 | ||
/etc -name "*.conf" | /etc 에 확장자 conf 파일 검색 | |
~ -perm 644 | 허가권이 644인 파일 검색 | |
/bin -size +10k -size -100k | 10kb~100kb인 파일 검색 | |
~ -size 0k -exec ls -l { } \ | 사용자 홈 디렉토리 하위에 파일 크기가 0인 파일 목록 상세히 출력 | |
/home -name "*.swp" -exec rm { } \ | /home 홈 디렉토리 하위에 확장자 swp파일 삭제 | |
which | [실행파일명] | PATH에 설정된 디렉토리 검색 (절대 경로 포함) |
whereis | [실행파일명] | 실행 파일 및 소스 man 페이지 파일까지 검색 |
locate | [filename] | updatedb 명령 이후 사용 가능 파일 목록 데이터베이스 검색 |
wine 설치하기 >> http://kltp.kldp.net/stories.php?story=00/08/11/9653999 | ||
시스템 설정 | ||
ststem-config-xxxx | ||
yum -y install system-config-xxxx | 패키지 업데이트 | |
boot | 초기 부팅 설정 | |
data | 날짜, 시간 설정 | |
firewall | 방화벽 | |
keyboard | 키보드 | |
language | 언어 | |
lvm | lvm설정 | |
network | 네트워크 | |
printer | 프린터 | |
rootpassword | root 비밀번호 | |
service | 서비스 가동/중지 | |
users | 사용자 설정 | |
bind | 네임 서버 | |
display | x 윈도우 환경 설정 | |
httpd | 웹 서버 설정 | |
nfs | NFS 서버 설정 | |
samba | 삼바 서버 설정 | |
vsftpd | FTP 서버 설정 | |
CRON | 주기적으로 반복되는 일 설정 -etc/crontab 파일 | |
예제 | ||
01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 04 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly | 분 시 일 월 요일 권한 실행명령(0~6 = 일~월요일) | |
AT | 일회성 작업 예약 한 번 실행되고 소멸 | |
예제 | ||
at 실행 후 #at <시간>, 완료시 ctrl+D, 확인 at-l, 취소 atrm <작업번호> | ||
네트워크 관련 명령어 | ||
system-config-network | ||
system-config-network-tui | 텍스트 기반 | |
service network (start/stop/restart/status) | ||
ifup [device name] ifdown [device name] | 장치 작동/중지 | |
ifconfig [device name] | 해당 장치의 ip주소 설정 정보 출력 | |
nslookup | DNS 서버 작동 테스트 | |
ping (IP/URL) | 네트워크 응답 테스트 | |
network 설정관련 파일 | system-config-network 후 | |
/etc/sysconfig/network | 네트워크의 기본적인 정보가 설정된 파일 | |
/etc/sysconfig/network-script/ifcfg-eth0(or ifcfg-eth1) | 장치에 설정된 네트워크 정보 모두 | |
/etc/resolv.conf | DNS서버의 정보 및 호스트 이름이 들어있는 파일 | |
/etc/hosts | 호스트 이름 및 FQDN이 들어있는 곳 | |
파이프, 필터, 리다이렉션 | ||
pipe | 두 개의 프로그램을 연결해주는 연결통로 | 을 이용함 | |
예제 | ||
ls -l /etc | more | /etc에 파일이 너무 많아서 한페이지씩 봄 | |
filter | grep, tail, wc, sort, grep, awk, sed 등 | |
예제 | ||
ps -ef | grep bash | ps -ef 는 모든 프로세스 번호 출력하므로 bash라는 글귀가 들어간 프로세스만 출력 | |
rpm -qa | grep bind | 설치된 패키지중 bind라는 글자가 들어간 패키지만 출력 | |
re-direction | 표준 입출력 방향을 바꿈, 이를 파일로 처리하고 싶을 때 주로 사용 | |
예제 | ||
ls -l > aa.lst | ls -l의 결과를 aa.lst 파일에 씀(orerwrite) | |
ls -l >> aa.lst | 위와 같지만 append | |
sort < aa.lst | aa.lst 파일을 정렬해서 화면에 출력 | |
sort < aa.lst > bb.lst | aa.lst를 정렬해서 bb.lst에 쓴다. | |
프로세스 관련 명령어 | ||
ps | 현재 프로세스 상태 확인 | |
ps -ef | grep [process name] | ||
kill | 프로세스 강제 종료 "-9" 옵션을 함께 사용하면 무조건 종료 | |
kill -9 [process number] | ||
데몬(Daemon) ~= 서비스(Service) | 눈에는 보이지 않지만 현재 시스템에서 활동중인 프로세스 (백그라운드) | |
데비안 패키지 명령어 | ||
apt-get | 소프트웨어 패키지의 설치, 제거, 업그레이드, 전체 OS의 업그레이드에 사용하는 커맨드 라인 프로그램 | |
| update | 패키지 리스트 업데이트 |
install [package name] | 패키지 설치 단 .deb같은 인터넷에서 다운받는 패키지는 dpkg라는 명령어 이용 | |
install [package name] --no-upgrade | 설치된 패키지가 업그레이드 되는 걸 방지하면서 새 패키지 설치 | |
install [package name] --only-upgrade | 새 패키지가 설치되는 걸 방지하면서 이미 설치된 패키지 업그레이드 | |
upgrade | 설치된 패키지 업그레이드 | |
dist-upgrade | 설치된 시스템패키지 포함한 패키지를 업그레이드 | |
clean | 다운받은 패키지 설치 파일 정리 | |
autclean | 설치된 패키지중 사용되지 않는 패키지를 자동으로 선택하여 삭제 | |
remove | 패키지 삭제 dpkg를 통해 설치된 패키지 포함 | |
autoremove [package name] | 내려받은 패키지 파일(.deb) 중 이젠 못 받을정도로 쓸못없는 것들만 로컬저장소에서 삭제하여 디스크 공간 확보 | |
autoremove | 과거에 다른 패키지의 의존성 때문에 지금은 필요없는 패키지 제거 | |
purge [package] | 패키지 완전 삭제 해당 패키지의 설정파일들도 삭제 | |
--download-only source [package name] | 패키지의 소스코드만 내려받기 | |
--compile source [package name] | 패키지의 소스를 내려받아 압축을 풀고 컴파일 | |
download [package] | 패키지를 현재 디렉토리에 내려받기만 하고 설치하지 않기 | |
changelog [package] | 패키지의 변경사항 확인 | |
check | 패키지 캐시를 업데이트하고의존성에 문제 없는지 확인 | |
build-dep | 해당 패키지의 소스를 컴파일 하기 위해 필요한 패키지 설치 | |
add-apt-repository [add repo link] | 데비안 레포를 추가함 | |
apt-cache | apt 소프트웨어 패키지 캐시를 검색하기 위한 데비안 기반 시스템에 설치 할 수 있는 패키지 검색에 사용 | |
pkgnames | 사용 할 수 있는 모든 패키지 출력 | |
search [package name] | 검색어와 연관된 패키지 이름과 설명 출력 | |
show [package name] | 패키지 정보 확인 | |
showpkg [package name] | 특정 패키지 의존성 확인 | |
stats | 캐시 현황 확인 |
'사무용 리눅스-교육용 리눅스' 카테고리의 다른 글
우분투 - 개인용 데스크탑으로 쓰기 1편 - 설치후 세팅 (0) | 2019.03.07 |
---|---|
리눅스에서 윈도우에서 사용하던 NTFS 마운트가 잘 안될때 - 윈도우10 빠른 시작 기능 끄기 (0) | 2019.03.07 |
우분투 - 리눅스 크롬 플래시 지원 (0) | 2019.03.04 |
우분투 - Virtual Box USB인식 - USB 마운트 (0) | 2019.03.04 |
이제는 필수적인 Docker (0) | 2018.06.25 |
Deepin 한글 키보드 설정 - korea keyboard setting (0) | 2018.04.25 |
Seafile 클라우드 서비스 자작 설치기 (2) | 2018.04.04 |
Seafile 클라우드 서비스 사용기 (0) | 2018.04.04 |
쓸만한(?) 리눅스 배포판(?) Deepin 사용기 리뷰 (0) | 2018.03.06 |
우분투 및 데비안 리눅스 USB 부팅 만들기 (0) | 2016.01.03 |