리눅스 기본명령어

2008. 1. 24. 20:29
리눅스 기본 명령어 ( 자세히)  

출처 :
http://my.dreamwiz.com/andy1383/study/linux/
원문 : http://blog.naver.com/soonhg/40018222153

1. linux 기초 1-1

ls
* 무슨 파일이 있나?
* 옵션
=> -a : 확장자가 .(점)으로 시작하는 모든 파일을 보여준다.
.....(환경변수를 저장, 설정한 환경변수 file 을 보여줌. 예) .tcshr , .bashrc..)
=> -l : 파일의 자세한 정보를 정렬해서 표시 (소유자, 소유그룹, …)
=> -f : 파일의 타입을 기호로써 보여줌. (directory : / 실행화일 : * linkfile : @ )
* 예) ls -a -l -f (= ls -alf)
........ls -il (i node: file에 대한 정보)
........ls -al | more ( page 당으로 나눠서 보여줌)
........ls -al | more -10 (10행씩 출력)
cd
* change directory : 다른 디렉토리 이동
* 예) cd .. => 전 디렉토리로
........cd => 내 방 (홈 디렉토리)
........cd test => test 라는 디렉토리로 이동
....... cd - => 직전에 작업하던 디렉토리로 이동
....... cd / => 루트 디렉토리로 직접 이동
cat
* 문서보기 : cat [파일]
* 파일 생성
1. cat > file
2. 내용입력
3. ctrl + D
* 내용추가 : cat >> file
touch
* file 생성 명령어 , 기존 파일의 정보를 다시 읽어 들인다.
* 새로운 파일을 만들 수 있다.
예) touch abc.html => abc.html file을 만듬
.... touch abc1 abc2 abc3 => 여러 개의 file 생성
mkdir
* make directory : 디렉토리 생성하기
예) mkdir test : test라는 디렉토리 생성
* -p : 하부 directory 생성 옵션 (여러 단계의 sub directory를 만들 때)
예) mkdir -p exam/exam1 (exam 디렉토리 생성 후 밑에 exam1 디렉토리 생성)
rmdir
* remove directory : 비어있는 디렉토리 지우기
* 예) rmdir -rf test : test 디렉토리 지움
rm
* remove : 디렉토리 또는 파일 지우기
* 예) rm test => test라는 파일 지우기
........rm -r test => test 디렉토리 지우기
........rm -f test => test 파일 강제로 지우기
mv
* move : 파일 옮기기
* mv 옮길dir/file 갈곳dir/file
* 예) mv 1 2 => 1을 2로 옮김
........mv 2 새이름 => 2를 새이름을 바꿈
 2. linux 기초 2

cp
* copy : 복사하기
* cp dir/file 복사할 dir/file
* 예) cp 1 2 => 1을 2 라는 이름으로 copy
pwd
* 현재 위치를 알려줌 (경로)
tree
* 계층도를 보여준다.
which
* which 실행 file
* 실행file의 위치를 찾아줌, 경로를 보여줌
history
* 지금까지 입력한 명령어들의 목록을 보여준다. (기본 1000개 까지)
* !숫자 => 목록의 숫자부분의 명령부분을 실행
* !! : 바로 위의 명령어 실행
* history -c : history 목록 지우기
* echo $HISTSIZE : history 개수 보여줌
* 개수변환 : 개수 export HISTSIZE=바꾼 숫자
man
* manual을 보여준다.
* 사용법 : man [명령어]
whoami
* 자신이 누구인지 보기
cal
* 화면에 달력을 출력한다.
* cal [-y : 연도달력모두] [month] [year]
* 예) cal 6 2000 (=> 2000년 6월 달력이 출력)
cksum
* 파일의 기, 이름을 출력함
* cksum [file]
clock
* 현재 시간을 출력해 줌


3. linux 기초 3

chown
* 파일이나 디렉토리의 소유권을 바꿔줌
* chown [-Rcfv] [사용자] [파일]
* 옵션
-c : 소유권이 바뀌어진 파일에 대한 정보를 출력
-f : 소유권이 바뀌지 않은 경우에는 에러 메시지를 출력하지 않음
-v : 소유권변화의 정보를 출력
-R : 디렉토리와 그 속에 포함된 파일의 소유권을 recursive 하게 변경
예) chown user이름 file
......chown nobody file => file을 nobody 것으로 바꿈
chgrp
* 파일이나 디렉토리의 소유그룹을 바꿔줌
* chgrp [-Rcfv] [그룹파일]
* 옵션
-c : 소유권이 바뀌어진 파일에 대한 정보를 출력
-f : 소유권이 바뀌지 않은 경우에는 에러 메시지를 출력하지 않음
-v : 소유권변화의 정보를 출력
-R : 디렉토리와 그 속에 포함된 파일의 소유권을 recursive 하게 변경
예) chown username : groupname file = > 소유자와 소유그룹을 한꺼번에 바꿔줌
chmod
* channal mode : 사용 권한(permission)을 바꿔줌
1. 심볼릭 모드 : chmod [users] [operator] [permission] [file]
[users]
- U : 유저
-g : 그룹
-o : others 그룹
-a : 모든 사용자
[operator]
+ : 사용을 허용함
- : 사용을 거부함
[permission]
r : 읽을 수 있음
w : 쓸 수 있음
w : 실행 가능
* -rwxrwxrwx : - 는 file을 나타냄 (r : file l : link file)
....처음 rwx는 user의 권한 , 다음 rwx는 그룹의 권한, 마지막 rwx는 other의 권한
예) chmod go + wx test
..... => test파일(디렉토리)을 group과 other에게 쓰기, 실행 권한을 줌
......chmod a + rwx test => test file을 모두에게(a :all) 일기, 쓰기, 실행 권한을 줌

2. 절대 모드 : chmod [옵션] [ugo숫자조합] [file]
.(r=4, w=2, x=1 )
예) chmod 754 [file이름]
[ u]
r : 4 (읽기)
w : 2 (쓰기)
x : 1 (실행)
r+w+x = 7
[g]
r : 4 (읽기)
x : 1 (실행)

r+x = 5
[o]
r : 4 (읽기)


r = 4
* 옵션
-c : 접슨허용이 변한 파일에 대해서 정보를 출력
-f : 접근허용이 바뀌지 않은 것에 대해서 에러 메시지를 출력하지 않음
-v : 변화된 접근허용에 대한 정보를 출력
-R : 하위의 디렉토위와 그 속에 포함된 파일의 permission 을 바꿔줌
* 예) ..chmod -R 777 test (test 밑에 있는 모든 디렉토리 및 파일의 권한을 바꿔줌)
 

4. linux 기초 4

find
* file 또는 디렉토리 찾기
* find [file]
* find [검색위치] -name [file]
예) find -name *.php3 => php3로 끝나는 문서 찾기
.... find / -name index.html => / 에서 부터 index.html 을 찾기
grep
* 원하는 내용이 있는 파일 찾기, 문자열 잡기
* grep [찾을 문자열]
=> grep -n [단어] (포함되어 있는 단어가 몇 번때 헹에 위치하는 지 알 수 있음)
예) ps -aux | grep httpd (=> ps :process checking )
.....ps -ef | grep mysql
.....(mysql process가 실행되고 있는지 목록을 보여줌
...... => -ef : login shell과 관계된 processor )
링크파일
* ln test test1 => test와 동일한 file test1을 생성 (inode가 늘어남)
* hardlink file 생성 (내용을 공유하는 파일)
예) ln -s test test.slk
..... => test의 내용을 수정하면 hardlink된 test.slk 도 저절로 고쳐짐
alias
1. 설정 : alias [현재 명령어] = '[적용시킬 명령어]'
예) alias ls = 'ls -al'
2. 해제 : unalias [적용시킨 명령어]
su
* 현재 상태에서 다른 id로 login할 수 있다.
예) su mina => mina 로 login
.....su - ID => 바꾸고자 하는 user 의 홈 디렉토리로 이동함
.....su - => root로 login
* logout => exit
비번변경
* passwd [엔터]
* 비밀번호 입력 [엔터]

3. 플로피와 cdrom 사용하기

* floppy 와 cdrom을 사용하기 위해서는 mount 를 해줘야 하며, 사용 후 mount를 해제해 줘야 한다.
floppy
1. 마운트 하기
* mount /dev/fd0 -t msdos /mnt/floppy
2. 마운트 해제
* umount /mnt/floppy
* umount /dev/fd0
cdrom
1. 마운트 하기
* mount /mnt/cdrom .....( = mount /dev/cdrom /mnt/cdrom)
2. 마운트 해제
* umount /mnt/cdrom
* eject



4. 파일 묶기와 압축

tar
* 파일 묶기
* 사용법 : tar [옵션] [이름] [묶을 파일들]
* 옵션
-c : 파일 또는 디렉토리 묶기
-f : 파일 생성
-v : 목록 출력하면서 실행
-t : tar에 포함되어 있는 파일이나 디렉토리 구조를 보려면..
-x : 묶인 tar 풀기
gzip

(gunzip)
* 압축하기
* 사용법 : gzip [옵션] [압축할 파일]
* 옵션
-d : 압축을 푸는 명령
-f :파일이 이미 존재하더라도 강제적으로 압축을 하거나 해제함
-l : 압축된 파일의 각각의 정보를 표시
-t : 압축된 파일을 테스트함
-v : 압축을 하거나 풀 때 각 파일의 압축률을 보여주면서 압축을 함
예) gzip -9 test/ (=> test 디렉토리 압축)



5. RPM 관련

설 명
* RPM 이라는 것은 ( Redhat Package Manager ) 레드햇에서 만든 패키징 방식이다.
* tar로 배포되던 방식에서 발전된 형태로 텍스트 콘솔에서 바로 설치 할 수 있다.
설 치
* 설 치 : rpm -i [설치할 rpm]
* 이름확인 : rpm -iv [ 설치할 rpm]
* 과 정 : rpm -ivh [설치할 rpm]
업그레이드
* rpm -Uvh [업그레이드할 rpm]
삭 제
* rpm -e [삭제할 rpm]
찾 기
* rpm -qi [찾을 rpm]
.. => 관련된 파일(설치된 file)이 얼마나 있나 보기.

6. 네트워크 명령어


ping
* 상대방 컴퓨터와 데이터 전송이 잘되는지 상태 보기
예) ping landau.uos.ac.kr
traceroute
* 접속하려는 서버까지의 경로를 검색해 줌
예) traceroute landau.uos.ac.kr
net stat -r
* 네트워크 접속 상태를 확인
dig
* 지정된 도메인 주소의 도메인 시스템 정보를 알아냄
* dig [서버명]
hostname
* 사용중인 host의 이름을 알려줌
whois
* 인터넷 주소 또는 사람을 검색 (도메인 검색이 가능)
* whois [서버명]
ftp
* 파일 전송 프로토콜, 외부에 있는 ftp 서버에 접속하여서 파일을 주고받을 때 사용
* ftp [옵션] [서버명]
* 옵션
-v : 원격서버에서 반환되는 모든 응답메시지를 보여줌
-n : 처음 연결되었을 때 자동로그인을 실행하도록 함
-i : 여러 개의 파일 전송시 프롬프트가 떨어지지 않도록 함
-d : 디버깅을 가능하도록 함
* ftp 명령어
get : 파일을 다운로드 받는 명령
mget : 여러 개의 파일을 다운로드 받는 명령
put : 파일을 업로드 하는 명령
bin : 바이너리 파일을 다운로드 하기 전에 바이너리 모드로 변경해야 함
telnet
* 원격 호스트와 통신을 할 수 있도록 하는 프로그램 명령
* telnet [서버명]
* 참고 : 통신에서 다운로드를 받기 위해서는 ztelnet 을 사용함





7. linux system 명령어

arch
* cpu 의 model 을 알려줌
free
* memory 용량을 알려줌
* 예) free -m : mega byte 단위로
....... free -k : kilo byte 단위로
df
* disk free : 연결되어 있는 file system 용량
... => 전체 공간, 현재 사용공간, 사용할 수 있는 공간 등을 보여줌
* 예) df -h : mega byte
du
* disk uage : directory 와 file 별로 할당되어 있는 file system 용량
* 예) du directory/file 명
........du -sh directory : 총 용량
* 옵션 -b (byte단위) , -a (파일 전체) ..
uname
* kernel 버전, 운영체제 정보를 알려줌
* uname -anrspv
-a : 모든 형식을 보여줌
-m : 머신의 이름을 보여줌
-p : 프로세서의 타입을 보여줌
* 예) uname (linux라고 출력됨)
....... uname -a (모든 정보)
who
* 현재 시스템에 접속된 사용자의 정보를 상세히 나열
users
* 현재 시스템을 사용중인 사용자를 한 줄로 표시함
lsdev
* (list devices) : hard disk 정보
top
* 진행중인 process 정보
* +p : cpu 점유율 수
.. +m : memory 점유율
ps
* 현재 동작중인 process 표시
* -a : 모든 user
.. -r : 현재 진행중인 작업만 표시
.. -u : user 이름, 시작시간 등 자세한 정보
.. -ef : login shell과 관계된 processor
환경변수
* 사용자의 환경이나 프로그램의 환경변수를 출력하고 변경할 수 있도록 해줌
* env $path (=> 환경변수의 경로 및 사항을 보여줌)
* source .bashrc (=> 환경변수를 다시 읽어들임, 홈 디렉토리에서 실행)


8. 관리자 필수사항 기초

시스템 종료
* shutdown -h 11:00 (11:00 에 종료)
* shutdown -h 1 (1분 후에 종료 )
* shutdown -h now (지금 종료)
... (= halt )
재시동
* shutdown -r now
* reboot
계정만들기
* adduser ID
* adduser -d /home/id -c "이름" -g 그룹이름 ID
-d 디렉토리 생성
-c 부연설명 (comment)
-g 그룹 설정
비밀번호
* passwd ID
* 비밀번호 입력 [엔터]
finger
* 사용자 정보 관리
* finger ID
그룹추가
* groupadd 그룹이름
계정삭제
* userdel ID (=>home에 있는 디렉토리는 남는다.)
* userdel -r ID (=> home 디렉토리까지 삭제)
kill
* 현재 실행되어 있는 process ID를 입력해서 process를 종료하는 명령
* kill [PID]
last
* 시스템에 마지막으로 접근한 사용자 list를 표시함
* last [-숫자] [-f 파일명] [-t tty] [-h hostname] [-l] [-y] [파일명]
* 옵션
-숫자 : 숫자만큼 출력을 함
-f [파일명] : 파일명을 참조하여 출력
-t tty : 로그인한 터미널을 추적함
-y : 로그인한 연도를 추가해서 출력
* 예) last




9. 간단용어 설명

게이트 웨이
* 외부 네트워크와 연결해 주는 연결 네트워크 장치
터미널
* 하나의 입출력(처리) loop
콘 솔
* 관리자로서 system의 설정관리
 
mingetty
(가상콘솔)
* 콘솔을 여러 개 사용할 수 있도록
* 콘솔 생성
+ F1 ~ + F6
* 콘솔 이동
+ F1 ~ + F6
* 콘솔 없애기
.. exit
interrupt
* event 강제종료
+ c
suspended
* 작업을 백그라운드로 옮기기 : + z
* 백그라운드로 작업중인 프로그램 list를 보여줌 : jobs
* 작업전환 실행 : fg1
* 작업 강제 종료 (ps로 PID를 확인한 후) : kill -9 [작업PID]
운영체제
* kernel (장치 컨트롤) + Application (User Interface : UI)
* 사람 <-> application <-> 운영체제 <-> 기계
링크의 종류
* symbolic link : 위치만 지정해줌
* hard link : 같은 파일을 나타냄

'interest' 카테고리의 다른 글

php5와 mysql연동  (0) 2008.01.28
고정아이피설정과 vi그리고 LinM  (0) 2008.01.28
권장하는 파티션 구조(참조 데미안)  (0) 2008.01.26
ubuntu 기본설정하기  (0) 2008.01.17
Ubuntu를 설치하다  (0) 2008.01.16
Posted by 푸리마
:
BLOG main image
pneuma, [프뉴마] 정신, 영(靈);[Pneuma] 성령(聖靈)(Holy Spirit) by 푸리마

카테고리

분류 전체보기 (40)
Comedy (0)
interest (21)
Humor (0)
Photography (19)
trash (0)

최근에 올라온 글

05-02 20:12
Total :
Today : Yesterday :