레이블이 리눅스인 게시물을 표시합니다. 모든 게시물 표시
레이블이 리눅스인 게시물을 표시합니다. 모든 게시물 표시

2009년 6월 19일 금요일

리눅스/솔라리스 각종 TIP

제목: [UNIX] 솔라리스 루트 패스워드 복구법

내용:

STEP1: Solaris OS CD를 CDROM 드라이브에 넣은후 컴퓨터를 킨다.
STEP2: 메모리 체크가 끝난후 STOP+A 를 누른다.
STEP3: ok boot cdrom -sw
STEP4: csh
STEP5: setenv TERM sun
STEP6: mount /dev/dsk/c0t3d0s0 /mnt --> t3는 boot disk의 SCSI ID 번호
STEP7: vi /mnt/etc/shadow 파일을 오픈한다.
STEP8:
           root:asweB0Fxxxxxx:9974:::::: (예제) 를 다음과 같이 바꿔준다.
           root::9974:::::
:wq!
STEP9: reboot
잠시후 기다리면 부팅후 루트 패스워드를 물어 볼것이다.

이때 새로운 패스워드를 입력하면 오케이!!

 

 

제목: [UNIX] MAN 페이지를 직접 작성하고 싶으세요?

내용:


우리는 유닉스를 사용하면서 매뉴얼 페이지를 가끔 참조하게 된다.
그러면서도 우리들 자신도 그러한 매뉴얼 페이지를 만들어 자신의 프로그램을 위해
등록해보고 싶은 경우가 있을 것이다.
다음에 쓰는 내용은 이러한 매뉴얼 페이지를 직접 여러분이 만들어 볼 수 있도록
명료하면서도 단순하고 필요한 내용만을 언급하고 있다.
Here we go~

시스템에 저장된 매뉴얼은 보통 몇가지 섹션으로 나뉘어져 있다.
예를 들어 사용자 명령어들(ls, cat등등)은 1번 섹션이고 시스템 콜은 2번 섹션이다.
다음은 그것들의 리스트이다.

                    BSD           System V     Xenix
사용자 명령           1                1          u_man
시스템 콜             2                2          p_man
라이브러리 루틴       3                3          p_man
I/O 와 특수파일들     4                7          p_man
관리자를 위한 파일들  5                4          a_man
게임들                6             6또는 1       u_man
기타 잡다한것         7                5          anything goes
관리자를 위한 명령    8                8          a_man
유지관리를 위한 명령  8               1M          u_man 또는 a_man
지역명령(local cmd)   l(문자)          *
절대명령              o                *

예를 들어 'ls'(사용자명령)에 관한 매뉴얼을 보려면 다음의 두가지 방법이 있다.

$ man ls
$ man -s 1 ls

특히 가끔 특정 함수(예를 들어 uname)에 대한 매뉴얼을 보고 싶을 경우가 있는데 이때
우리는 그 함수에 대한 매뉴얼이 아니라 사용자 명령인 'uname'의 매뉴얼을 보여주는
때가 있다. 이때 우리는 두번째의 방법으로 매뉴얼을 볼 수 있다.

$ man -s 2 uname

그럼 매뉴얼 페이지의 소스를 보자.
--------------------------------------------------
.\" bbspasswd's manual page
.TH bbspasswd 1 "2 Jun, 1997" "안창선의 소프트웨어"
.SH 이름
sysopmgt \- tina호스트 프로그램의 user id 관리 프로그램
.SH 사용법
.B bbspasswd
.RI [-pinsct]
.PP
.br
.SH 설명
.I bbspasswd는 tina호스트 프로그램에서
user id를 관리해 주는 프로그램입니다.
user id의 비밀번호나 회원 이름등을 편리하게
변경할 수 있습니다.
.br

.SH 옵션
.TP
.B \-p userid password
회원의 패스워드를 변경합니다.
.TP
.B \-i userid chageid
회원의 ID를 변경합니다.
.TP
.B \-n userid chagename
회원의 이름을 변경합니다.
.TP
.B \-s userid jumin-number
회원의 주민번호를 변경합니다.
.TP
.B \-c userid pager
회원의 호출번호를 변경합니다.
.TP
.B \-t userid pager
회원의 유저 타입을 변경합니다.

.br
.SH BUGS
버그요? 없시요.
.br
.SH 만든이
안창선
kabin@coresw.co.kr
------------------------------------------------
매크로 설명
.TH : 매뉴얼 페이지의 타이틀이다.
.SH : 섹션 해딩을 나타내는데 각 섹션별로 하나씩을 준다.
.TP : 포맷 옵션이다.
.LP : 섹션에서 패러그랩 사이에서 사용된다.
위의 페이지를 실제로 직접 보는 명령은 nroff -man을 사용하면 된다.
즉...

$ nroff -man man.1

일단 매뉴얼이 만들어 졌으면 이것을 여러분이 원하는 섹션에 넣어줘야 한다.
예를 들어 man.1이라면 /usr/man/man1 디렉토레에 넣고
catman 프로그램을 이용하여 등록 시켜 주면 된다.


위의 매뉴얼 소스를 위의 명령으로 보면 다음과 같은 내용을 보여준다.
--------------------------------------------------
bbspasswd(1)                                         bbspasswd(1)


이름
      sysopmgt - tina호스트 프로그램의 user id 관리 프로그램

사용법
      bbspasswd [-pinsct]


설명
      bbspasswd는  tina호스트 프로그램에서 user id를 관리해 주는
      프로그램입니다.   user  id의  비밀번호나   회원   이름등을
      편리하게 변경할 수 있습니다.


옵션
      -p userid password
             회원의 패스워드를 변경합니다.

      -i userid chageid
             회원의 ID를 변경합니다.

      -n userid chagename
             회원의 이름을 변경합니다.

      -s userid jumin-number
             회원의 주민번호를 변경합니다.

      -c userid pager
             회원의 호출번호를 변경합니다.

      -t userid pager
             회원의 유저 타입을 변경합니다.

BUGS
      버그요? 없시요.

만든이
      안창선
kabin@spm.co.kr

 

제목: [UNIX] 지정한 파일외의 모든파일을 지우기

내용:

지정한 파일외에 다 지우기..
가령 디렉토리 안에..
report report_1 report_2 report_3
report_4 report_5 print_1 print_2

위같은 파일이 있씁니다.
저는 report 는 나두고 다지우고
싶습니다.
그냥은 하나씩 rm 을써서
하나씩 지우다가 report 만 안지우면 되겠지만 한번의 명령어로 지우려면 다음과 같이 하면 되겠죠..

rm -f `ls |grep -v '^report$'`

이렇게 하면 report 만 남습니다.

이건 역인용부호 `` 즉 명령어 치환에 의해 가능한것입니다. ls를 써서 파일목록이 출력되면 파이프를 통해 grep의 입력으로 들어가겠죠.. 그다음 grep의 출력이 역인용부호(``)를 이용해서 결과를 rm 으로 전달 되는것입니다.
참고로
rm 의 -f 붙인이유는 어차피 지울꺼니 확실히 지우자구요. :-) 겁나시는분은 -i 로 교체.
grep의 -v 옵션은 매치되지 않는 패턴을 찾는 옵션입니다. 반전이라고 해도 틀리지는 않겠습니다. :-)
grep의 ^은 앞부분을 말하는거구
$은 뒤를 명시해주는거죠..
grep 정규식을 이용하면 정확히 파일을 구별해서 지울 수가 있겠군요..

 

제목: [UNIX] 유닉스사의 Snoop 명령어를 이용하여 TCP/UDP-IP 패킷을
모니터링하는 예


내용:

예제1)
snoop -x 0 HOST1 HOST2 to HOST1 udp

(설명1)
HOST1과 HOST2상의 UDP패킷의 내용을 화면에 디스플레이 해줌.
단, HOST2 --> HOST1으로 전송되는 UDP패킷의 내용만을 디스플레이함.

(결과1)
      fifa -> newton.uri-net.co.kr UDP D=5000 S=2000 LEN=260

          0: 0050 04c0 0647 0050 da8d 7ef6 0800 4500    .P...G.P..~...E.
         16: 0118 0c86 4000 ff11 ca50 cbef 061d cbef    ....@....P......
         32: 0602 07d0 1388 0104 e302 8000 1312 0000    ................
         48: 6540 0607 2801 8280 7f7f 7e7f 7f80 8080    e@..(.....~.....
         64: 8080 8081 807f 807f 8080 807f 807f 7f81    ................
         80: 8180 8182 8182 8181 8180 8181 8080 8080    ................
         96: 807f 7f80 7f7f 7f7f 7f7f 7f7f 8080 7f7e    ...............~
        112: 7e7f 7f7f 8080 8080 8080 8181 8282 8181    ~...............
        128: 8181 8280 807f 8080 7f7f 7e7e 7f7e 7f80    ..........~~.~..
        144: 8081 8080 8080 8080 8180 8080 8080 807f    ................
        160: 807f 8081 8080 7f7f 8080 8082 8280 8180    ................
        176: 8081 8081 8180 8081 8080 8080 807f 7f7f    ................
        192: 7e7f 7f7e 7f80 8080 8080 8180 8181 8181    ~..~............
        208: 8080 7f7f 7e7f 7f7e 7f7f 807f 8080 8081    ....~..~........
        224: 8181 8283 8181 8181 8081 8281 807f 7e7f    ..............~.
        240: 7f7f 807f 8080 807f 8080 8080 8080 8080    ................
        256: 7f7f 7e80 8181 8080 7f80 8180 807f 807f    ..~.............
        272: 8080 7f80 8081 8182 8181 0000 0000 0000    ................
        288: 0000 0000 0000                             ......

 

 

제목: [UNIX] Find 명령어의 자세한 사용법

내용:

@ 용도
--> 사용자가 제시한 속성을 만족하는 file을 찾아 내어, 이를 화면으로 출력하거나,
이러한 file에 특정한 명령을 수행한다. 이러한 find 명령어는 file system을 감시하
는데 뿐만 아니라, 하나의 subdirectory내에서 특정한 file을 찾아내거나, directory
아래에 특정한 내용을 담고 있는가등 다양한 기능을 수행하는 막강한 명령어이다.

@ 사용법
--> find 경로명 수식

find 명령어는 pathname-list에 있는 각 경로로부터 directory 계층구조에 따라 재귀
적으로 내려가면서, 논리적인 expression을 만족하는 file들을 찾는다. 단, symbolic
link는 보통 화일과 같이 검색된다.
ex) 만약 /etc/chown -> ../usr/etc/chown 일때, find /etc -uname chown -print하면
./chown 라고만 출력된다. ( ./chown -> ../usr/etc/chown이라고 출력되지 않는다란
소리다.)

-name 화일명
: 지정한 화일 이름에 해당하는 화일이 담겨 있는 디렉토리를 찾아준다. 이때 화일
이름에는 와일드 카드 문자인 *,?를 사용 가능하다.

-type 화일형태
: 지정한 화일 형태와 맞는 화일을 찾아준다. 화일 형태에는 5가지가 있는데 f는 일반
화일, b는 block special file, c는 character special file, d는 디렉토리, p는 파이
프이다.

-user 사용자 ID
: 뒤에 지정한 사용자가 권한을 가지고 있는 화일을 찾아준다.

-group 그룹 ID
: 뒤에 지정한 그룹이 권한을 가지고 있는 화일을 찾아준다.

-mtime n
: 마지막으로 수정된 날이 정확히 n일 전인 화일을 찾아준다. 여기서 n을 명시할 때,
-n이라고 표기하면 n일 전부터 지금까지를 의미하고, +n이라고 표시하면 n일을 포함
해서 그 이전에 수정된 화일을 찾아준다.
ex)                 n                      현재
   ----------------------------------------->
   |--    +n    -- |------     -n     ------|

-exec 명령어
: shell 명령어를 실행해 주는 옵션으로서 명령어 뒤에는 반스시 \; 기호를 붙혀 주어
야 한다. ;기호 앞에 \를 붙여주는 이유는 ; 기호가 shell 특수 문자이기 때문이다.
                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

-print
: 화일이나 디렉토리가 발견되었으면 이 옵션에 의해서 그 화일이나 디렉토리가 담겨
있는 디렉토리가 화면에 나타난다.

@ 예제 ------------------------------------------------------------------------
ex) 1. 만약 imdw@cs.sejong.ac.kr이라는 몬자열을 포함하는 모든 화일을 찾으려면
--> #find / -exec grep "
imdw@cs.sejong.ac.kr" {} \;
   참고로 여기서 {}는 현재의 경로명으로 대체된다.
   
   2. 만약 모든 화일중에서 core와 확장자가 .c인 화일을 모두 찾아서 지워주려면
--> #find / \( -name core -o -name "*.c" \) -exec rm {} \;
   참고로 \는 alias나 특수문자를 단순한 character로 사용해야 할 시 alias나 특수
   문자 앞에다 적어준다.
-------------------------------------------------------------------------------

 

제목: [UNIX] anonymous ftp를 설치하고 싶다

내용:

ftpd의 메뉴얼을 보면 잘 나와있지만, 간단히 설치하려면 ftp://ftp.math.fsu.edu/pub/solaris/ftp.anon를 root디렉토리에서 실행하시면 됩니다. Solaris 2.5 이상에서는 아래의 작업으로 두개의 파일을 더 복사해 주시면 됩니다.(~ftp를 ftp가 설치된 디렉토리라고 가정합니다.)

% cp /devices/pseudo/tl@0:ticlts ~ftp/dev/ticlts
% chmod 666 ~ftp/dev/ticlts
% cp /usr/lib/libmp.so.* ~ftp/usr/lib

 

제목: [UNIX] 로컬시스템의 X 프로그램을 실행했는데 display를 열수없다

내용:

같은 시스템이더라도 telnet이나 su로 한번 거쳐서 접속한 경우에는 아래와 같은 에러가 발생합니다.

Error: Can't open display: unix:0


이때는 su나 telnet전에 xhost + localhost등을 입력해 주고, su나 telnet후 DISPLAY환경변수를 localhost:0.0으로 설정하시면 됩니다

 

제목: [UNIX] 부팅할 때 마다 어떤 일을 수행하려면

내용:

Solaris에는 시작 스크립트가 /etc/init.d 에 모여있습니다. 이 스크립트는 대부분 구성이 아래와 같이 되어있습니다.

#!/bin/sh
...
case "$1" in
"start")
# daemon 띄우는 명령어
;;
"stop")
# daemon 죽이는 명령어
;;
*)
# 사용설명
;;
esac

이와 같이 작성해 두시면 실행할때는 start인자를, 실행중인 프로세스를 죽일때는 stop인자를 사용하실 수 있습니다.


또한 Solaris는 /etc/rcX.d(X는 S, 0, 1, 2, 3)에서 필요한 스크립트를 수행합니다. 만일 Single User모드로 부팅했다면 /etc/rcS.d에 있는 파일들을, 보통때는 모두다 수행합니다. 따라서 이들중 한 디렉토리에 SXXfilename(XX는 원하는 두자리 숫자, filename은 임의의 이름)이라는 파일을 /etc/init.d에 만들어 둔 스크립트에 하드링크를 해 두면 됩니다. rc 프로세스는 숫자가 작은 스크립트부터 차례로 수행해 줍니다.


그리고 SunOS 4.1.x에서는 /etc/rc.* 파일에 적어넣어면 됩니다. 일반적으로 rc.local에 적는 경우가 많습니다.


그리고 그냥 스크립트를 작성하면 root권한으로 수행됩니다. 하지만 몇몇 프로그램의 경우에는 root가 아닌 일반 유저의 권한으로 수행되어야 하는 경우가 있는데 이때는 su명령을 사용하시면 됩니다. 만일 /some/where/daemon을 nobody권한으로 수행하고 싶다면 시작 스크립트에 아래와 같이 적어주면 됩니다. ( 서진수님이 정리해 주셨습니다.)

su nobody -c '/some/where/daemon'

 

제목: [UNIX] CDE 로긴(dtlogin) 설정법

내용:

다음과 같은 문제를 생각해 보죠.

처음 CDE를 설치할 때 영문으로 설치를 했습니다. 나중에 한글환경을 쓰려고 CDE에서 ko로 설정을 했는데 한번뿐이고 다시 로그아웃을 하면 영문으로 돌아갑니다. CDE의 기본언어를 설정하려면 어떻게 하면 되나요?
이경우 여러가지 방법이 있지만 다음의 방법을 이용해 보세요. 우선 /etc/dt/config디렉토리를 만듭니다. (만일 디렉토리가 있다면 만들지 마세요.) 그다음 /usr/dt/config/Xconfig를 만든 디렉토리로 복사합니다. (/usr/dt/config/Xconfig는 수정하시면 안됩니다.) 그리고 /etc/dt/config/Xconfig중에서 Dtlogin*language의 값을 ko로 바꾸시고 저장할 후에 dtconfig -reset을 실행하면 됩니다.

또한 CDE를 설치하면 기본적으로 dtlogin이 뜹니다. 이 화면대신에 원래 로긴화면을 사용하려면 dtconfig -d 와 같이 입력하시면 됩니다. 만일 CDE로긴화면이 뜨게 하려면 dtconfig -e 와 같이 입력하시면 됩니다.

 

제목: [UNIX] 자동 .cshrc와 .profile등의 파일생성법

내용:

/etc/skel 디렉토리에 복사하고 싶은 파일들을 만들어 두고(local.profile, local.cshrc, local.login)
useradd나 admintool로 계정을 만들면 됩니다.

/etc/skel/local.cshrc 파일의 예
----------------------------------------------------------------------------
# @(#)cshrc 1.11 89/11/29 SMI
umask 022
set path=(/usr/sbin /usr/bin /usr/local/bin /bin /usr/openwin/bin /usr/ccs/bin /
usr/ucb/bin /opt/Acrobat4/bin /opt/netscape)

if ( $?prompt ) then
       set history=32

setenv OPENWINHOME /usr/openwin
setenv PATH $OPENWINHOME/bin:$OPENWINHOME/bin/xview:$PATH
setenv LD_LIBRARY_PATH $OPENWINHOME/lib:/usr/lib:

setenv MOZILLA_HOME /opt/netscape

setenv MANPATH /usr/local/kde/man:/usr/dt/share/man:/usr/openwin/share/man:/usr/
local/man:$MANPATH
setenv MANPATH /usr/local/man:/usr/dt/share/man:/usr/openwin/man:/usr/man:/opt/s
amba/man:$MANPATH

#-------------------------------------------------------------
# OPENH323
setenv PWLIBDIR /opt/openH323/pwlib
setenv OPENH323DIR /opt/openH323/openh323
#-------------------------------------------------------------

#-------------------------------------------------------------
# QT Setup
setenv QTDIR /usr/local/qt
setenv PATH $QTDIR/bin:$PATH
setenv MANPATH $QTDIR/doc/man:$MANPATH
setenv LD_LIBRARY_PATH $QTDIR/lib:$LD_LIBRARY_PATH
#-------------------------------------------------------------

#-------------------------------------------------------------
# KDE Setup
setenv KDEDIR /usr/local/kde
setenv MANPATH /usr/local/kde/man:$MANPATH
setenv PATH $KDEDIR/bin:$PATH
setenv LD_LIBRARY_PATH=/usr/local/kde/lib:$LD_LIBRARY_PATH
#-------------------------------------------------------------

endif
set filec

alias   a               'alias'
a       setprompt       'set prompt="[`hostname`:$cwd]# "'
a       cd              'cd \!*; setprompt'
a       dir             '/bin/ls -als | more'
a       h               'history \!* | more'

setprompt
----------------------------------------------------------------------------

 

제목: [UNIX] 루트(ROOT) 패스워드를 잊었을때

내용:

CD-ROM으로 부팅하셔서 하드디스크의 /etc/shadow 파일의 비밀번호부분을 지우시면 됩니다. / 파티션이 /dev/dsk/c0t0d0s0인경우에 아래와 같은 작업을 하시면 됩니다.

ok boot cdrom -s
..
# mount /dev/dsk/c0t0d0s0 /mnt
# TERM=sun;export TERM
# vi /mnt/etc/shadow
# sync; reboot

 

제목: [UNIX] 다른 시스템의 테잎 드라이버를 이용하려면

내용:

여러가지 방법이 있겠지만, 가장 간단한 방법은 rsh를 이용하는 방법입니다. 먼저 테입드라이버가 있는 시스템에 .rhosts파일을 만들어서 다른 시스템에서 rsh로 접속할 수 있게 한후 테입드라이버가 없는 시스템에서 다음과 같이 입력하시면 백업할 수 있습니다.

% tar cvf - [파일들] | rsh [테입드라이버가 있는 시스템] dd of=/dev/rmt/0

만일 테입으로 부터 파일을 풀려고 하면 아래와 같이 입력하시면 됩니다.
% rsh [테입드라이버가 있는 시스템] dd if=/dev/rmt/0 | tar xvf -

 

제목: [UNIX] 백업 하는법

내용:

여러 가지 명령어가 있지만, 가장 기본적인 tar에 대해 말씀드리겠습니다. 만일 /home 디렉토리 이하의 파일들을 /dev/rmt/0에 백업받으려 한다면 다음과 같이 입력하시면 됩니다.

% tar cvf /dev/rmt/0 /home

나중에 백업한 내용을 restore하시려면 /에서 다음과 같이 입력하면 됩니다.


% tar xvf /dev/rmt/0


tar를 사용하는경우 원하는 파일만을 restore하려면 아래와 같이 사용하시면 됩니다. (man tar에서 가져옴)

% tar xvf /dev/rmt/0 `tar tf /dev/rmt/0 | grep 'pattern'`

이 외에도 restore하고자 하는 파일의 리스트를 파일로 만들고(e.g list), 다음과 같이 사용하셔도 됩니다.
% tar xvf /dev/rmt/0 -I list

 

제목: [UNIX] Tape의 내용을 삭제하려면

내용:

Tape의 내용을 삭제하려면 mt명령을 사용하시면 됩니다. 만일 Tape드라이버의 장치파일이름이 /dev/rmt/0 라면 아래와 같이 입력하시면 됩니다.


$ mt -t /dev/rmt/0 erase

 

제목: [UNIX] 다른 시스템의 CD-ROM를 이용하려면

내용:

만일 두대의 컴퓨터 A, B가 있는데, A에는 CD-ROM 드라이버가 있고, B에는 없어서 B에서 A의 CD-ROM 드라이버를 이용하고 싶다면, A에서는 /etc/rmmount.conf 의 마지막에 아래와 같이 추가하고 vold 데몬을 다시 실행한 후

share cdrom*  -o ro=B

B에서는 /cdrom에 사용하고 싶다면


% ln -s /net/A/cdrom /cdrom

와 같이 연결해 두시면 됩니다.


참고로 Solaris에서는 CD-ROM이나 floppy등은 vold(1M)가 관리합니다. 만일 어떤 사용자가 CD를 넣으면 vold는 그 일을 감지하고 rmmount(1M)를 호출해서 다시 마운트해줍니다. rmmount(1M)는 CD나, floppy와 같은 장치들을 마운트할 때 사용하는데, 그 설정파일은 /etc/rmmount.conf입니다. 자세한 내용은 rmmount.conf와 rmmount의 메뉴얼을 참조하세요.

 

제목: [UNIX] 네트웍으로 root접속이 가능하게 하려면

내용:

기본적으로 Solaris 2.x에서는 네트웍으로 접속하고 root로 로긴하면 아래와 같은 메세지를 출력하고 접속이 안됩니다.

login: root
Password:
Not on system console
Connection closed by foreign host.

Solaris 2.x는 기본적으로 root사용자는 console에서만 로긴이 가능합니다. (su는 제외) 이것을 console이외에서도 가능하게 하려면 /etc/default/login에서 CONSOLE=/dev/console에 주석을 달면 됩니다.
참고로 CONSOLE=/dev/console의 의미는 root는 /dev/console에서만 login이 가능하다는 의미입니다. 만일 root사용자로 로긴이 불가능하게 하려면 CONSOLE= 와 같이 해 두면 됩니다. (하지만 이 설정은 기본적으로 설치된 in.telnetd등에만 해당됩니다. 만일 ssh등을 사용한다면 이 파일과 상관없이 root계정으로 로긴이 가능합니다.)

 

제목: [UNIX] 사용자마다 특정크기만큼만 하드디스크를 할당하는 방법

내용:

/etc/vfstab에서 quota를 설정하고자 하는 파일시스템의 마운팅 옵션에 rq를 지정한다.

$ cat /etc/vfstab
..
/dev/dsk/c0t2d0s6 /dev/rdsk/c0t2d0s6 /home ufs 1 yes rq
..

quota를 설정할 파일시스템에 quotas라는 파일을 만든다.

$ touch quotas
$ chmod 600 quotas

각 사용자에게 quota를 할당하기 위하여 edquota라는 명령을 사용한다.

$ edquota louis
fs /home blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)

여기에서 할당하고자 하는 양만큼 soft와 hard부분에 적어준다. 만일 20MB를 할당하려면 아래와 같이 해준다. (만일 quota를 제거하고자 한다면 0을 적어주면 된다.)
fs /home blocks (soft = 20000, hard = 20000) inodes (soft = 0, hard = 0)

만일 다수의 사용자에게 같은 양의 quota를 할당하려면 하나의 사용자만 할당하고 복사할 수 있는데 아래는 louis 사용자의 quota설정을 aaa, bbb, ccc 사용자에게도 똑같이 할당하는 예제이다.

$ edquota -p louis aaa bbb ccc

 

제목: [UNIX] 부팅시 rpcbindkeyserv 에러메시지 안나게 하는법

내용:

[증상]
starting rpc services: rpcbindkeyserv: failed to generate host's netname
when establishing root's key.
keyserv done.

[해결]
10/1999 이전 버젼의 Solaris7 시스템에서 이런 증상이 발생하며,
이는 버그임으로 밝혀졌다(BugId 4194687). 그러나 이러한 증상으로 말미암아 시스템에는
특별한 악영향을 주지 않음이 또한 밝혀졌다.
그러나, 매번 부팅시 마다 이러한 메시지를 보는것은 짜증나는 일이 아닐수 없다.
자, 이 메시지가 발생하지 않도록 해보자.
간단하다. /etc/defaultdomain 파일을 신규 생성하고, 해당 시스템의 도메인명(예, urinet.co.kr)을 그 파일의 첫줄에 한줄 써주면 OK!.

 

제목: [UNIX] man(매뉴얼) 페이지를 깨끗하게 프린트하기

내용:


매뉴얼 페이지를 깨끗하게 저장하기.

우리는 가끔씩 유용한 매뉴얼 페이지를 redirect하여 저장하여 프린트 해보고자
하는 경우가 있다.
그러나 보통.. 다음과 같은 명령은 깨끗하지 못한(?) 매뉴얼 페이지를 캡춰하게
된다.

$ man ls > ls.doc

즉, escape sequence까지 모두 캡춰 되기 때문에 이것을 vi등으로 보면 온통
깨져 있게 된다.

이것을 방지하여 캡춰하는 방법은 col명령을 이용하는 것이다.
다음과 같이 해보라.

$ man ls | col -b > ls.doc

그러면 아주 깨끗한 매뉴얼 페이지를 볼 수 있을 것이다.

또다른 방법은 다음과 같다.
[ anonymous ] in KIDS
글 쓴 이(By): 아무개 (Who Knows ?)
날 짜 (Date): 1998년02월14일(토) 14시42분53초 ROK
제 목(Title): Re: man 페이지 화일로 잡으려면?..

man page의 소스를 먼저 찾으십시오.

예를 들어 ls 같은 것은 보통 /usr/man/man1/ls.1이 소스입니다.

man 명령은 이 소스화일을 포맷해서 보여주는 것입니다.

그다음 groff -man /usr/man/man1/ls.1 > ls.man.txt

하면 됩니다.

좀더 잘 포맷된 결과를 원하면 groff 를 사용할 수도 있습니다.

자세한 것은 groff 매뉴얼을 보세요.

 

 

제목: [UNIX] 특정 사용자의 모든 프로세스를 죽이려면?

내용:

특정 사용자와 관련된 모든 프로세스를 죽이려면?

방법은 여러가지가 있지만 내가 사용하는 간단한 방법을 소개한다.
kill명령을 ps 명령과, grep류의 프로그램과, 강력한 awk 또는 cut등을
을 이용해 프로세스 ID를 간단하게 죽일 수 있다.

이용하면 간단하게 위의 일을 처리할 수 있다.

% kill `ps -ef | grep 특정ID | awk '{print $2}'`

설명을 하지만 kill다음에 나오는 `은 `와 ` 사이에서 실행되는 결과값을
되돌린다는 것을 의미하며 따라서 ps -ef(BSD계열에선 -aux)을 통해
grep으로 들어간 프로세스 테이블 리스트들은 특정ID에게 소유된 것만
걸러 지게 되고 awk를 통해 프로세스 리스트의 두번째 컬럼 부분의
프로세스 ID가 다시 걸러 지게 되며, 최종적으로 이 값이 kill에
전달된다.

흑은 다음과 같이 해도 됩니다.

 

제목: [UNIX] 디렉토리 이동을 편하게 CDPATH 환경변수!

내용:

디렉토리 이동을 편하게 CDPATH 환경변수!

우리는 쉘 상에서 많은 작업을 하게 되는데 특정 프로그램을 인스톨 하거나
다른 디렉토리에서 작업한 다음에 완전히 다른 디렉토리로 빈번히 옮겨가야
하는 경우가 있다. 여기서는 이러한 작업을 보다 쉽게 해줄 수 있는 방법을
소개한다.

CDPATH환경변수(sh, ksh, bash), 또는 csh의 cdpath 쉘변수를 특정 디렉토리로
설정하면 현재 어느 디렉토리에 있는지에 상관없이 cdpath(CDPATH)에 지정되어
있는 디렉토리의 하위디렉토리명을 찾아서 그 디렉토리로 CWD(현재디렉토리)를
옮겨 준다. 예를 들어 보면 다음과 같이 CDPATH(cdpath)가 지정되어 있다고
가정하자.

% set cdpath=(~ ~/src /usr/local/etc)

보통 우리는 /usr/local/etc/httpd라는 디렉토리로 가기 위해 일일이

% cd /usr/local/etc/httpd

이렇게 해 주어야 하지만 cdpath를 위에처럼
설정해 놓으면 단지 다음과 같은 명령을 통해 그 디렉토리로 옮겨갈 수 있다.

% cd httpd

그리고 본쉘(bourne)에서의 CDPATH는 다음과 같이 설정한다.

$ CDPATH=:$HOME:$HOME/src:/usr/local/etc
$ export CDPATH

위에서 CDPATH 지정할때 앞부분에 ':'를 넣었는데 이것은 PATH변수를 지정할때는
없는 것인데, 현재 디렉토리를 지칭한다.

 

 

제목: [UNIX] 특수한 C 쉘 변수들

내용:

특수한 C 쉘 변수들

C 쉘에서는 특별한의미를 갖는 변수들이 있다. 그들 변수에는 어떠한 것이
있으며 어떠한 역할을 하는지 알아 보도록 한다.

변수    의미
--------------------------------------------------------------
cdpath      디렉토리 리스트가 저장되며 cd명령은 지정된 디렉토리 이외에
           cdpath 리스트에 저장된 디렉토리의 하위디렉토리에서도
           cd명령에 파라메터로 전달된 아규먼트 디렉토리가 있는지
           검색한다.
echo        이 변수가 셋팅되면 각 명령마다 쉘은 사용자가 실행시킨 명령라인
           을  다시한번 보여준며, 각 명령마다 쉘 변수가 변경될 경우 그 쉘변
           수의  내용도 함께 보여준다.
filec       특정 파일명이 완성 기능을 한다. 예를 들어 파일명의 일부만 입력하
           고  ESC를 입력하면 자동적으로 뒤쪽 나머지 파일명이 자동 입력된다.
           또한 파일명의 앞쪽 일부분만 입력후 CTRL+D를 누르며 그 파일명으로
           시작하는 파일의 리스트를 출력한다.
complete    filec과 같은 역할을 한다.
cwd         현재 디렉토리의 절대 path를 가지고 있으며 이 변수를 셋팅하는
           명령은 cd, pushd, popd 명령이다.
hardpaths   심볼릭 링크상에서의 cd명령의 에러를 fix시켜준다.
histchars   !문자나 ^문자등 히스토리 문자를 다른 문자로 셋팅할 수 있다.
history     쉘이 저장하는 히스토리의 갯수를 저장한다.
savehist    사용자가 로그아웃할 경우 저장할 히스토리의 갯수를 저장한다.
ignoreeof   CTRL-D를 눌러 로그아웃하는 기능을 끈다.
mail        새로운 메일이 왔을때 알려주는 기능을 한다.
noclobber   파일을 덮어쓰게되는 경우를 방지해 준다.
noglob      termcap파일에 정해져 있는 특수 문자들이 쉘에 의해 해석되는 것을
           방지해 준다.
nonomatch   다음의 명령을 실행해 보자.
           rm *.o core
           만약 .o로 끝나는 파일이 없을 경우엔 core파일도 지워지지 않고
           No such file 이라는 뜻의 메시지만 나오게 된다. 그러나
           nonomatch 변수를 설정해 놓으면 *.o파일이 없을 지라도 core이
           있는지 쉘이 체크해 보고 있으면 그 파일은 삭제 시킨다.
notify      백그라운드 프로세스의 상태를 바로바로 보여준다. 즉 백그라운드
           프로세스그 동작을 멈춘다든지, 작업이 끝났다든지 했을경우
           사용자에게 통보해 준다.
path        이 변수에 디렉토리 리스트를 설정해 놓은면, 사용자가 입력한
           명령이 이 변수에 속한 디렉토리마다 있는지 찾아서 있으면
           실행해 준다.
user        사용자 명을 보관한다.
prompt      사용자 프롬프트를 보관한다.
status      명령의 종료 상태를 보관한다.
time        이 변수의 특정 시간이 지정되어 있을 경우, 만약 사용자가 입력한
           명령이 이 변수에 지정된 시간보다 많은 CPU시간을 소배했을 경우
           사용자에게 그 통계 수치를 알려 준다.
--------------------------------------------------------------------------

 

제목: [UNIX] 환경변수의 설정

내용:

프로그램이나 쉘 스크립트에서 {환경변수를 설정하고, 디렉토리를 변경하는것}을 하
       는 방법은? 그리고 그러한 것이 현재의 쉘에 어떠한 영향을 줄 수 있는가?

     일반적으로,  적어도 특별한 준비 없이그것은 불가능하다. 자식 프로세스가 생성되면
     그것은 부모의 변수와 현재 디렉토리를 상속 받는다. 자식 프로세스는 이들 모든 값을
     변경할 수 있다. 그러나 그 변화가 부모 쉘에는 영향을 미치지 않는다. 왜냐하면 자식은
     원래의 데이터의 복사본을 변경한 것이기 때문이다.

     몇몇 특별한 준비가 가능하다. 만약 부보가 그 출력물을 읽고 그것을 부모 자신의
     변수를 변경하는 명령으로 해석 할 수 있다면 여러분의 자식 프로세스는 변경된 변수를
     써 보낼 수 있다.

     또한, 쉘은 자식 프로세스에서가 아니라 현재의 쉘 context에서 다른 쉘 스크립트를
     실행하기 위해 준비될 수 있다. 이렇게 되면 그 변화는 원래의 쉘에 영향을 미칠 수 있다.

     예를 들어, 만약 여러분의 "myscript"라는 이름의 C 쉘 스크립트를 가지고 있다고 하면:

       cd /very/long/path
       setenv PATH /something:/something-else

     또는 같은 Bourne 또는 Korn쉘 스크립트인 다음을 가지고 있다고 하면

       cd /very/long/path
       PATH=/something:/something-else export PATH

     그리고 myscript를 여러분의 쉘에서 실행하면 여러분의 쉘은 fork하고나서
     그 스크립트를 서브프로세스에서 실행할 것이다. 그 서브프로세스는 또한 그 쉘을
     실행하고 있다; "cd"명령이 보여질 때 그것은 그 자신의 현재 디렉토리를 바꾸고
     "setenv"명령을 만나게 되면 그 자신의 환경변수를 바꾸게 된다. 그러나 둘다
     여러분이 타이핑 하고 있는 그 쉘(말하자만 여러분이 쓰고 있는 login쉘)의 현재
     디렉토리에는 영향을 주지는 않는다.

     fork없이 그 스크립트를 실행하기 위해 로그인쉘을 얻기 위해서는 여러분은
     "." 명령이나(Bourne이나 Korn쉘에서) 또는 "source"명령(C쉘에서)을 사용해야 한다.
     예를 들어 다음과 같이 타이핑 한다.

       . myscript

     위는 Bourne 이나 Korn 쉘에서 하는 것이고 C쉘에서는

       source myscript

     과 같이 한다.

     만약 여러분이 하고자 하는 일이 단지 디렉토리나 환경변수를 변경하려는 것이라면
     C쉘의 shell alias나 Bourne/Korn쉘의 쉘함수를 사용하면 간단하다.
     "프롬프트에 현재 디렉토리명을 넣으려면?" 섹션을 보면 몇몇 예제가 있다.

     xtm@telelogic.se(Thomas Michanek)에 의한 더 자세한 답변이 다음에 있다.
     ftp.wg.omron.co.jp in /pub/unix-faq/docs/script-vs-env

 

제목: [LINUX] 자동 사용자 환경변수 설정

내용:


개별 사용자를 위한 설정
새로운 사용자가 처음 로그인 했을 때를 위해 몇 가지 설정 파일들을 준비해 두는 것이 좋다. .bashrc, .bash_profile, .bash_logout, inputrc, less, xinitrc, fvwmrc, fvwm2rc95, Xmodmap, Xdefaults, jedrc, joerc, emacs 파일들을 /etc/skel에 두도록 하자.

 

 

제목: [LINUX] 프롬프트(bash) 모양 변경하기

내용:


--- bash script에 사용가능한 옵션들 ---
\t 현재 시간을 HH:MM:SS 형식으로 보여준다.
\d 날자를 "요일 월 일" 형식으로 보여준다.
\s 쉘의 이름을 보여준다.
\w 현재 작업디렉토리를 완전경로로 보여준다.
\W 현재 작업디렉토리의 이름을 보여준다.
\u 현재 사용자의 사용자명
\h 호스트이름
\! 이 명령의 히스토리 번호
\nnn 8진수 nnn에 해당하는 문자
\[ 비출력문자의 시퀀스를 시작한다.
\] 비출력문자의 시퀀스를 마친다.

(예제) PROMPT 설정변경
[.bashrc] 파일에 다음의 내용을 추가한다.
export PS1="[\h:\w]# "
[결과]
[P6:/home/hongyk]# <-- 이와같은 프롬프트가 만들어짐

제목: [LINUX] 사용자 계정 추가/삭제하기

내용:


/etc/passwd 와 /etc/shadow 파일의 내용을 수정하면 가능하다.

(예제)
passwd 파일의 내용
hongyk:x:511:511::/home/hongyk:/bin/bash

 

제목: [LINUX] 리눅스 다중부팅 하기(Window2000/NT)

내용:


리눅스로 부팅한뒤
dd if=/dev/hda7(리눅스 설치 파티션) of=/bootsect.lnx bs=512 count=1

이러면 512바이트짜리 부트부분이 파일로 만들어집니다.
이걸 이용합니다.
이걸 윈도우 파티션에 복사를 하죠..
c드라이브에 복사를 합니다.

그리고 윈도우를 위해 boot.ini를 고칩니다.

[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
C:\BOOTSECT.LNX="WOW Linux Paran v7.1"

이렇게 해주면 윈도우즈 부팅시 고를 수 있습니다.

 

제목: [LINUX] gzip/gunzip 잘 사용하기

내용:


(1) 압축하기
tar cvf - dir1 | gzip > dir1.tar.gz
tar cvzf dir1.tar.gz dir1

(2) 압축풀기
gunzip dir1.tgz | tar xvf -
tar xvzf dir1.tgz

 

제목: [LINUX] 리눅스 LILO 오류가 발생했다구?

내용:


다음과 같은 일련의 과정을 실행하면, 왠만한 오류는 해결된다.
1) 리눅스 부팅 디스크로 부팅을 한다.
(부팅디스크가 없다구?. 그래서 ? 나더러 어쩌라구@#$%&@#!@)
2) 다음과 같이 입력한다. boot: vmlinuz root=/dev/hda7
3) 부팅이 잘되었을경우 root로 로그인하여 다음의 작업을 한다.
   (1) 기존의 리로를 삭제( /sbin/lilo -u ( 혹은 -U ) )
   (2) 새로운 리로를 생성( /sbin/lilo )
4) bootsect.lnx 이미지 생성
   dd if=/dev/hda7(리눅스 설치 파티션) of=/bootsect.lnx bs=512 count=1
5) bootsect.lnx 이미지를 window2000의 루트 디렉토리로 복사(C:)

휴~~ 끝났다. 재부팅하면 하드디스크로 시원하게 부팅할거예엽...^^

 

제목: [LINUX] 이상한 이름의 파일을 지우는방법

내용:


하이픈(-)으로 시작하는 파일명을 삭제하려고 보통때처럼 rm 커맨드를 실행하면 rm 커맨드는 인수를 파일명으로 해석하지 않고 옵션으로 착각하게 됩니다. 예를 들어, 다음과 같이 -file이라는 파일을 삭제하려고 해도 에러가 나서 삭제할 수가 없게 된다.
#rm -file
rm: invalid option -- l
그러면 파일명 앞에 ./를 붙여서 상대패스로 파일명을 지정하여 삭제하시면 됩니다.
#rm ./-file
또는 하이픈을 중복해 사용하면 이것 이후로는 옵션이 아니라는 의미가 되므로 “-file”을 파일명으로 해석합니다.
#rm -- -file

다음은 파일명에 공간이 있는 경우, 큰따옴표(”)로 파일명을 묶으면 삭제할 수 있습니다.
#rm “blank file”

마지막으로 물음표(?)가 들어간 파일의 경우 와일드 카드 ("?", "*")를 사용하여 신중히 삭제하시면 됩니다.
와일드 카드를 사용하면 실수가 있게 마련인데, rm 명령어에 “-i” 옵션을 붙여서 대화형식으로 신중히 삭제 하십시요.
#rm -i *xls??

 

제목: [LINUX] 부팅시 출력되는 메시지 보기

내용:


간단히 Shift+PgUp/Dn 키를 눌러 지나간 화면을 볼수 있습니다.

또한 부팅시 출력되는 메시지는 /var/log/dmesg 파일에 매번 기록이 됩니다.

 

제목: [LINUX] 시스템에 대한 정보를 알고 싶습니다

내용:
/proc 디렉토리 아래 파일을 출력해 봄으로써 간단한 정보를 알수있습니다.

* 몇가지 소개를 합니다.
/proc/cpuinfo        : cpu 정보
/proc/pci            : pci 정보
/proc/interrupts    : 사용중인 irq 정보
/proc/dma            : 사용중인 dma 채널
/proc/ioports        : 사용중인 i/o 포트 정보
/proc/filesystems    : 현재 사용가능한 화일 시스템
/proc/meminfo        : 현재 사용중인 메로리
/proc/partitions    : 현재 사용중인 파티션
/proc/swaps          : 현재 사용중인  스왑 파티션 정보
/proc/version        : 현재 사용중인 커널 버전
/proc/devices        : 현재 사용중인 드라이버
/proc/cmdline        : 현재 사용중인 부트 이미지

 

제목: [LINUX] 현재 디렉토리의 디스크 용량 확인

내용:


디렉토리를 비롯한 파일들이 차지하고 있는 디스크 용량을 출력하는 명령으로 'du'가 있습니다.
/usr 디렉토리의 용량을 확인하고 싶다면, 다음과 같은 명령어로 쉽게 알수 있습니다.

#du -h /usr  (h 옵션은 우리가 알아 보기 쉬운 단위로 출력합니다.)

 

제목: [LINUX] su 명령어로 root가 되기

내용:
'su' 와 'su -' 는 차이가 있습니다.
전자의 경우 직접 root 유저로서 로그인했을 때와는 달리 현제 유저의 환경을 그대로 물려받은 채 root의 권한을 가집니다. 이로 인해 PATH의 설정도 원래의 유저와 동일하게 되어 있으므로 관리자 커맨드가 놓여있는 /sbin이나 /usr/sbin 등은 PATH에 포함되어 있지 않게 됩니다.
후자의 경우는 직접 root 유저로서 로그인했을 때와 동일한 환경으로 초기화가 되므로 /sbin이나 /usr/sbin 등도 패스에 들어있게 됩니다

 

제목: [LINUX] root의 비밀번호를 잊어버렸어요

내용:


리눅스 싱글 모드로 부팅하신후 프롬프트 상태에서 passwd를 실행하신 후, 새로운 패스워드를 입력하십시요.

 

제목: [LINUX] 언마운트를 실행하면 Device is busy라는 메시지

내용:


가끔 언마운트를 하려고 하면 device is busy라는 메시지만 보일뿐 언마운트가 되지 않는 경우가 종종 발생합니다.
이는 언마운트를 하려는 해당파일 시스템에서 작동되는 프로세스가 있기에 있기 때문인데, 해당 프로세스를 종료하거나 kill 명령을 사용하여 강제로 죽여줌으로써 해결할수 있습니다.
다음 명령은 해당 파일시스템의 프로세스를 모두 kill 시킵니다.

# fuser -km /mnt/cdrom

 

제목: [LINUX] X 윈도우를 다시 설정

내용:
XFree86의 설정을 변경 한다는 것은 결국 /etc/X11/XF86Config 파일을 편집하는 것입니다. 이 파일을 쉽게 편집할 수 있게끔 보통 다음과 같은 프로그램들이 제공됩니다. 레드헷에서 제공하는 Xconfigurator와 XFree86에 포함된 F86setup 그리고 텍스트 기반의 XF86config 유틸리가 있습니다

 

제목: [LINUX] 텔넷(telnet) 접속시 출력되는 메시지를 변경

내용:


텔넷을 이용하여 접속을 할 때 출력되는 메시지는 /etc/issue.net 파일을 참고하고, 부팅할 때 보여주는 메시지는 /etc/issue 파일을 참고합니다. 하지만 현제의 배포판은 부팅시 issue.net과 issue 파일을 매번 새로 작성하도록 구성되어 있습니다. 그러므로 issue.net 과 issue 파일을 변경하는건 시스템을 재부팅하고 나면 아무런 의미가 없어집니다.
/etc/rc.local 파일을 열면 /etc/wow-release 파일을 참고하여 issue.net과 issue 파일을 새로 작성하도록 스크립트가 있으므로 이 부분을 모두 주석처리 하던지, 스크립트를 고쳐야만 출력메세지를 바꿀수 있습니다

 

제목: [LINUX] 리눅스 부팅디스켓 만들기

내용:
#fdformat /dev/fd0 : 플로피 디스켓을 로우레벨 포멧합니다.

#mkfs -t ext2 /dev/fd0 : ext2 파일 시스템으로 포멧합니다.

#mkbootdisk --device /dev/fd0 커널버전 : 커널버전에 해당하는 부팅디스켓을 만듭니다

 

제목: [LINUX] X 윈도우 시스템에 등록된 한글 폰트 확인하기

내용:


xlsfonts | grep ksc 명령을 통해 현제 사용가능한 한글폰트 목록을 볼수 있습니다.

X윈도우 시스템에서 한글이 깨져 보일경우 위의 명령을 통해 한글 폰트가 로딩되어 있는지 검사하시기 바랍니다

 

제목: [LINUX] 화면을 캡쳐하고 싶습니다

내용:


XV 라는 프로그램이 있습니다. XV는 X-Window 상에서 작동하는 이미지 뷰어와 편집기의 기능을 제공합니다. 다양한 형식의 파일포맷이 사용 가능하며, 파일간 변환도 가능합니다.
쉐어웨어로 레드헷 6.1까지는 기본적으로 포함되어 있었지만, 6.2로 버전업 되면서 아쉽게 빠지게 되었습니다.
http://freshmeat.net 에서 xv 다운 받아 설치하시기 바랍니다.

 

제목: [LINUX] X 윈도우에서 휠마우스를 사용할 수 있습니까

내용:
와우 리눅스 6.2에서는 휠마우스를 사용하기 위하여, imwheel 패키지가 포함되어 있습니다.
imwheel 패키지가 설치 되어 있는지 확인 하신후, /etc/X11/XF86Config 파일의 Pointer section 부분을 아래와 같이 변경하십시요.

Section "Pointer"
   Protocol    "imps/2"        <- PS2 방식의 휠마우스
   Device      "/dev/mouse"    <- 마우스 장치명
   ZAxisMapping 4 5            <- 휠마우스를 위한 추가 라인

 

제목: [LINUX] root 계정으로 telnet 과 ftp 에 접속하기

내용:


이것은 보안상 root 계정의 접속을 허용하지 않는 것입니다.
텔넷이나 FTP에서는 사용자 인증시에 패스워드를 텍스트형태 그대로 네트웍에 흘러보내게 됩니다. 이는 같은 네트웍 상의 시스템이 루트 패스워드를 그대로 알아낼 수 있다는 얘기가 됩니다.
최소한의 보안 정책으로 원격에서 루트로 접속 하는 것을 막아 놓은 것입니다.
일반 유저로서 접속하신 후 su 명령을 통해 root를 사용하십시요.

 

제목: [LINUX] 실행파일이 실행이 안되요

내용:
파일의 이름앞에 ./ 를 붙여주십시요.
매번같이 이런 작업이 불편하시다고요?. 그럼 다음과 같이 해보십시오.
자신의 홈 디렉토리의 .bash_profile 에 정의되어 있는 PATH에 ./ 를
추가 시킵니다. 에디터로는 간단히 vi를 사용하면 되며, PATH=$PATH:$HOME/bin:과 같이 되어 있는것을 PATH=$PATH:$HOME/bin:./ 과 같이 ./ 를 추가합니다.
물론, 현재 바꾼 설정이 그대로 적용되는 것은 아니기 때문에, 다시 한번
로그인 하거나, bash를 한번 더 실행시키면 됩니다. 만약, 루트라면 이런것들에 대한 사용자들의 질문을 지속적으로 받을수 있습니다. 따라서, 이런
설정들을 /etc/skel에 들어있는 .bash_profile 파일을 수정함으로써 새로운 사용자 ID를 만들때 바로 적용되도록 할수 있습니다

 

제목: [LINUX] ls시 컬러로 출력되는 폰트를 흑백으로 바꾸기

내용:


리눅스에서는 파일 유형에 따라 컬러를 구별합니다. 이런 설정은 ~/bash_profile에 들어있기 때문에 자신의 홈 디렉토리로 이동해서 .bash_profile을 수정합니다. 수정해야 할 부분은 alias='ls --color=auto'
부분으로, 여기서 --color=auto부분을 없애주면 됩니다. 물론 이경우도 설정이 바로 적용되지 않으므로 bash를 다시 한번 실행시킵니다. 만약, 많은 사람들이 쓰는 서버를 관리한다면 /etc/skel의 ./bash_profile에 이설정을 반영해 놓으면 편리할 것입니다.

 

제목: [LINUX] 파일을 지울때 물어봄없이 지우는 방법

내용:
파일을 지울 때, 필요한 파일을 잘못 지워본 사람이라면 이렇게 일일이 물어보는 것이 별로 귀찮지 않겠지만, 때로는 이 옵션이 귀찮을 때도 있습니다. 이는 파일을 지울 때만 나오는 메시지도 아니며, 있는 파일에 복사할 경우나 파일을 옮겼는데 기존의 파일이 존재할 경우에도 출력됩니다. 이옵션은 ~/bashrc에서 정의되며, alias='rm -i'와 같이 되어 있을것입니다. 즉, rm명령을 실행하면 자동으로 rm -i가 실행되기 때문에 파일을 지울 때마다 그 메시지를 보게되는 것입니다. 따라서, 이줄을 지워준다면 다음부터 그런 메시지를 보지 않을수 있습니다

 

제목: [LINUX] 리눅스 부팅 디스켓을 만드는 또다른 방법

내용:


dd if=/dev/fd0 of=dos.boot
dd if=dos.boot of=/dev/fd0

 

제목: [LINUX] 사용자 계정의 백업및 복구

내용:
여러가지 방법을 통하여 가능합니다. 가장 간단한 방법을 /etc/passwd 파일을 수정하는 것입니다. 리눅스에서는 사용자가 추가되면 /etc/passwd, /etc/group에 그 정보를 기록합니다. 그리고 쉐도우 시스템을 사용하는 경우에 /etc/shadow에도 패스워드 정보를 저장하도록 되어 있습니다. 따라서, /etc/passwd, /etc/shadow, /etc/group 파일만 백업해두면 사용자 계정에 대한 정보를 보관할수가 있으며, 이 파일에서 특정 사용자들에 대한 부분만을 다른 서버의 같은 파일에 추가하게 되면 계정을 옮길수 있습니다. 단, 주의해야 할점은 내부적으로 사용자를 구별하는 UID가 겹치지 않아야 된다는 점입니다.

 

제목: [LINUX] 리눅스 콘솔로 로그인하기

내용:


리눅스에서는 실행 레벨이라는 개념이 있는데, 이는 /etc/inittab 파일에서 설정합니다. 만약 X-Window로 바로 로그인한다면, 실행 레벨이 5로 되어 있다는 말이며, /etc/inittab파일에는 다음과 같이 id:5:initdefault:라고 되어 있는 줄을 볼수 있을것입니다. 따라서 보통의 콘솔로 로그인 하기를 원한다면 실행 레벨 3을 선택하면 됩니다.

 

제목: [LINUX] CDROM를 사용할때마다 마운트하는것이 불편

내용:


마운트에 대한 정보가 담겨 있어서, 편하게 마운트를 할수 있는 설정파일은 /etc/fstab입니다. 다음과 같은 형식으로 되어 있는데 cdrom부분이 있는 경우에는 mount /dev/cdrom이나 mount /mnt/cdrom과 같이 옵션없이 마운트할수 있습니다.

 

 

제목: [LINUX] 시스템이 부팅할때 특정프로그램을 실행하도록

내용:


/etc/rc.d/rc.local 이라는 파일안의 내용이 부팅될때 자동으로 실행됩니다.

 

제목: [LINUX] 로긴시 나오는 메시지를 바꾸자

내용:


로컬로 접속하는 경우에는 /etc/issue, 네트웍을 경유할 경우에는 /etc/issue.net의 파일을 보여주게 되어 있습니다. 따라서, 이두개의 파일을 수정하면 메시지를 바꿀수 있습니다.
그러나, 기본적으로 재부팅할때마다 default issue로 바뀌게 되어 있으므로 그 부분을 수정하더라도 재부팅을 하면 예전과 같은 내용이 나옵니다

 



출처 IT강국 Corea--깨어나라 Corea!! | 활력찾기
원본 http://blog.naver.com/seobs114/100012577746

리눅스 종류

머릿글

리눅스를 처음 접하는 사용자는 무수히 많은 리눅스 배포본을 보고 '학'을 뗀다. 그리고 무엇을
선택해야할지 무지 헷갈린다. 여기서는 그러한 사용자들에게 도움을 주고자 한다. 전세계 리눅스
사용자들이 가장 많이 사용한다고 보이는 10대 배포본을 소개한다. 전세계에서 거의 날마다 등장하고
있는 리눅스 배포본을 모두 소개한다는 것은 불가능한 일이고, 사용자의 특별한 목적에 맞는
배포본이 따로 있을 수도 있겠지만, 기본적으로 여기서 소개하는 배포본은 아주 인기가 있으며
아주 활동적인 포럼과
메일링리스트를 갖추고 있어 궁금한 것을 물어볼 수도 있다.
라이코리스, 잰드로스, 린도우즈는 처음 리눅스를 접하는 사용자가 리눅스의 복잡함을 접하지
않고서도 최단 시간에 필요한 컴퓨팅 업무를 할 수 있게 해준다. 이 반대 끝에는 젠투, 데비안,
슬랙웨어가 있는데 이것들은 업무에 사용하기 전에 상당한 부분을 배워야하는 다소 진보된 배포본이다.
맨드레이크, 레드햇, 수세는 괜찮은 중도 성향 배포본이다. 노픽스는 특별한 경우인데, 설치도
필요없이 CD에서 바로 사용해볼 수 있는 것으로 손에 물을 묻히지 않고 리눅스를 사용해볼 수
있는 대단한 배포본이다. 디스트로와치는 디스트로와치 상에서의 인기 순으로 이 배포본들을 소개한다.
이 순서는 시장 점유율이나 제품 품질과는 무관하다.


초보자를 위한 리눅스 배포본 선택 가이드


맨드레이크 리눅스





맨드레이크 리눅스는 게일 듀발이 개발을 시작한 배포본으로 1998년 7월 처음 등장한 이래로
엄청난 인기를 끌어왔다. 이 개발자들은 레드햇 배포본을 가져와서 기본 데스크톱을 KDE로 바꾸고
사용하기 쉬운 인스톨러를 덧붙임으로써 리눅스는 설치하기 힘들다는 고정 관념을 바꾸었다.
맨드레이크의 하드웨어 감지 기능과 디스크 파티셔닝 유틸리티는 수많은 사람들이 업계 최고로
여기고 있다. 맨드레이크를 사용하는 많은 사용자들은 이만큼 편리성을 보장해주는 OS는
없다고 말한다.


맨드레이크 리눅스는 리눅스를 처음 접하는 사용자와 대안 운영체제를 찾는 개인 사용자들
사이에서 인기를 끌어왔다. 맨드레이크 개발은 전적으로 열려있고 투명하다.
패키지는 'cooker' 디렉토리에 거의 매일 올라오고 있다. 새 릴리즈가 베타 단계에 들어가면
쿠커 스냅샷은 첫번째 베타로 받아들여진다. 베타 테스트 프로세스는 통상 짧고 집중적이지만
버전 9.0부터는 다소 길어지고 철저해졌다. 베타 메일링리스트는 (시장 바닥보다 훨씬 ^^)
북적거리므로 그만큼 버그나 기타 보고에 대한 응답이 아주 빠르다.


이런 방식의 개발은 결국 최신 버전 릴리즈를 낳았다. 아주 발빠르게 최신 것으로 갱신된 리눅스
배포본이 된 것이다. 공평하게 말하자면, 다른 배포본보다 버그도 많고 다소 불안정하다고 느낄 수도 있다.
많은 사람들은 이러한 것들이 받아들일만한 수준이라고 보고 있다. (울트라) 최신 소프트웨어를
돌리다보면 가끔 애플리케이션들이 미치기도 하는데(^^) 이 정도는 감내할 만한 수준이라는
것이다.

장점: 사용자에게 친근함, 그래피컬 설정 유틸리티들, 엄청난 공동체 지원, NTFS 파티션 크기 조절 지원

단점: 몇몇 릴리즈에는 버그가 있다. 릴리즈들은 맨드레이크클럽 회원들에게 우선 공개된다.

소프트웨어 패키지 관리: RPM
프리 다운로드: 가능, 다소의 시간 경과 후에

추천 변종: PC리눅스OS

홈페이지: http://www.linuxmandrake.com http://www.mandrakesoft.com
국적: 프랑스



레드햇 리눅스 및 페도라 코어





레드햇이라는 이름을 들으면 곧바로 리눅스를 떠올리는 사람이 많다. 세상에서 가장 유명한
리눅스 회사니까. 1995년 밥 영과 마크 어윙이 창업한 레드햇은 최근에야 겨우 흑자 구조로
돌아섰다는 소식인데 서비스와 레드햇 엔터프라이즈 리눅스 제품 라인 덕분이란다. 그런데
레드햇 리눅스 9가 레드햇 리눅스 제품 라인에서 마지막 버전이 되어버렸다. 그 후속타로는
2003년 하반기에 발표된 페도라 코어. 공식적으로 레드햇의 후원을 받고 있는 페도라는
공동체가 개발에 참여하고 있으며 수명이 짧고 주로 레드햇 엔터프라이즈 리눅스를 위한 테스팅
베이스 역할을 하고 있다.


레드햇 리눅스와 페도라 코어의 주요 특징은 무엇일까? 사내에서 개발한 다수의 지식 집약
유틸리티들 위에 보수적인 패키지와 최신 패키지를 함께 버무려놓은 다소 희한한 모델이다.
이들 패키지들은 그렇게 최신 버전은 아니다. 새 베타 버전이 나오면 보안 업데이트를 제외하곤
해당 패키지 버전은 동결된다. 결과적으로 테스트를 충분히 거친 안정된 배포본이 되는 것이다.
해당 베타 프로그램과 버그 보고 방식은 공개되어 있으며 여러 메일링리스트도 있다.
레드햇 리눅스는 전세계에서 서버 상에서는 지배적인 배포본이 되었다.


레드햇이 성공할 수 있었던 이유 중의 하나는 이 회사가 제공하는 다양한 서비스가 상당한 인기를
끌어왔기 때문이다. 소프트웨어 패키지는 레드햇 네트웍을 통해 쉽게 업데이트할 수 있으며 프리
소프트웨어 자료실과 가치있는 정보를 제공한다. 다양한 종류의 지원 서비스와 엔터프라이즈 리눅스
제품을 레드햇에서 구입할 수 있으며 항상 저렴하진 않지만 필요하다면 고도로 숙련된 지원
인력으로부터 훌륭한 지원을 받을 수 있다. 이 회사는 심지어 인증 프로그램을 개발해 자사
배포본의 인기를 한층 끌어올렸다. RHCE(레드햇 인증 엔지니어) 과정과 시험은 현재 전세계
여기저기에서 이용할 수 있다. 이러한 요인들로 인해 레드햇은 이제 IT 산업에서도 알아주는
브랜드명으로 우뚝 설 수 있었다.


장점: 사용자층이 넓음, 훌륭한 공동체 지원, 수많은 혁신

단점: 프리 에디션의 제품 수명이 짧다, 썰렁한 멀티미디어 지원, 레드햇이 페도라로 이전하는 것에 대한 걱정

소프트웨어 패키지 관리: RPM

프리 다운로드: 가능

홈페이지: http://fedora.redhat.com/

국적: 미국


데비안 GNU/리눅스





데비안 GNU/리눅스는 이안 머독이 1993년 시작한 완전 비영리 프로젝트로, 자유소프트웨어운동을
시작한 이상에 가장 근접하는 순수 모델일 것이다. 전세계 수 백명 개발자들이 자발적으로
참가하고 있고 관리가 잘되고 규칙이 잘 서 있으며 질 높은 배포본을 내놓고
있다.


개발 과정에서는 주 디렉토리 트리에 항상 세 개의 부 디렉토리가 있다(stable, testing, unstable).
새 버전 패키지가 등장하면 최초 테스트용으로 unstable 디렉토리로 들어간다. 첫 테스트를 통과하면
해당 패키지는 testing 디렉토리로 넘어가서 수 개월 동안 혹독한 테스트를 거친다. 이렇게 철저한
테스트를 거친 뒤에야 stable 판정이 떨어진다. 이러다보니 결과적으로 이 배포본은 가장
안정적이고 믿을 만하지만 최신 버전이 아닌 점이 단점으로 작용한다. stable 버전은
중요한 업무용 서버에 적합하지만, 많은 사용자는 자신의 컴퓨터에 testing 버전이나
unstable 버전을 사용하기를 좋아한다.


데비안은 설치가 어려운 걸로 한동안 정평이 나 있었다. 사용자가 해당 컴퓨터 하드웨어에 대해
박학하게 알고 있으면 그나마 좀 나았지만. 이걸 보완하는 게 apt-get인데 데비안 패키지를 편리하게
설치할 수 있는 인스톨러다. 미래의 모든 업데이트는 apt-get 유틸리티를 사용해서 할 수 있다.


장점: 100% 프리, 훌륭한 웹 사이트와 공동체 리소스, 충분한 테스트, apt-get을 사용한 비교적
어렵지 않은 소프트웨어 설치

단점: 옛스런 인스톨러, 안정 버전은 옛 버전(?)
소프트웨어 패키지 관리: DEB

프리 다운로드: 가능

홈페이지: http://www.debian.org

국적: 지구(^^;)


젠투 리눅스





젠투 리눅스는 대니엘 로빈스가 시작했는데 이전에 스탬퍼드(Stampede) 리눅스와 프리BSD
개발을 한 사람이다. 젠투는 이 제작자의 프리BSD에 대한 천착의 결과인데 이 오토빌드
기능은 ports로 부른다. 제작자는 이것의 영향을 받아 ports를 젠투에 portage라는 이름으로
통합하기로 했다. 초창기 젠투에 얽힌 이야기는

여기서(영문)
읽을 수 있다.
젠투의 첫 번째 안정 버전은 2002년 3월에 발표되었다.


젠투는 소스 기반 배포본으로 이 목록에서는 유일하다. 설치 미디어는 다양한 레벨의 미리 컴파일
바이너리 패키지를 제공해서 기본 리눅스 시스템 운영을 돕지만 젠투에 깔린 아이디어는 모든 소스
패키지를 사용자 컴퓨터에서 컴파일한다는 것이다. 이렇게 함으로써 얻을 수 있는 가장 큰 장점은
모든 소프트웨어가 해당 컴퓨터 아키텍처에 고도로 최적화된다는 것이다. 또한 설치한 소프트웨어를
새 버전으로 업데이트하는 것은 명령을 간단하게 입력하는 것으로 끝나며, 중앙 저장소에 저장되는
소프트웨어 패키지들은 보통 가장 최신것으로 유지된다. 반면에 젠투를 설치하고 나서, 최신
그래피컬 데스크톱, 멀티미디어, 개발 도구 등을 포함한 제대로 된 배포본이 되려면 꽤 빠른
컴퓨터에서도 며칠이나 걸릴 만큼 정말 지겨운 측면이 있다.


장점: 개별 소프트웨어 패키지를 비교적 힘들이지 않고 설치할 수 있다, 아주 최신 버전,
자신의 요구에 맞는 시스템을 일일이 만드는 데 따른 '요상한 기분'을 마음껏 음미할 수 있다.

단점: 길고 지겨운 시스템 설치, 가끔 불안정과 브레이크다운 위험성

소프트웨어 패키지 관리: SRC
프리 다운로드: 가능


홈페이지: http://www.gentoo.org
국적: 미국


수세 리눅스





수세도 데스크톱에 주안을 두고 있는 회사지만 엔터프라이즈급 제품도 판매하고 있다. 수세
개발자들이 개발한 인스톨러와 YaST 설정 도구 덕분에 이 배포본은 좋은 평가를 받고 있다.
박스 제품에 딸려오는 문서는 완벽할 정도로 꼼꼼하고 유용하다. 이 배포본은 유럽과 북미에서는
상당한 시장을 차지했지만 아시아와 다른 지역에서는 인지도가 그렇게 높지 못하다. 수세는
2003년 하반기 노벨 사에 인수되었다.


수세 개발은 전적으로 사내에서 폐쇄적으로 개발하고 테스트용 공공 베타는 제공하지 않는다.
게다가 박스 제품이 시장에 깔리고 한참 뒤에나 소프트웨어 다운로드를 지원하는 정책을 펴고 있다.
또한 쉽게 설치할 수 있는 ISO 이미지도 제공하지 않는 정책으로 사용자로 하여금 자사의 패키지
박스 제품을 구입하도록 유도하고 있다.


장점: 전문적인 패키지 관리, 편리한 YaST 설정 도구

단점: 일부 지역에서는 사용자가 많지 않다, 구매할 수 있는 리셀러가 일부 지역에는 없을 수도
있다(이럴 경우 FTP 설치를 해야한다), 사유(proprietary) 컴포넌트를 갖고 있다, 따라서 재배포가 힘들다.

소프트웨어 패키지 관리: RPM

프리 다운로드: 다운 가능한 ISO 이미지를 제공하지 않는다. 하지만 프로페셔널 에디션을
FTP를 통해 설치할 수 있다, 보통 공식 릴리즈 한두 달 뒤에 제공한다. FTP 설치는 어렵지 않지만
광대역 접속이 필요하다.


홈페이지: http://www.suse.com
국적: 독일


노픽스





독일의 클라우스 노퍼가 개발한 데비안 기반 배포본으로 리눅스 표준을 한단계 끌어올렸다는
평가를 받고 있는데, 특히 하드웨어 자동 감지 기능은 어지간한 상용 리눅스 배포본까지도
부끄럽게 만든다. 손 쓸 필요가 없는 부팅, 엄청난 소프트웨어 패키지, 놀라운 압축해제 속도,
하드디스크에 패키지를 설치하는 능력 등은 노픽스를 꼭 필요한 도구의 반열로 올려놓았다.
복구 디스크를 만드는 데 사용할 수도 있고, 리눅스를 구경해보지 못한 사람들에게 보여주는
용도로도 괜찮고, 새로운 컴퓨터를 사기 전에 테스트해보는 용도로도 좋다. 심지어 일상
업무를 처리하는 풍부한 기능을 갖춘 리눅스 배포본으로도 사용할 수 있다.


노픽스의 새 버전은 자주 릴리즈되는데 보통 1-2주마다 하나씩 나온다.
업데이트는 데비안의 unstable 브랜치에서 버그 픽스나 최신 소프트웨어 패키지를
가져와서 수행한다.


노픽스는 리눅스 미디어로부터 폭넓은 조명을 받아왔다. 관련 기사 목록은
이곳의 노픽스
페이지
에서 볼 수 있고, 클라우스 노퍼와 가진 인터뷰를 참고하기 바란다. 아울러 우리가 LWN.net에 제공한
Knoppix - the Great Linux Advocate
도 놓치지 말기 바란다.


장점: 훌륭한 하드웨어 자동 감지, 하드 디스크 설치 없이 CD에서 바로 실행 가능, 복구 도구로도
사용될 수 있음.

단점: CD에서 바로 실행할 경우 느린 속도와 성능.

소프트웨어 패키지 관리: DEB
프리 다운로드: 가능


홈페이지: http://www.knoppix.org/ (독일어), http://www.knoppix.com/ (영어)

국적: 독일


슬랙웨어 리눅스





패트릭 볼커딩이 1992년부터 만들기 시작한 슬랙웨어 리눅스는 가장 오래된 리눅스 배포본으로
아직까지 살아있다. 그리 화려하진 않고 여전히 텍스트 기반 인스톨러를 고집하고 그래픽컬
설정 도구도 없다. 다른 배포본들이 심혈을 기울여 많은 공통 유틸리티들을 위한 사용하기
쉬운 프론트 엔드를 개발하는 동안 슬랙웨어는 여전히 편리함과는 거리가 멀고 모든 것을 설정
파일을 통해 처리해왔다. 이러한 이유로 슬랙웨어는 초심자라 하더라도 리눅스 사용법을 다소
정성들여 배울 자세가 되어 있는 사람에게 권한다.


그럼에도 불구하고 슬랙웨어는 여전히 많은 사용자들을 끄는 매력을 갖고 있다. 높은 수준의
안정성보안성을 갖고 있기 때문에 서버 도입에 아주 적합하다. 경험 있는 리눅스 관리자들은,
슬렉웨어가 갖추고 있는 패키지들은 대부분 원래 형태이고 자체 개발한 확장 부분은 그리 많지
않기 때문에 버그가 상대적으로 적다고 말한다. 자체 개발한 것이 많으면 자연히 버그가 생길
확률이 높기 때문이다. 릴리즈는 1년에 한번 정도로 그리 잦은 편은 아니지만 공식 릴리즈 뒤에
항상 최신 패키지를 내려받을 수 있다. 슬렉웨어는 리눅스의 내부를 좀 더 깊게 들여다보고 싶은
사람들에게는 멋진 배포본이다.


내가 들은 이 배포본의 최대 특징은 이렇다. 여러분의 리눅스 박스에 문제가 생기면 슬랙웨어
사용자를 찾아라. 슬랙웨어 사용자는 다른 어떤 배포본 사용자보다 그 문제를 고칠 능력이 뛰어나니까.


장점: 높은 수준의 안정성과 적은 버그, 유닉스 정신에 가장 근접하는 배포본.

단점: 모든 설정은 텍스트 파일을 편집하는 방식, 하드웨어 자동 감지는 다소 뒤떨어짐.

소프트웨어 패키지 관리: TGZ
프리 다운로드: 가능


홈페이지: http://www.slackware.com
국적: 미국


라이코리스 데스크톱/LX





이전에 레드몬드 리눅스로 출발했던 라이코리스는 조셉 칙이 주동자인데 이 사람은 이 회사의
CTO이고 전에는 리눅스캐어와 마이크로소프트에 근무한 전력이 있다. 이 배포본의 의도는
사용하기 편한 배포본을 만들어 윈도우즈에서 리눅스로 옮기는 사용자들이 힘들이지 않고 소기
목적을 달성할 수 있도록 하는 데 있다. 라이코리스 데스크톱/LX는 이 목적을 달성하기
위해 수많은 부분을 뜯어 고쳤는데 '내 컴퓨터'나 '이웃 네트웍'뿐만 아니라 윈도우즈
XP와 꼭 닮은 매력적인 기본 테마가 그렇다. 이 배포본은 현재 칼데라 오픈리눅스에 기반을
두고 있다.


라이코리스 데스크톱/LX에는 패키지 숫자가 그리 많지 않은데 보통 한 업무에 한 애플리케이션
정책을 취하고 있고, 일반 시스템 관리용으로 하나의 제어판이 있다. 비평가들은 일부 패키지가
오래됐다고 말하는데 해당 개발자들은 사용자 친숙성 향상이 자신들의 주요 목표라고 말한다.


장점: 초심자 친숙성, 윈도우즈와 유사한 디자인

단점: 일부 오래된 패키지, 상용 버전의 경우 시트 당 라이센싱 정책

소프트웨어 패키지 관리: RPM
프리 다운로드: 45일 시험판만 제공


홈페이지: http://www.lycoris.com
국적: 미국


잰드로스 데스크톱





잰드로스는 코렐 리눅스에서 파생되었다. 코렐 리눅스는 1999년 대중용 리눅스를 시도하면서
성공을 거두는 듯했지만 얼마 뒤에 회사가 재정 위기에 빠지면서 끝내 좌초하고 말았다.2001년
8월 잰드로스가 그 배포본을 사서 2002년 10월에 첫번째 잰드로스 버전을
발표했다.


잰드로스 데스크톱은 의심할 여지없이 현재 시장에서 가장 사용자와 친숙한 배포본으로 처음
리눅스를 사용하는 사람에게 강력 추천한다. 이 배포본에 들어있는 애플리케이션 숫자는 그리 많지
않지만 해당 개발자들은 완벽한 작업을 했다고 자부한다. 잰드로스는 자체만의 패키지를 꽤 제공하는데
그 중에는 파일 관리자와 기타 사유 컴포넌트들이 있다. 두 가지 판이 있는데, 디럭스(미화 99불)와
스탠더드(미화 40불)의 유일한 차이는 크로스오버오피스와 플러그인(마이크로소프트 오피스와 기타
윈도우즈 제품을 리눅스에서 실행할 수 있도록 하는 호환 계층), NTFS 파티션 크기 조절 도구
(윈도우즈XP 사용자용)가 저렴한 버전에는 빠져있다는 것이다.


장점: 초보자에게 적합한 디자인, 박스 하나로 모두 해결, 훌륭한 파일 관리자, 기타 유용한 유틸리티.

단점: 일부 사유 컴포넌트 포함, 따라서 재배포 힘듦, 프리 다운로드 제공하지 않음.

소프트웨어 패키지 관리: DEB
프리 다운로드: 없음


홈페이지: http://www.xandros.com
국적: 캐나다



린스파이어 (예전의 린도우즈OS)





린스파이어(예전의 Lindows.com)는 MP3.com 창업자이자 전 CEO 마이클 로버트슨이 2001년
10월 미국 샌디에고에서 시작한 배포본으로 초기 목표는 리눅스 애플리케이션뿐만 아니라 MS
오피스 같은 주요 윈도우즈 애플리케이션까지도 실행할 수 있는 리눅스 기반 OS를 만드는
것이었다. 그러나 그 야망은 그 목표를 이루는 데 들어가는 엄청난 노력을 과소평가한 것으로
이후에 포기했다.


린도우즈OS가 처음 대중 앞에 모습을 드러낸 것은 2002년 11월로 린도우즈3.0이란 이름이었다.
이 제품의 주요 특징은 빠르고 쉬운 설치와 클릭앤런(Click-N-Run, 이 회사의 소프트웨어 풀에서
소프트웨어를 내려받아 설치하는 간편한 웹 기반 인프라스트럭처)이다. 이 제품에 대한 평가는
다양하다. 클릭앤런에는 잡아야할 버그가 아직 있는 듯하다. 이 회사의 엄청난 마케팅 공세는
가끔 눈에 거슬리지만 린스파이어(와 리눅스)를 주류 미디어 안에 심는 데 성공했다.
린스파이어를 미리 설치한 컴퓨터 제품을 현재 미국 영국 일본 및 기타 나라에서 판매하고
있다.


장점: 초보자에게 적합한 디자인, 빠르고 쉬운 설치, 원클릭 소프트웨어 설치.

단점: 꽤 비싸다, 소프트웨어 풀을 사용하면 연간 비용 청구

소프트웨어 패키지 관리: DEB
프리 다운로드:
린도우즈라이브만 제공.


홈페이지: http://www.linspire.com
국적: 미국

내용출처 : [기타] http://cafe.naver.com/itgogo.cafe/ http://distrowatch.com/dwres.php?resource=major

출처 [NEO] | 탐험가
원본 http://blog.naver.com/neolims/50004964658

Linux에서 쓰이는 거의 모든 명령어 설명

adduser
    루트로 로그인해서 이용자를 추가

    Usage

    $ adduser [ID]

 

admin
    SCCS(Source code control system) 파일을 작성 또는 관리를 위한 명령어

    Usage

    $ admin [-nirtfdaemyhz] files


Options

-n           : 신규 SCCS 화일을 작성

-i[name]     : 신규 SCCS 화일에 등록된 화일명(name)

-f            : flag SCCS 화일에 등록하는 플래그들의 값을 지정

-r            : 번호 초기 델타의 릴리즈 번호 지정은 -i와 함께 사용

-t[name]     : SCCS 화일의 주석문으로 등록되는 화일명(name)

-e           : login 델타 작성 가능한 사용자 리스트로 부터 삭제되는 로그인명

-h           : 신규 check sum을 계산하고 기존 check sum과 비교

-z           : check sum을 계산하여 SCCS 화일에 기록

 

alias
    자주 쓰이는 명령어를 쓰기 편하게 바꾸는 명령

    Usage

    $ alias [새로만들 명령어]=‘[기존 명령어] [옵션]’

사용예제

$ alias cp='cp -i'

$ alias la='ls $LS_OPTIONS -a'

$ alias less='less -rf'

$ alias lf='ls $LS_OPTIONS -F'

$ alias ll='ls $LS_OPTIONS -l'

$ alias ls='ls $LS_OPTIONS'

$ alias mv='mv -i'

$ alias rm='rm -i'

$ alias dir='ls -al


ar

아카이브 화일에 있는 화일의 그룹들을 유지 관리하는 명령어

Usage

$ ar [-X32_64] [-]{dmpqrstx}[abcfilNoPsSuvV] [member-name] [count] archive-file file...

$ ar -M [

 

Commands

d            : delete file(s) from the archive

m[ab]       : move file(s) in the archive

p            : print file(s) found in the archive

q[f]          : quick append file(s) to the archive

r[ab][f][u]   : replace existing or insert new file(s) into the archive

t             : display contents of archive

x[o]         : extract file(s) from the archive

command specific modifiers:

[a]          : put file(s) after [member-name]

[b]          : put file(s) before [member-name] (same as [i])

[N]          : use instance [count] of name

[f]           : truncate inserted file names

[P]          : use full path names when matching

[o]          : preserve original dates

[u]          : only replace files that are newer than current archive contents

generic modifiers:

[c]          : do not warn if the library had to be created

[s]          : create an archive index (cf. ranlib)

[S]          : do not build a symbol table

[v]           : be verbose

[V]          : display the version number

[-X32_64]   : (ignored)

 

at
 
프로그램을 지금이 아닌 나중에 실행하도록 예약한다.

Usage

$ at [option]

 


Options

-q 큐         : 대소문자 알파벳으로 큐를 지정한다. 순서적으로 빠른 알파벳이 지정된 큐 일수록 CPU 시간 점유 우선권이 낮다.

-r 작업번호  : 큐에서 작업 번호가 지시하는 작업을 지운다. 슈퍼유저가 아니라면 자신의 작업만을 지울 수 있다.

-l            : 현재 계획된 작업들의 목록을 보여준다. 슈퍼 유저라면 모든 작업들의 계획목록을 보여준다.

-m          : 작업이 완결되면 사용자에게 메일을 보낸다.

-f filename  : 표준 입력이 아닌 지시된 파일에서 작업을 읽어온다.


awk
 
program file에서 기술된 pattern들 중 일치되는 line 을 찾기 위해 입력 화일을 검색하는 명령어


Usage

$ awk [-Fc] [profile] [file] ...

$ awk [-Fc] [-f profile] [file] ...


Options

-Fc          : 입력필드의 구분기호로서 c를 이용

-f           : progam file로서 다음 인수 사용

 

banner
  
인수로 주어진 문자열을 큰 글씨로 만들어서 출력

Usage

$ banner [ -w [숫자] ] 문자열


Options

-w           : 옵션 지정만 하면 80 칼럼으로 폭을 바꾼다. 지정하지 않으면 132 칼럼으로 내정되어 있다. -w 옵션 뒤에 숫자를 지정하면 원하는 폭으로 조정할 수 있다.

 

bang
 
'!' 문자를 부르는 말로, C shell에서 '!!'를 명령어 라인에 입력하면, 마지막 명령을 반복하며, Bang!Bang!(뱅뱅)이라고 부른다.

 

bash
  
bash 셸이 아닌 사용자가 셸을 변경하고자 할 때 사용하는 명령입니다.


설명

bash셸은 일반적으로 Linux의 기본 셸로 지정되어 있습니다.

만약 다른 셸을 사용하고 있으면서 bash 셸로 바꾸기 위한 명령은 다음과 같습니다.


# bash     (enter)'

 

bc
 
C Language와 유사한 대화식 번역기이며 무제한 정도의 연산을 제공하는 명령어


Usage

$ bc [-cl] [file ... ]


Options

-c           : compile만 한다

-l            : 임의 정밀도의 수학 library명을 의미

 

biff
 
전자우편의 수신을 즉시 알려주는 동작을 가능하게 할 것인지 그렇지 않은 지의 여부를 보여주거나 결정


Usage

$ biff [ y 혹은 n]


설명

유닉스 셸은 사용중이라도 주기적으로 전자우편의 수신 여부를 점검한다. 만일 사용자가 전자우편이 도착하는 즉시 알고자 한다면 biff를 사용하여 그것을 지시할 수 있다. 또는 언제라도 그 기능을 해제할 수도 있다. biff는 인수없이 사용되면 현재 어떤 상태로 되어 있는지 보여준다. 기능 설정과 해제 여부는 y 혹은 n 인수를 주어서 결정한다.

 

bzip2
 
자료를 압축하기 위한 새로운 알고리즘이다. 보통은 gzip으로 한 것의 60-70%의 크기로 압축한다.

 

설명

bzip2는 압축률과 복원률에서 탁월한 성능을 자랑하고 있다. 또한 UNIX 및 WIN32에서 모두 사용할 수 있으며 프로그램은 GNU을 따르므로 누구든지 사용할 수 있다.

 

cal
 
서기 원년부터 9999년까지의 달력을 볼 수 있다 .

Usage

$ cal [-jy] [ [ 달 ] 연도 ]

 

Options

-j            : 1월 1일부터 날짜수를 계산하는 julian 날짜를 표시한다.

-y           : 올해의 달력을 표시한다.

 

cat

파일의 내용을 표준 출력으로 내보내어, 파일내용을 알아보거나, 여러 파일을 하나의 파일로 출력하여 연결합니다. 또는 표준 입력으로부터 파일을 만들 수도 있습니다.


Usage

$ cat [option] file_name(s)


Options

-b           : 공백 외의 글자가 있는 모든 행의 개수를 센다.

-e           : 제어 문자를 ^ 형태로 출력하면서, 각 행의 끝에 $를 추가한다. -vE와 같다.

-n           : 각 행을 출력하면서 행 번호를 함께 첨부한다.

-s           : 중복되고 겹치는 빈 행은 하나의 빈 행으로 처리한다.

-r           : 행바꿈 문자를 제외한 제어 문자를 ^ 형태로 출력한다. -vT와 같다.

-u           : 유닉스 호환성을 위해 추가된 옵션으로서 무시된다.

-v           : tab과 행바꿈 문자를 제외한 제어 문자를 ^ 형태로 출력한다.

-E           : 각 행마다 끝에 $ 문자를 출력한다.

-T           : 시로서 탭(tab) 문자를 출력한다.

-A           : -vET 옵션을 사용한 것과 같은 효과를 가진다.

 

cc
 
C Language를 compile 하는 compiler


Usage

$ cc [option] file


Options

-c           : compile의 linkage editor 단계를 억제한다

-E           : 지정된 C program에 대해 cpp만을 실행하고 결과는 표준출력하지 않는다

-f           : C program에서 부동소수점을 포함하는 코드를 linkage editor시킨다

-o           : outfile outfile이라는 화일명으로 목적프로그램을 저장하며 생략시는 a.out에 저장

-s           : C program을 compile 하지만 assemble하지 않으며 어셈블리 언어 출력은 .S가 붙은 화일에 저장


cd
 
디렉토리를 변경

 

Usage

$ cd [directory]

$ cd cgi-bin : 하부 디렉토리인 cgi-bin으로 들어감.

$ cd ..       : 상위디렉토리로 이동

$ cd or cd ~ : 어느곳에서든지 자기 홈디렉토리로 바로 이동

$ cd /webker : 현재 작업중인 디렉토리의 하위나 상위 디렉토리가 아닌 다른 디렉토리(webker)로 이동하려면 /로 시작해서 경로이름을 입력하면 된다.

 

chfn
 
사용자의 finger 정보를 바꾸는 명령어입니다.

 

chgrp
  
파일의 그룹 소유권을 바꾼다.


Usage

$ chgrp [option] 그룹_파일들


Options

-c           : 실제로 소유자가 바뀐 파일에 대해서 자세히 기술한다.

-f           : 파일의 그룹 소유권을 바꿀 수 없더라도 에러 메시지를 출력하지 않는다.

-v           : 소유권의 바뀜에 대해서 자세히 기술한다.

-R           : 디렉토리와 그 내용 파일들의 소유권을 재귀적으로 모두 바꾼다.

 

chmod
 
화일 permission 제어

Usage

$ chmod [option] [file]

$ chmod [option] 레벨 동작 권한 파일이름(들)


Options

-c           : 실제로 파일의 권한이 바뀐 파일만 자세히 기술한다.

-f           : 파일의 권한이 바뀔 수 없어도 에러 메시지를 출력하지 않는다.

-v           : 변경된 권한에 대해서 자세히 기술한다.

-R           : 디렉토리와 파일들의 권한을 재귀적으로 모두 바꾼다.

 

참고

예) -rwxr-xr-x guestbookt.html

rwx : 처음 3개 문자 = 사용자 자신의 사용 권한

r-x : 그다음 3개 문자 = 그룹 사용자의 사용 권한

r-x : 마지막 3개 문자 = 전체 사용자의 사용 권한
 읽기(read)---------- 화일 읽기 권한

쓰기(write)---------- 화일 쓰기 권한

실행(execution)------ 화일 실행 권한

없음(-)------------ 사용권한 없음 
 
chown
  
파일의 소유권을 다른 사람에게로 변경시킨다.

Usage

$ chown [option] [user file]


Options

-c           : 실제로 파일의 소유권이 바뀐 파일만 자세히 기술한다.

-f           : 파일의 소유권이 바뀔 수 없어도 에러 메시지를 출력하지 않는다.

-v           : 변경된 소유권에 대해서 자세히 기술한다.

-R           : 디렉토리와 파일들의 소유권을 재귀적으로 모두 바꾼다.


설명

파일의 소유권을 다른 사람에게로 바꾸는 것은 슈퍼 유저만이 할 수 있다.

 

chsh
 
사용자의 shell을 바꾸는 명령어입니다.

 

clear
 
화면 지우기

 

cmp
 
두 개의 파일 내용을 비교

Usage

$ Cmp [option] [file1] [file2]

 

Options

-l            : 두 파일 내용을 비교하여 틀린 곳마다 byte수(10진수)와 틀린 byte수(8진수) 출력

-s           : 비교하여 틀린 내용을 출력하지 않고 return code 만 반환

 

comm
 
두 개의 정렬(sort)된 화일에서 공통된 line을 선택하거나 삭제

Usage

$ comm [option] file1 file2


Options

-1           : file1에만 있는 line을 출력하지 않는다

-2           : file2에만 있는 line을 출력하지 않는다

-3           : file1, file2 양쪽 화일에 있는 line을 출력하지 않는다

 

compress
 
확장자 .Z 형태의 압축파일 생성

Usage

$ compress [file]     : 압축시

$ uncompress [file]   : 해제시

 

cp
 
화일 복사(copy)

Usage

$ cp [option] [file1] [file2]

$ cp [option] [file1] [directory]


Options

-a           : 가능한한 원 파일의 구조와 속성을 그대로 복사한다.

-b           : 복사할 때 덮어쓰게 되는 파일은 백업을 만든다.

-d           : 심볼릭 링크는 심볼릭 링크로 복사한다. 그리고 원본 파일과의 하드 링크 관계를 유지한다.

-f           : 복사 위치에 존재하는 파일을 제거하고 복사한다.

-i            : 복사시 같은 이름의 파일이 존재한다면 덮어쓸 것인가 확인한다.

-I            : 하드 링크를 만든다.

-P           : 원본 파일의 소유자, 그룹, 권한, 시간 기록을 그대로 복사한다.

-r           : 파일과 하위 디렉토리에 포함된 파일 모두를 재귀적으로 복사한다.

-s           : 디렉토리가 아닌 파일의 심볼릭 링크를 만든다. 소스 파일의 이름은 전체 경로 이름으로 한다. 목적지 파일 이름은 전체 경로를 주지 않아도 현재 디렉토리로 간주되므로 상관없다.

-u           : 파일의 정보를 갱신한다.

-x           : 다른 파일 시스템인 하위 디렉토리는 무시한다.

-R           : 디렉토리를 재귀적(recursive)으로 복사한다.

 

cpio
 
아카이브 파일을 복사하여 입출력

Usage

$ cpio -o [abcv]

$ cpio -i [Bdmtuvsb] [patterns]

$ cpio -p [adlmv] directory


Options

-o 복사 출력 : 화일을 path명과 정보 상태를 함께 출력

-i복사 입력 : 표준 입력 화일로 부터 pattern에 일치하는 화일을 추출

-p           : *directory 내에 file 을 조건부로 작성하고 복사

command:

a            : *file 복사후 입력 화일의 최종 접근 시간을 reset한다

B            : 입출력을 5,120 byte의 레코드로 블럭화한다

c            : ASCII 문자로 헤드 정보를 쓴다

d            : 필요에 따라 directory를 생성

m            : 존재하는 최종 화일 수정 시각을 보존

r             : 대화 문법으로 화일명을 변경

t             : 입력 화일명 목록을 출력하여 화일은 작성되지 않는다

u            : 무조건 복사

v             : 화일명 목록을 출력

 

crontab
 
지정한 화일을 입력으로 받아 user의 크론탭 화일을 관리 및 directory로 복사하는 명령어


Usage

$ crontab [file]

$ crontab [-u user] file

$ crontab [-u user] { -e | -l | -r }


Options

-l            : crontab 파일 목록을 보여준다.

-e           : 에디터를 사용하여 crontab 파일을 수정한다.

-d           : 사용자의 crontab 파일을 지운다.

-u user      : 특정 사용자의 crontab 파일을 다루도록 지정한다.

               이 명령을 사용하려면 슈퍼 유저로 로그인해야만 한다.

설명

crontab 파일 내의 빈 핵과 # 문자로 시작되는 행은 무시된다.


파일의 각 행은 M H D m d cmd 형태로 되어 있다. 필드의 에스테리스크(*)표시는 어떠한 값이든 일치하는 조건으로 가정한다는 의미이다.

 

csh
 
 유닉스 C 셸이다. 하지만 리눅스에서는 tcsh에 링크되어 있는 파일에 불과하다.

 

cu
 
다른 system을 호출

 

Usage

$ cu [options] [system or phone-number]


Options

-h           : 반이중 모드만을 지원하는 시스템을 호출

-t            : 자동응답 모드에 설정된 ASCII단말기 호출

-d           : message 출력

-o           : 홀수 parity 생성을 지시

-n           : 전화번호 입력을 요구

-l            : line 통일 회선 장치명을 지정

-s           : speed 전송 속도(1200,2400,4800,7200,9600 bps)를 지정

 

cut
 
파일에서 필드를 뽑아낸다. 필드는 필드 구분자나 문자 위치로 지정된다.


Usage

$ cut -c문자위치 [file1 file2]

$ cut -f필드 -d필드구분자 [-s] [file1 file2 ...]

 

Options

-c문자위치   : 잘라낼 곳의 글자 위치를 지정한다. 콤마를 사용하거나 하이픈을 사용하여 범위를 정할 수도 있으며, 이런 표현들을 혼합하여 사용할 수도 있다.

-f필드       : 잘라낼 필드를 정한다. 지정하는 방법은 -c 옵션과 같다.

-d필드 구분자: 필드를 구분하는 문자를 지정한다. 디폴트는 탭 문자다.

-s           : 필드 구분자를 포함할 수 없다면 그 행은 하지 않는다.

 

date
 
 컴퓨터에 들어 있는 현재의 날짜와 시간 정보 표시 / 변경 (super user만 가능)

 

dc
 
 system을 이용한 탁상계산기

Usage

$ dc [file]


Options

file          : 읽어들일 화일 지정, 생략시 표준 입력으로 간주

 

dd
 
다양한 데이타 형식을 가진 화일을 복사, 변환

Usage

$ dd [option = value] ...


Options

bs=n         : 입출력 블럭의 크기를 n byte로 쓴다

cbs=n       : buffer 크기변환

conv=ascii  : EBCDIC 코드를 ASCII 코드로 변환

conv=ebcdic : ASCII 코드를 EBCDIC 코드로 변환

conv=lcase  : 알파벳을 소문자로 변환

conv=ibn    : 약간은 다르지만 ASCII 코드를 EBCDIC 코드로 변환

conv=noerror : 에러처리를 중지하지 않는다

conv=swab  : 두개의 byte를 서로 교환

conv=sync  : 각 입력 레코드를 ibs로 패딩

conv=ucase : 알파벳을 대문자로 변환

...,...         : 컴마로 구분된 여러개의 변환

count=n     : 입력코드를 n개만 복사

files=n       : 복사 시작전에 n개의 화일을 건너뛴다

seek=n      : 복사 시작전에 출력화일의 처음으로 n 레코드를 탐색

ibs=n         : 입력블럭크기를 n byte로 한다 (디폴트는 512)

if=file         : 입력화일명(디폴트는 표준입력)

obs=n       : 출력블럭크기를 n byte로 한다 (디폴트는 512)

of=file       : 출력화일명(디폴트는 표준출력)

skip=n       : 복사전에 입력레코드를 건너뛴다


df
 
이용 가능한 디스크 블록 수 출력

Usage

$ df [-f] [-t] [file sysytem]


Options

-f           : 디스크내의 자유리스트내의 정확한 블럭수를 출력

-t            : 사용가능 블럭 및 i-node와 할당된 전체블럭과 i-node가 출력

-m          : 파일 크기를 Mbyte단위로 출력

 

diff
 
 두 개의 파일 중에서 다른 라인을 출력


Usage

$ diff [option] file1 file2


Options

-b           : 비교할 때 라인의 마지막에 있는 탭(tab)과 공백을 무시

-e           : file1으로부터 file2를 재생성. ed 편집을 위한 a,c 그리고 d 명령어의 script를 만든다

-f           : 비슷한 script를 만들지만 역순이기 때문에 ed 편집에서는 사용할 수 없다

-h           : 정밀도가 없어도 빠른 속도를 처리하고자 할 때 사용하며 -e와 -f와 함께 사용할수 없다

-i            : 대소문자를 구분하지 않는다.

-w           : 탭(tab) 문자를 포함한 모든 공백 문자를 무시하고 비교 작업을 수행한다.

 

diff3
 
 
 


세 개의 파일 중에서 다른 라인을 출력

 


Usage

$ diff3 [option] file1 file2 file3

 


Options

-e           : file1에 file2와 file3의 차이 비교를 기록

-x           : file1에 3개 화일 모두의 차이 비교를 기록

-3           : file1에 file3과 차이 비교되는 부분만 기록

 

 

 

dmesg
 
 
 


부팅 메시지를 보여주는 명령어

 

 

 

du
 
 
 


하드 사용량 체크(chkdsk)

Usage

$ du [option][dirctory, file]

 


Options

-s           : 총 합계만을 따진다. 하위 디렉토리의 숫자 등은 나오지 않는다.

-a           : 크기가 계산된 각 파일의 크기를 보인다.

-b           : 바이트 크기로 출력한다.

-x           : 현재 디렉토리에 마운트된 파일 시스템만 검사된다.

-L           : 심볼릭 링크 자신의 공간 대신 연결된 파일의 크기를 다룬다.

 


 

echo
 
 
 


외부 프로그램과 내부 쉘명령어 사이에 있으며 echo의 인수는 공백에 의해 구분되어지며 new line으로 종료하는 각 인수를 화면에 표준출력하는 명령어

 


Usage

$ echo [option] [string]

 


Options

-n           : 새로 개행하지 않고 출력하게 한다.

-e           : 문자열 중에서 백슬래쉬와 조합되는 특수 문자를 인식하게 한다.

                 그러한 특수 문자들은 다음과 같은 것들이 있다.

\a       밸소리                          \b     백스페이스

\f       용지바꿈(form feed)              \n     행바꿈

\r       0 칼럼으로(carriage return)         \f     탭(tab)

\v       수직 탭                         \\    백슬래쉬 문자

\nnn     8진법으로 표기되는 ASCII 문자     \c     출력 후 행바꿈 금지

 

 

 

ed
 
 
 


풀 스크린 에디터를 사용할 수 없는 열악한 환경의 터미널을 위한 라인 에디터

 


Usage

$ ed [-] [-s] [-p문자열] [file]

 


Options

-            : e, r, w, q, ! 명령에 의해 발생하는 메시지를 금지한다.

-s           : 검사 작업을 금지한다.

-p문자열     : 프로프트를 원하는 문자열로 바꾼다.

 

 

 

edquota
 
 
 


사용자의 하드디스크 용량 및 파일의 개수를 제한한다.

 


Usage

$ edquota [option] [ID]

 


Options

-n           : 쿼터 할당을 림트 서버에 할 수 있다.

-u           : 사용자를 정희한다. (기본값)

-p           : 사용자 그룹에 제한을 주기위한 옵션

-t            : 파일시스템의 soft time의 제한 값을 정한다. 디폴트 값은 /linux/quota.h를 따른다.

 


env
 
 
 


현재의 환경에 영향을 주지 않고 원하는 환경을 만들어 명령을 실행, 또는 현재의 환경 보고

 


Usage

$ env [-][-i ][-u 이름][name=value][command arg]

 


Options

-            : 뒤에 오는 이름=값 목록으로 환경을 제한한다.

-i            : 현재의 환경을 무시하고 빈 환경 상태로 시작한다.

-u 이름      : 현재의 환경에 그 이름의 변수가 있다면 제거한다.

-name=value : 명령 수행 전의 원래 환경을 지정

-command arg: 수행하고자 하는 명령어 지정

 

 

 

ex
 
 
 


ed 기능을 강화한 텍스트 편집기

 


Usage

$ ex [-] [-trRV] [+command] name ...

 


Options

-            : 대화형 사용자를 위해 feed-back을 억제

-t            : tag tag를 갖는 화일을 편집후 편집기를 그 화일의 위치에 지정

-r           : file file을 복구

R            : 읽기 허가만 된 모드로 한다

+ command : 지정한 명령어를 수행하고 편집

 

 

 

exit
 
 
 


현재의 프로세스를 종료하고 빠져나감

 

 

 

 


 

fdformat
 
 
 


플로피 디스켓을 포멧한다

 


Usage

$ fdformat [device]

 

 

 

fg
 
 
 


후면 작업을 전면 작업으로 전환

 


Usage

$ fg [%작업번호]

 

 

 

fgrep
 
 
 


문자열에 따라 파일 검색

 


Usage

$ fgrep [option] string [file]

 


Options

-b           : 각 행의 선두에 그 행이 발견된 블럭번호를 넣어줌.

-c           : 일치하는 패턴을 갖고 있는 행의 수 만을 출력함.

-l            : 일치하는 행이 있는 화일의 화일명만을 복귀개행으로 구별시켜 출력하는데, 화일내에 패턴이 몇 개나 포함되어 있어도 화일명은 한 개밖에 출력하지 않음.

-n           : 각 행의 선두에 화일내의 행번호를 넣음.(1 라인은 1임)

-i            : 비교시 소문자와 대문자의 차이를 무시

-v           : 일치하는 행을 제외한 모든행을 출력.

 

 

file
 
 
 


파일이 어떤 형태의 파일인지 알아낸다.

 


Usage

$ file [option1][option2] file

 


Options1

-c           : 매직 파일의 파생된 형태를 보여준다

-z           : 압축되어 있는 파일의 형태를 검사

-l            : 뒤따르는 심볼릭 링크를 야기 시킴

 


Options2

-f 파일명     : 검사한 파일에 대해 리포트를 만들 파일의 이름을 지정

-m 파일명    : 파일의 형태를 결정하는 데에 사용되는 매직 파일을 정함

 


find
 
 
 


원하는 특정 파일이나 디렉토리를 탐색하여 찾는다.

 


Usage

$ find path_list expression

 


Expressions

-name 파일명 : 찾고자 하는 파일의 이름을 정한다. 와일드 카드도 가능하다.

-perm 모드   : 파일권한(permission)이 일치되는 것을 찾는다. 원하는 권한은 ls로 볼 수있는 형태와 같이 지정한다.

-type ?      : 형태가 같은 파일을 찾는다. 물음표(?) 부분에 디렉토리는 d, 파이프는 p, 심볼릭 링크는 l, 소켓은 s, 블록 파일은 b, 일반 파일은 f 등의 기호를 사용한다.

-links ?      : 특정 개수의 링크를 가진 파일을 찾는다. 물음표 부분에 링크의 숫자를 표기한다.

-size ?       : 파일의 크기가 일치하는 것을 탐색한다. 파일 크기는 블록단위로 물음표 부분에 지정한다. 한 블록은 512바이트로 내정되어 있지만 블록 숫자 뒤에 단위로 k자를 붙이면 1키로바이트 크기의 블록 숫자로 간주된다.

-user 사용자 : 파일 사용자의 ID에 따라서 검색한다. 로그인 이름이나 번호 모두가 가능하다.

-atime ?     : 최근 며칠내에 엑세스한 파일을 검색한다. 날짜수는 ?에 명시한다.

-exec 명령   : 원하는 검색 조건에 맞는 파일을 찾으면 명시된 명령을 실행한다. 명령의 끝은 \;을 사용하여 끝낸다. find가 검색해낸 파일의 이름을 인수로 사용하고 싶다면 그 위치에 {}를 사용한다.

-newer 파일  : 어떤 파일보다 최근에 갱신된 모든 파일을 검색한다.

-cpio device : 현재의 화일은 cpio(1)의 문법(5120byte 레코드)으로 장치에 써넣는다

-ctime n     : 화일이 n 날짜내에 변경되면 참

-group gname: 화일에 gname에 포함되어 있으면 참

-mtime n    : 화일이 n 날짜 이내에 수정되면 참

-ok cmd     : 명령어 라인을 의문부호를 선두에 부과하여 화면에 출력하며 만약 사용자가 y를 칠 경우에만 실행 가능

 

 

 

finger
 
 
 


시스템 상의 사용자들에 대한 정보를 보여준다.

특정 사용자에 대한 정보를 알려면 finger username(또는 사용자가 다른 컴퓨터에 있으면 finger username@domain)을 입력한다.

 


Usage

$ finger [option] [user]

 


Options

-s           : 사용자의 로그온 이름, 실제이름, 터미널 이름, 로그온 시간 등등을 보인다.

-l            : -s 옵션 정보에 몇 가지를 추가하여, 여러 줄에 걸쳐서 보여준다.

-p           : -l 옵션 정보에서 .plan과 .project 파일을 보이지 않는다.

 

 

free
 
 
 


메모리의 사용상태와 남은 상태, 버퍼의 상태등을 보여줌

 


fsck
 
 
 


파일 시스템의 완전한 상태를 유지하고 있는가를 검사하고, 잘못된 것은 수정한다.

 


Usage

$ fsck [option] [file system]

 


Options

-f           : 빠른 속도로 블록과 크기 및 자유리스트를 점검

-n           : fsck 명령 수행중에 모든 질문에 대해 no라 응답한다.

-y           : fsck 명령 수행중에 모든 질문에 대해 yes라 응답한다.

 


-a           : 검사도중 발견된 에러를 자동적으로 복구한다.

-r           : 검사도중 에러가 발견되면 복구할 것인가를 물어온다. 이것은 하위 호환성을 위한 것으로서 사실상은 사용되지 않는다.

-s           : 병렬적인 방법이 아니라 순차적인 방법으로 검색한다.

-V           : 검색중 각종 정보를 자세하게 보여준다.

-N           : 실제로 검사 작업을 하지는 않도록 한다.

 

 


 


grep
 
 
 


파일 중에서 어떠한 패턴을 검색합니다.

 


Usage

$ grep [option] expression [file]

 


Options

-A           : [숫자] 라인에서 패턴과 매치되는 문자열을 찾아서 그 이상의 라인을 전부 보여줍니다.

-B           : [숫자] 라인에서 패턴과 매치되는 문장열을 찾아서 그 이하의 라인을 전부 보여줍니다.

-b           : 매치되는 라인과 그 크기(bite)를 출력합니다.

-c           : 매치되는 개수를 출력합니다.

-f            : 파일로부터 패턴을 입력받아 들입니다.

-n           : 매치되는 라인과 그 라인수를 출력합니다.

-v           : 매치되지 않는 라인을 출력합니다.

-w           : 주어진 단어와 완전히 매치되는 라인을 출력합니다.

-l            : 매치되는 내용이 있는 파일의 이름만을 표시한다.

-h           : 매치되는 내용을 찾은 파일의 이름을 표시하지 않는다.

-i            : 대소문자 구분을 하지 않는다.

-e expression : 표현이 하이픈 문자로 시작될 때 사용한다.

-f file         : 규칙적인 식(grep) 또는 리스트열(fgrep)이 화일로부터 취한다

-s           : 읽지못하는 화일이거나 존재하지 않는 화일에 대한 에러 메세지 출력을 억제

 


groupadd
 
 
 


그룹 이용자를 추가하는 명령어.

 

 

 

gpasswd
 
 
 


group의 사용자나 관리자를 추가, 또는 삭제할 때 쓴다.

root또는 관리자만이 group member를 추가, 삭제할 수 있다.

 


Usage

$ gpasswd [-r|-R] group

$ gpasswd [-a user] group

$ gpasswd [-d user] group

$ gpasswd [-A user,...] [-M user,...] group

 

 

 

gzip
 
 
 


파일 압축(확장자 .gz, .z 형태의 압축파일 생성)

 


Usage

$ gzip [파일명] : 압축시

$ gzip -d [파일명] : 해제시

 


설명

gzip은 tar파일을 압축하는데 사용하는 명령어로 1단계에서 9단계로 압축률을 조정할 수 있다. 6단계를 사용하면 적절한 압축률로 압축할 수 있고 압축하는데 시간을 줄일 수도 있다.

 

 


 


halt
 
 
 


신속하게 system을 정지시키는 명령어

 

 

 

hd
 
 
 


16진수로 파일을 덤퍼하는 명령어(od참조)

 


Usage

$ hd [-bcdox] [file] [[+[x]] offset [.] [b]]

 

 

 

head
 
 
 


파일의 처음 n개의 내용을 보고자 할때 사용하는 명령

 


help
 
 
 


system 명령어에 대한 설명과 메시지에 대한 정보를 On-line 으로 제공

 


Usage

$ help [args]

 

 

 

history
 
 
 


작업 내역을 보여줌

 

 

 

hostname
 
 
 


현재 설정되어 있는 호스트의 이름을 표시하거나 변경한다.

 


Usage

$ hostname [name of host]

 

 

 

 


id
 
 
 


시스템에 등록된 ID를 확인한다.

 


Usage

$ id [option]

 


Options

-g           : 그룹 ID만을 출력한다.

-G           : 추가 그룹들만을 출력한다.

-n           : ID 번호대신 이름으로 출력한다.

-r            : 실제 사용자나 그룹 ID를 출력한다. 다른 옵션과 함께 사용한다.

-u           : 사용자의 ID만을 출력한다.

 

 

 

ifconfig
 
 
 


네트워크 정보 표시

 


Usage

$ ifconfig [네트워크명]

 

 

 

ipcs
 
 
 


process 상호간의 통신에 대한 상태를 출력하는 명령어

 


Usage

$ ipcs [option]

 


Options

-c           : 사용자의 로그인 명과 그룹명을 출력

-o           : 사용 상황 상태에 대한 정보를 출력

-p           : 프로세서 번호에 대한 정보를 출력

-q           : 수행중인 메세지 큐(Queue)에 대한 정보를 출력

-t            : 시간에 대한 정보를 출력

 


ispell
 
 
 


영어 단어의 철자를 확인

 


Usage

$ ispell [option] [file(s)]

 


설명

파일 이름을 써주면 해당 파일의 단어를 검사하며, 파일 이름없이 실행시키면 표준 입력의 단어를 체크합니다. 해당하는 단어가 없을 때는 비슷한 단어들의 리스트를 보여줍니다.


install
 
 
 


파일을 갱신하고 이진 파일로써 인스톨하기 위해 makefile에서 종종 사용되는 유틸리티

 

 


 

 

 

jobs
 
 
 


현 터미널에서 수행된 작업들을 간략하게 나열해 준다.

 


Usage

$ jobs [-lnprs] [jobspec ...] or jobs -x command [args]

 


Options

-l            : 프로세서 번호를 추가해서 보여준다.

 

 

 

join
 
 
 


두 개의 정렬된 파일을 하나로 수평 병합한다.

 


Usage

$ jobs [option] [file1] [file2]

 


Options

-an          : 첫 번째나 두 번째 파일로부터 일치하지 않는 것도 처리, n은 1이나 2

-e 문자열    : 비어 있는 필드는 문자열로 대체

-j n m       : 파일 n의 m번째 필드를 두 파일에 병합

-o file       : 명시된 파일의 형태에 따라서 출력을 만듬

-t 문자       : 필드 구분 as자를 정한다. 기본적으로 공백, 탭, 개행 문자

-v file       : file1이나 file2의 짝이 연결되지 않는 행을 지정된 파일로 출력

 


joe
 
 
 


emacs에 기초한 텍스트 에디터

 

 


 

 


kill
 
 
 


프로세스를 강제 종료하는 명령어

 


Usage

$ kill [-signal number] process id

$ kill -l      : 시그널 종류를 나열한다. 시그널의 종류는 시그널 번호 순서대로 이름으로 나열한다.

 


Options

1 hang up                            2 인터럽터                      3 정지

4 정확하지 않는 명령                   5 trace trap                     6 IOT

7 EMT                         8 부도소수점 expression 발생      9 강제 종료

10 버스 에러                           11 세그먼트 위배         12 bad system 콜

13 읽는 사람없이 파이프에 써 넣음        14 경보 신호                     15 Software 종료

 

 

 

killall
 
 
 


system내에 활동중인 모든 프로세서를 강제로 종료하는 명령어

 

 

 

last
 
 
 


시스템에 마지막으로 접근한 사용자를 표시

 


Usage

$ last [option]

 


Options

-f            : 파일명을 참조하여 출력합니다.

-t            : tty로 로그인한 터미널을 추적합니다.

-v           : 로그인한 연도를 추가해서 출력합니다.

 

 

 

less
 
 
 


more와 유사하게 페이지 단위로 문서를 보여준다. 문서의 앞으로 이동하는 것이 가능

 


Usage

$ less [option] file

 


Options

-?           : less에서 사용할 수 있는 명령들에 대한 도움말을 제공한다. 이 옵션이 사용되면 다른 인수는 무시되고, 도움말 화면을 보여준다.

-a           : 마지막 라인이 화면에 출력되고 나서 탐색을 시작한다.

-c           : 필요할 때 전체 화면은 다시 갱신한다.

-C           : -c 옵션과 같지만 갱신할 때 화면 전체를 지우고 시작한다.

-e           : 두 번째로  파일의 끝에 도달하면 자동적으로 종료한다.

-E           : 파일의 끝에 도달하기만 하면 자동적으로 종료한다.

-i            : 대소문자를 구분하여 탐색한다.

-n           : 행번호를 추가한다.

-q           : 특정 에러가 발생하지 않으면 아무 소리도 내지 않고 조용히 동작한다.

-Q           : 결코 아무 소리도 내지 않는다.

-s           : 연속되는 공백 라인은 하나의 행으로 처리한다.

-x 숫자      : 수치를 지정해서 탭 간격을 조정한다. 기본값은 8이다.

 

 

 

link / unlink
 
 
 


file 및 directory 링크 / 링크해제  명령

 


Usage

$ (un)link file1 file2

 


ln
 
 
 


실제 file을 file name에 연결시키는 명령

 


Usage

$ ln [-s] file_name1 file_name2

$ ln file_name(s) directory

 


Options

-s           : 하드 링크 대신 심볼릭 링크를 만듬

 

 

 

locate
 
 
 


저장 위치를 찾아줌

 

 

 

login / logout
 
 
 


자신을 식별하고 시스템에 대한 액서스를 얻기 위해 사용하는 명령

 


Usage

$ logiin [option] ID

 


Options

-f           : 뒤의 사용자명으로 로그인

-g           : 뒤의 그룹사용자명으로 로그인

 

 

 

longname
 
 
 


현재 시스템에서 자신이 사용하는 로그온 이름을 보여줌

 

 

 

lp
 
 
 


특정 file / 정보를 프린터로 출력하는 명령어

 


Usage

$ lp [options] files

 


Options

-c           : 프린터가 끝나기전에 화일 변경이 가능하도록 프린트할 화일을 복사

-d dest      : 프린터 또는 프린터 클라스를 dest로 지정

-m          : 프린트 후 전자우편을 보낸다

-n number   : 프린트 할 매수를 지정

-s           : 메세지 출력을 억제

-w           : 프린트 후 사용자의 단말장치에 메세지를 보낸다

 


lpadmin
 
 
 


스풀 프린터 시스템 구축 명령어

 


Usage

$ lpadmin [options]

 


Options

-d dest      : 기존 dest를 신규 시스템의 생략시 수신자로 한다

 

 

 

lpstat
 
 
 


출력되는 라인 프린터의 상태에 대한 정보를 화면에 나타내는 명령어

 


Usage

$ lpstat [option]

 


Options

-a list         : 프린터나 클라스의 처리 상태 출력

-c list         : 클라스명과 멤버 출력 이때 list는 프린터명 또는 클라스명의 리스트

-d           : lp에 대한 system을 생략시 주소를 출력

-o list       : 출력 request의 상태 출력 이때는 프린터명,클라스명,request id 리스트

-p list       : 프린터 상태 출력 이때 리스트는 프린터명

-r           : 라인 프린터 scheduler 상태 출력

-t            : 프린터의 모든 상태 출력

 

 

 

ls
 
 
 


directory의 내용을 화면에 출력하는 명령어

 


Usage

$ ls [option] file..

 


Options

-a           : .file을 포함한 전 entry를 출력

-A           : -a option과 유사하지만 .또는 ..을 포함하는 화일은 출력 억제

-c           : 마지막 변경된 i-node의 시간을 출력

-C           : 멀티칼럼으로 출력하며 디폴트로는 CRT에 출력

-d           : directory명만 출력하며 내용은 출력하지 않는다

-D           : directory만 출력

-f           : 인수를 directory로 해석하며 각각의 슬롯에 있는 directory 및 file명을 출력

-F           : system에 있는 화일이 directory면 /를 실행가능한 화일이면 *를 붙인다

-g           : 옵션 -l과 같으나 소유자명이 출력되지 않는다

 


-i            : 첫 칼럼에 i-number를 출력

-l            : 화일 및 directory 상태 정보를 long 문법으로 출력

-m          : 스트림 문법의 출력

-n           : 소유자명과 그룹명 대신에 UID 번호와 GID 번호가 출력되는 것을 제하고는 옵션 -l과 같다

-g           : 비도형문자를 ?문자로 출력

-r           : 화일명이나 수정시간을 알파벳 또는 오래된 역순으로 출력

-R           : 발견되는 sub-directory의 내용을 순환적으로 출력

-s           : 간접블럭을 내포하는 블럭수를 출력

-t            : 화일명 대신에 수정된 시간으로 분류

-u           : -t 또는 -l option으로 분류하는 중에서 최종접근 시간을 사용

 

 


 

mail
 
 
 


사용자들간에 전자우편을 주고 받는 명령어

 


Usage

$ mail ID@domain_address

$ mail [-f file] [-par]

 


Options

-f file         : 지정한 화일을 전자우편 화일로 한다

-p           : 조치를 위한 prompt를 나타내지 읺고 전자우편을 출력

-g           : 인터럽터를 건후에 종료

-r            : 메세지를 FiFo(선입선출)방식으로 한다

 

 

 

mailx
 
 
 


대화형 메시지 처리를 하는 명령어

 


Usage

$ mailx [option] [name ...]

 


Options

-e           : 전자우편이 있는가 없는가를 조사

-f[file name] : mailbox 대신에 화일명에서 메세지를 읽는다

-F           : 메세지를 최종 수신자명이 붙어 있는 화일에 기록

-S           : subject 종속 헤드필드를 subject로 한다

-U           : user 사용자의 mailbox를 읽어낸다

 


man
 
 
 


원하는 명령어의 사용방법을 검색하여 보여주는 명령어

 


Usage

$ mailx [option] [chapter] title ...

 


Options

-k           : 인수로 주어진 단어를 키워드로 사용하여, 해당 키워드가 발견되는 모든 매뉴얼의 내용을 검색

 

 

 

mcd
 
 
 


MSDOS 시스템으로 현재 사용하는 디렉토리 장소로 이동

 


Usage

$ mcd [dos directory]

 

 

 

mcopy
 
 
 


MSDOS file system으로 or DOS file system의 file을 복사

 


Usage

$ mcopy [option] file_name1 file_name2

 


Options

-t            : 텍스트 파일 복사시 CR/LF 문자를 \n 하나로 바꾼다.

-n           : 파일을 덮어쓰게 되는 경우에도 경고하지 않는다.

-v           : 자세히 안내문을 보여준다.

-m          : 파일 갱신 시간을 보존한다.

 

 

 

mdel
 
 
 


MSDOS file system에서 file을 제거

 


Usage

$ mdel [-v] file

 


Options

-v           : 진행되는 상황을 자세히 보여줌

 

 

 

mdir
 
 
 


MSDOS directory의 목록을 보여준다.

 


Usage

$ mdir [-w] file

 


Options

-w           : 파일 크기나 생성 날짜는 제외하고 넓은 형식으로 보여줌

 

 

 

mesg
 
 
 


teminal에 들어오는 메시지를 허가 또는 거부하는 명령어

 


Usage

$ mesg [n] [y]

 


Options

n            : 메세지 거부

y            : 메세지 허가

 

 

 

newgrp
 
 
 


현재 그룹 ID를 변경한다.

 

 

 

 


mfs
 
 
 


모든 file system을 mount 하는 명령어

 

 

 

mkdir
 
 
 


directory 생성

 


Usage

$ mkdir [-m mode] [-p] directory

 


Options

-m          : 디렉토리를 만들 때 같이 사용하여 사용자 권한을 줄수 있다.

-p           : 만들 디렉토리의 상위 elfprxhflRK지 한꺼번에 만든다.

 

 

 

mknod
 
 
 


특수화일을 위해 directory와 이에 i-node를 만드는 명령어

 


Usage

$ mknod file [b] [c] major minor

 


Options

b            : 특수화일이 블럭형

c            : 특수화일이 문자형

major         : 주장치 번호

minor         : 부장치 번호

 

 

 

mkswap
 
 
 


swap 공간 생성

 

 

 

more
 
 
 


한 화면씩 출력을 보여주는 유틸리티

 


Usage

$ more [ -ncdflspu ][ +줄번호 ][ 파일이름(들) ]

 


Options

-n           : 여기서 n은 숫자를 의미하여, 숫자는 출력 윈도우의 행수를 지정한다.

-c           : 위에서부터 한 행씩 지운 후 한 행씩 출력한다. 보통은 화면 전체를 지운 후 각 행을 출력하기 시작한다. 특정한 터미널을 위해 사용한다.

-d           : 스페이스나 q 키를 누르라는 프롬프트를 출력한다.

-f           : 화면의 행이 아닌 논리적인 행 수를 계산한다. 보통은 긴 칼럼의 행은 화면에서 행바꿈을 하여 새로운 행으로 계산된다. -f 옵션을 사용하면 이러한 행은 계산하지 않는다.

-s           : 여러 개의 빈 공백행은 하나로 취급한다.

-p           : 스크롤하지 않는다. 대신 화면을 지우고 출력한다.

-u           : 밑줄 차기를 금지한다.

 


설명

more 명령은 몇 가지 명령을 인식할 수 있다. 스페이스 바를 누르는 것을 포함해서 다음과 같은 조작을 하는 것이 가능하다.

    : 한 줄만 스크롤된다.

■ D          : 반 페이지만 뒤로 이동한다.

    : 한 페이지만 뒤로 이동한다.

■ B          : 한 페이지 앞으로 이동한다.

■ H          : 도움말을 제공한다.

■ V          : vi 에디터를 부른다. 에디터를 종료하면 원 위치로 돌아간다.

■ Q          : more 를 종료한다.

 


mount
 
 
 


다른 파티션의 디스크나 물리적으로 다른 rldr 장치를 파일 시스템으로 연결

 


Usage

$ mount [option] 장치명 디렉토리

 


Options

-v           : 마운트 작업을 수행하면서 자세한 정보를 출력한다.

-w           : 마운트되는 파일 시스템을 읽기와 쓰기가 가능하도록 한다.

-r           : 마운트되는 파일 시스템이 읽기 동작만 가능하도록 한다.

-n           : 마운트 정보가 기록되는 /etc/rntab 파일에 정보를 기록하지 않는다.

-a           : /etc/fstab 파일에 있는 모든 파일 시스템을 마운트하도록 한다.

-t 형태       : 마운트되는 파일 시스템의 형태를 지정한다.

 

 

 

mountall
 
 
 


여러개의 file system을 mount하는 명령어

 


Usage

$ mountall [-] file system

$ mountall [-k]

 


Options

-            : 입력되는 데이타가 표준입력

-k           : 화일을 open시키고 프로세서를 찾은 다음 SIGKILL 시그널을 보낸다

 


mv
 
 
 


파일의 위치를 이동하거나 파일의 이름을 바꾸어 준다.

 


Usage

$ mv [ -fi ] 파일명1 파일명2

$ mv [ -fi ] 파일명(들) 디렉토리명

 


Options

-f           : 같은 이름의 파일이 존재하고 쓰기 권한이 금지되어 있더라도 물어 보지 않고 덮어쓰기를 해버린다. 이런 경우 이 옵션을 사용하지 않으면 사용자에게 다시 확인을 할 것이다.

-i            : 파일을 덮어쓰기 전에 사용자에게 확인한다.

 

 

 

 


mvdir
 
 
 


file system 내에서 directory 변경을 하는 명령어

 


Usage

$ mvdir [oldname] [newname]

 

 


 

nice
 
 
 


프로세스의 순위를 변경하는 명령어

 


Usage

$ nice command -n XX

 


설명

nice값은 -20에서 19까지 있는데, 값이 작을수록 우선 순위가 높습니다. -n옵션을 쓰기 않으면 디폴트로 10이 쓰입니다. 일반 유저는 nice값을 증가시킬 수밖에 없지만 root는 nice값을 감소시켜 우선 순위를 높을 수도 있습니다.               

 


nslookup
 
 
 


네임 서버를 조회한다.

 


Usage

$ nslookup [option] [host or IP Address] [name server]

 


Options

-q=A         : IP Address

-q=MX       : 메일서버 확인

-q=NS       : 네임서버 확인

-q=CNAME   : 호스트의 앨리어스

-q=PTR      : 호스트 또는 포인터명

-q=SOA      : Statt of Authority 정보

 

 

 

od
 
 
 


8, 10, 16진 또는 파일의 ASCII 덤프를 만들기 위한 명령어

 


Usage

$ od [option] file

 


Options

-b           : 바이트를 8진수로 출력

-c           : 바이트를 아스키 문자로 출력

-x           : 바이트를 16진수 워드 단위로 출력

 

 

 


 

passwd
 
 
 


자신의 패스워드를 관리하는 명령어

 


Usage

$ passwd [user]

 


설명

암호화 되어 /etc/passwd 파일에 놓여집니다.

암호는 최소한 6자 이상이어야 합니다(8자 이상 권장).

암호는 구두점 기호와 숫자뿐만 아니라 대소문자를 모두 포함해도 됩니다.

 

 

 

paste
 
 
 


하나 혹은 그 이상의 파일로부터 칼럼 형태의 출력을 만든다. cut과 함께 사용

 


Usage

$ paste [-s] [-d 구분문자] file_name(s)

 


Options

-s           : 각 file을 순회하면서 paste를 수행한다.

-d 구분문자  : 어떠한 문자로 칼럼을 구분하는지 지정. 기본값은 탭 문자

 


pico
 
 
 


UNIX용 에디터

 

 

 

pine
 
 
 


메일을 주고 받을 수 있는 명령

 


  PINE 4.10   MAIN MENU                            Folder: INBOX  19 Messages


           ?     HELP               -  Get help using Pine

           C     COMPOSE MESSAGE  -  Compose and send a message

           I     MESSAGE INDEX     -  View messages in current folder

           L     FOLDER LIST         -  Select a folder to view

           A     ADDRESS BOOK       -  Update address book

           S     SETUP               -  Configure Pine Options

           Q     QUIT                 -  Leave the Pine program

     Copyright 1989-1999.  PINE is a trademark of the University of Washington.

                    [Folder "INBOX" opened with 19 messages]

? Help                     P PrevCmd                 R RelNotes

----------------

O OTHER CMDS > [ListFldrs] N NextCmd                 K KBLock
 

 

 


ping
 
 
 


자신의 네트워크나 다른 네트워크가 통신이 잘되고 있는지 점검함

 


Usage

$ ping hostname

 

 

ps
 
 
 


프로세서들의 상태를 점검하는 명령어

 


Usage

$ ps [options]

 


Options

-l            : 자세한 형태의 정보를 출력한다.

-u           : 각 프로세서의 사용자 이름과 시작 시간을 보여준다.

-j            : 작업 중심 형태로 출력한다.

-s           : 시그널 중심 형태로 출력한다.

-v           : 가상 메모리 중심 형태로 출력한다.

-m          : 메모리 정보를 출력한다.

-a           : 다른 사용자들의 프로세서도 보여준다.

 


-x           : 로그인 상태에 있는 동안 아직 완료되지 않은 프로세서들을 보여준다. 유닉스 시스템은 사용자가 로그아웃하고 난 후에도 임의의 프로세서가 계속 동작하게 할 수 있다. 그러면 그 프로세서는 자신을 실행시킨 셸이 없이도 계속 자신의 일을 수행한다. 이러한 프로세서는 일반적인 ps 명령으로 확인할 수 없다. 이때 -x 옵션을 사용하면 자신의 터미널이 없는 프로세서들을 확인할 수 있다.

-S           : 차일드(child) CPU 시간과 메모리 페이지 결함(fault) 정보를 추가 한다.

-c           : 커널 task_structure로 부터 명령 이름을 보여준다.

-e           : 환경을 보여준다.

-w           : 긴(wide) 형태로 출력한다. 한 행 안에 출력이 잘리지 않는다.

-h           : 헤더를 출력하지 않는다.

-r           : 현재 실행중인 프로세서를 보여준다.

-n           : USER 와 WCHAN 을 위해 수치 출력을 지원한다.

 


설명

기본적으로 ps는 현재 명령이 내려지는 셸에서 만들어진 프로세서들의 목록만을 보여준다. ps는 자신이 실행되는 당시, 현재의 셸에 의해서 수행된 프로세서들을 검사하고 보고한다는 점을 생각하자. 그러면 ps의 출력결과 리스트에 ps 자신이 있는 이유를 쉽게 이해할 수 있을 것이다. 각 필드의 의미는 다음과 같다.

 


∙ COMMAND   : 명령어의 이름

∙ PID         : 프로세서 ID, 각 프로세서를 구분하기 위한 고유의 ID

∙ RSS         : 프로세서에 의해 사용되는 실제 메모리의 용량(K byte 단위)

∙ USER       : 프로세서를 실행시킨 소유자의 계정을 보여준다.

∙ SZ         : 프로세서의 자료와 스텍 크기의 (K byte 단위)

∙ TIME       : 현재까지 사용된 CPU의 시간(분,초)

∙ TT         : 프로세서의 제어 터미널(t3=/dev/tty3)

∙ %CPU      : 마지막 분동안 프로세서가 사용한 CPU시간의 백분율

∙ START      : 프로세서가 시작된 시간

∙ STAT       : 프로세서의 상태

 


이중 STAT 필드는 몇 가지의 부호를 사용해서 프로세서의 상태를 표시하고 있다. 그것들을 정리해 보면 다음과 같다.

 


∙ P          : 수행 가능/수행중

∙ T          : 일시 정지

∙ D          : 디스크 입출력 대기 같은 인터럽트할 수 없는 대기상태

∙ S          : 20초 미만의 짧게 잠듦(sleep)

∙ I           : 20초 이상의 길게 잠듦

∙ Z          : 좀비(zombi) 프로세서

 


좀비(zomb) 상태라는 것은 프로세서가 사라질 때 시그널 처리의 문제로 완전히 소멸되지 못한 상태를 말한다.

 

 

 

pstree
 
 
 


프로세서의 트리구조를 출력한다.

 

 

 

pwd
 
 
 


현재 작업하는 디렉토리를 알기 위해서 pwd 명령을 사용한다.

print working directory, 현재 작업 Directory를 출력한다.

 


 

quota
 
 
 


계정에 할당된 사용량을 확인한다.

 


Usage

$ quota [-vq] [[-ug] | -u[ user] | -g[ group]]

 

 

 

quit
 
 
 


대화식 모드에서 떠남

 

 

 


 

reboot
 
 
 


system을 재부팅

 


Usage

$ reboot [-q]

 


Options

-q           : 현재의 프로세서들을 종료시키지 않고, 부팅 동작만을 수행한다. 이 옵션을 사용하면 더 빠르게 리부팅할 수 있다. 다시 부팅한 기록은 로그 파일인 /var/adm/wtmp에 기록된다.

 

 

 

rcp
 
 
 


컴퓨터 사이에서 file을 복사할 때 사용된다.

 


Usage

$ rcp [option] file_name1 file_name2

$ rcp [option] file(s) directory

 


Options

-q           : 현재의 프로세서들을 종료시키지 않고, 부팅 동작만을 수행한다. 이 옵션을 사용하면 더 빠르게 리부팅할 수 있다. 다시 부팅한 기록은 로그 파일인 /var/adm/wtmp에 기록된다.

-r            : 하위 디렉토리까지 재귀적으로 모두 복사한다.

 


-p           : 파일의 시간과 모드를 보존한다.

-k           : kerberos ticktets을 요구한다.

-x           : 복사되는 모든 데이터에 암호화 과정을 거친다.

 

 

 

rm
 
 
 


file을 지우는 명령

 


Usage

$ rm [option] file_name

 


Options

-f           : 보통 지울 수 있는 권한이 없으면 안되지만, 이 옵션을 사용하면 성가신 작업을 하지 않고서도 강제로 파일을 지울 수 있다.

-i            : 파일을 지울 것인가 다시 물어본다. 지우기를 원한다면 y를 누른다.

-r           : 서브 디렉토리의 파일도 모두 재귀적으로 지운다.

-v           : 파일을 지우기 전에 파일의 이름을 나타내준다.

 

 

 

rmdir
 
 
 


원하는 directory를 제거한다.

 


Usage

$ rmdir [-p] directory

 


Options

-p           : mkdir의 -p 옵션의 반대 동작으로 하위 디렉토리와 그 상위 디렉토리 모두를 제거할 수 있다. 이때 모든 디렉토리는 비워져 있어야 한다. 수행 후 결과가 어떻게 되었는지를 보여준다.

 

 

 

route
 
 
 


현재 라우터에 상태 확인 및 라우터 정보를 수정할 수 있다.

 


Usage

$ route add -net network address netmask device

 


설명

route를 이용해서 라우터의 정보를 변경 또는 추가할 수 있다. 특히 가상 IP 설정을 할 수 있다. 즉, 한 대의 서버에 여러개의 IP를 사용할 수 있다.

 

 

 

 


rpm
 
 
 


레드헷 패키지 관리자

 


Usage

$ route add -net network address netmask device

 


설명

rpm명령어는 바이너리 소프트웨어를 설치해주는 역할을 하므로써 일반사용자에게 설치의 편리성을 제공해주는 편리한 명령어이다. 설치뿐만 아니라 소프트웨어의 삭제도 간단한 명령어로 간단하게 해결해 주기 떄문에 설치된 소프트웨어의 파일을 일일이 찾아 삭제하는 수고를 덜어준다.

 

 

 


 

sh
 
 
 


원래의 nunix 명령인 본 셀을 불러내는 명령어

 

 

 

shutdown
 
 
 


시스템을 종료할 때 일반적으로 사용하는 명령어

 


Usage

$ shutdown [ -thnrfck ] 시간 [ 메시지 ]

$ shutdown now

 


Options

-t n         : t 옵션 뒤에 n초를 명시해서, 경고 메시지를 보낸 후 n초 후에 kill 시그널을 보낸다.

-h           : shutdown시 halt를 실행하게 한다.

-n           : 디스크 동기화 동작의 수행을 금지한다. 이런 옵션은 보통 사용할 일이 없을 것이다.

-r            : 시스템 종료를 완료하고 나서 다시 부팅 과정을 수행한다.

-f            : 빠른 리부팅을 한다. 리부팅시 파일 시스템 검사를 하지 않는다.

-c           : 이미 예약되어 있는 shutdown을 취소한다. 이 옵션을 준다면 시간 인수는 줄 수 없다. 하지만 메시지는 사용자들에게 줄 수 있다.

-k           : 모든 동작을 제대로 수행하지만 시스템을 종료할 시간이 되면 아무 것도 하지 않는다. 보는 사람으로 하여금 ‘절로 누구 놀리나?’하는 말이 나오게 한다. k는 ‘just kidding'의 의미라고 한다.

 

 

 

 


sleep
 
 
 


이름 그래로 잠자는 일 외에는 하는 일이 없다.

 


Usage

$ sleep 시간

 


설명

시간은 초 단위의 정수 숫자이다. 전면(foreground)에서 수행된다면 사용자의 터미널은 정해진 시간만큼 잠을 잘 것이다. 물론 정해진 시간에 즉각 일어나니 안심해라. 원한다면 ^C로 흔들어 깨울 수도 있다. sleep을 사용하는 가장 좋은 예는 3장에서 본 것과 같이 다중 작업을 시행할 때이다.

 


다음과 같은 확인자를 사용한다면 다른 시간 단위를 사용할 수 있다.

 


S    초               m     분

h     시간             d      날짜

 

 

 

sort
 
 
 


파일 내의 단어 순서를 행 단위로 정렬하는 명령어

 


Usage

$ sort [option] file_name(s)

 


Options

-c           : 파일이 정렬되었는지 검사한다. 그렇다면 아무런 출력도 하지 않는다.

-m          : 특정한 파일을 병합한다. 파일은 이미 정렬되었다고 가정한다.

-u           : 고유한 행만이 출력된다.

-o 파일명    : 출력 파일 이름을 지정한다. 이름은 입력 파일 이름과 같을 수 있다.

-d           : 사전(dictionary)과 같은 순서대로 정렬한다. 단어 정렬 순서에는 문자, 숫자, 공백 문자만이 사용된다.

-f           : 대문자와 소문자를 구별하지 않는다.

-i            : 정렬에 사용되는 문자 중 프린트될 수 없는 문자는 사용하지 않는다.

-M           : 단어를 정렬할 때 달을 의미하는 문자를 취급한다. FEB는 JAN보다 뒤에 정렬된다.

-n           : 숫자를 같은 문자가 아닌 정말로 숫자로 취급해서 수의 크기대로 정렬한다.

-r           : 역순으로 정렬한다.

-t 문자       : 단어 등 필드를 구분하는 문자를 지정한다. 탭(tab)이나 공백 문자 이외의 문자를 구분 문자로 취급하도록 한다.

-b           : 단어의 뒤에 오는 공백 문자는 정렬 키(key) 값으로 무시하도록 한다.

 

 

 

split
 
 
 


텍스트 file을 작은 조각으로 나눈다. 너무 커서 다루기 불편한 텍스트 문서를 나눌 때 사용

 


Usage

$ split -행 수 file_name [tag_name]

 


Options

-행 수       : 몇 개의 행 단위로 조각을 나누는지 정한다.

 

 

 

su
 
 
 


다른 사용자 계정으로 서브 셸을 생성한다. 잠시만 다른 사용자 계정으로 작업할 필요가 있을 때 사용한다.

 


Usage

$ su [-] [userID] [인수]

 


Options

-            : 하이픈 (-)을 사용하면 새로운 셸로 로그인할 때 자신의 로그인 과정을 수행한다. 옵션이 주어지지 않으면 새로운 셸은 단지 셸 역할을 수행할 뿐이다.

 


설명

아무런 인수없이 su를 사용하면, 이것은 root 계정으로 로그인하기를 원하는 것으로 간주된다. 그래서 많은 사람들이 su가 ‘super user'를 의미하는 말로 생각하지만, 사실은 ’substitute user'를 의미하는 말이다. 물론 수퍼 유저의 패스워드를 알고 있어야만 한다.

 

 

 

swapon
 
 
 


스왑 공간 사용하기

 

 

 

sync
 
 
 


현재 시스템 디스크의 IO 버퍼에 있는 디스크 이미지를 하드 디스크로 기록한다.

 


Usage

$ sync

 


설명

시스템을 다운시키기 전에 버퍼에 있는 이미지를 반드시 디스크로 기록해야 한다. 그렇지 않으면 디스크는 기록된 정보의 이미지와 일치하지 않는 이미지를 가지게 될지도 모른다. 사실, 이것을 사용할 경우는 극히 드물다. 왜냐하면 shutdown등의 동작을 수행하면 그들이 자동적으로 sync를 호출하기 때문이다.

 

 

 

 

 

 

tail
 
 
 


문서의 끝 부분을 화면에 출력한다.

 


Usage

$ tail [-행수] file_name(s)

 


Options

-행 수       : 출력될 행수를 지정한다.

 

 

 

tar
 
 
 


file들을 묶는 명령어

 


Usage

$ su [-] [userID] [인수]

 


Options

주요 동작 모드 :

-t, --list                    : 아카이브의 내용물을 출력합니다

-x, --extract, --get         : 아카이브에서 파일을 추출합니다

-c, --create                 : 새로운 아카이브를 만듭니다

-d, --diff, --compare      : 아카이브와 파일 시스템간의 차이점을 비교합니다

-r, --append               : 아카이브 끝에 파일을 추가합니다

-u, --update                : 아카이브 안의 것보다 새로운 파일만 추가합니다

-A, --catenate              : 아카이브에 tar 파일을 추가합니다

     --concatenate          : -A와 같음

     --delete                 : 아카이브로부터 제거합니다 (자기 테이프에선 안됨!)


동작 변경자:

-W, --verify                 : 아카이브를 기록한 다음 검증하도록 합니다

     --remove-files          : 아카이브에 파일을 추가한 다음 지웁니다

-k, --keep-old-files         : 추출할 때 이미 존재하는 파일을 덮어쓰지 않습니다

-U, --unlink-first            : 추출하기에 앞서 대상 파일을 지웁니다

     --recursive-unlink       : 디렉토리를 추출하기에 앞서 그 체계를 비웁니다

-S, --sparse                 : 스파스 파일을 효율적으로 처리합니다

-O, --to-stdout             : 표준 출력으로 파일을 추출합니다

-G, --incremental           : 오래된 GNU 형식의 점진적 백업 파일을 처리합니다

-g, --listed-incremental     : 새로운 GNU 형식의 점진적 백업 파일을 처리합니다

     --ignore-failed-read    : 읽을 수 없는 파일에 대해 영 아닌 값으로 종료하지 않습니다

 


장치 선택과 전환:

-f, --file=ARCHIVE          : 아카이브 파일 또는 ARCHIVE 장치를 사용합니다

    --force-local            : 이름에 콜론이 있는 아카이브 파일도 지역 파일로 인식합니다

    --rsh-command=COMMAND: rsh 대신 원격 COMMAND를 사용합니다

-[0-7][lmh]                 : 드라이브와 기록 밀도를 지정합니다

-M, --multi-volume         : 다중 볼륨 아카이브를 생성/출력/추출합니다

-L, --tape-length=NUM     : NUM x 1024 바이트를 쓴 뒤에 테이프를 바꿉니다

-F, --info-script=FILE       : 각 테이프의 끝에서 스크립트를 실행합니다 (-M을 포함함)

     --new-volume-script=FILE: -F FILE과 같음

     --volno-file=FILE         : FILE 안에 있는 볼륨 번호를 사용/갱신합니다

 


장치 블럭 설정:

-b, --blocking-factor=BLOCK: 레코드당 BLOCK x 512 바이트

     --record-size=SIZE      : 레코드당 SIZE 바이트, 512의 배수

-i, --ignore-zeros          : 아카이브에서 영으로 된 블럭을 무시합니다 (EOF를 의미함)

-B, --read-full-records     : 읽은 것을 재블럭화합니다 (4.2BSD 파이프용으로)

 


정보 출력에 관한 옵션:

     --help                  : 이 도움말을 인쇄하고 끝냅니다

     --version               : tar 프로그램의 버전 번호를 인쇄하고 끝냅니다

-v, --verbose               : 처리되는 파일을 순서대로 출력합니다

     --checkpoint            : 아카이브를 읽을 동안 디렉토리 이름을 인쇄합니다

     --totals                 : 아카이브를 만들 동안 쓰여진 총 바이트 수를 인쇄합니다

-R, --block-number         : 각 메시지마다 아카이브내의 블럭 번호를 표시합니다

-w, --interactive            : 모든 행동에 대해 확인을 요구합니다

     --confirmation          : -w와 같음

-s, --same-order           : sort names to extract to match archive

     --preserve-order         : same as -s

     --preserve              : same as both -p and -s

-z, --gzip, --ungzip         : filter the archive through gzip

-Z, --compress, --uncompress: filter the archive through compress

     --use-compress-program=PROG: filter through PROG (must accept -d)

 

 

 

tcsh
 
 
 


c 셸 명령 번역기. c 셸의 확장판

 


Usage

$ tcsh [option] file

 


Options

-T           : tenex라고 하는 특수한 기능을 수행하도록 한다.

-V           : -v 옵션과 같지만 초기화 스크립트의 수행에도 영향을 미친다.

-X           : -x 옵션과 같지만 초기화 스크립트의 수행에도 영향을 미친다.

나머지 옵션들은 bash셸과 같다.

 

 

 

tee
 
 
 


파이프 연결 출력을 양방향으로 나눈다.

 


Usage

$ tee [option] file_name(s)

 


Options

-i            : 인터럽트를 무시하도록 한다.

-a           : 지정된 파일들로 출력이 덮어쓰지 않고, 뒤에 추가되도록 한다.

 

 

 

 


test
 
 
 


file의 각종 상태를 검사하여 결과를 알려준다. 셀 스크립트 상에서 if 문이나 while 문등과 함께 사용되는게 보통이다.

 


Usage

$ test [expression]

 


Expressions

-r 파일명    : 파일이 읽기 권한이 있으면 참

-w 파일명    : 파일이 쓰기 권한이 있으면 참

-x 파일명    : 파일이 실행하기 권한이 있으면 참

-f 파일명    : 파일이 일반(regular) 파일이면 참

-d 파일명    : 파일이 디렉토리이면 참

-b 파일명    : 파일이 존재하고 블록 장치 파일이면 참

-c 파일명    : 파일이 문자 전용 파일(character special file)이면 참

-u 파일명    : 파일이 set-user-ID 플래그가 세트되어 있으면 참

-g 파일명    : 파일이 set-group-ID 플래그가 세트되어 있으면 참

-k 파일명    : 파일이 sticky 비트가 세트되어 있으면 참

-s 파일명    : 파일의 크기가 0보다 크면 참

-t 파일 디스크립터 : 파일 디스크립터에 해당하는 파일이 열려 있고, 터미널 장치로부터 사용되고 있으면 참, 기본 디스크립터 값은 1이다.

-z 문자열    : 문자열의 길이가 0이면 참

-n 문자열    : 문자열의 길이가 t 이상이면 참

-문자열 1 = 문자열2 : 문자열1과 문자열2가 같으면 참

-문자열 1 != 문자열2 : 문자열1과 문자열2가 다르면 참

-문자열      : 문자열이 널(null)이 아니면 참, 널 문자열이면 거짓

-정수1-eq정수2      : 두 개의 정수1과 정수2가 같으면 참

-정수1-ne정수2      : 두 정수가 다르면 참

-정수1-gt정수2       : 정수1이 정수2 보다 크면 참

-정수1-ge정수2      : 정수1이 정수2 보다 크거나 같으면 참

 


이외에도 -lt(작으면) -le(작거나 같으면), !(논리부정), -a(AND), -o(OR) 등과 같은 표현을 사용할 수 있으며, 괄호를 사용할 수도 있다.

 

 

 

time
 
 
 


프로그램이 수행되는 시간을 측정한다.

 


설명

time의 인수로 측정하고자 하는 명령을 준다. time은 세 가지 다른 형태의 시간 측정 결과를 보고한다. 실제로 얼마만큼의 시간이 걸렸는가 하는 real 커널이 사용한 시간을 제외하고 CPU에서 소비된 시간을 나타내는 user그리고 실제로 얼마만큼의 커널 시간을 할애했는가 하는 sys시간이 있다. sys+user 시간이 실제로 작업에 할애된 시간이며, real 값에서 sys+user 값을 뺀 결과값은 다른 프로세서 처리에 할당된 시간이다.

 

 

 

top
 
 
 


프로세서의 상태를 실시간으로 확인한다.

 


설명

top명령어는 현재 시스템의 메모리의 상태를 실시간으로 점검할 수 있는 장점이 있다. 현재 사용중인 프로세서와 사용중인 메모리 및 스왑의 양이 출력된다. 시스템을 주의 관찰해야 되는 경우에 사용하면 상당히 도움이 된다.

 

 

touch
 
 
 


파일의 엑세스 시간이나 갱신 시간을 수정한다.

 


Usage

$ touch [option] file

$ [-acm] MMDDhhmm[YY] file (obsolescent)

 


Options

-a                   : change only the access time

-c                   : do not create any files

-d, --date=STRING  : parse STRING and use it instead of current time

-f                   : (ignored)

-m                  : change only the modification time

-r, --reference=FILE : use this file's times instead of current time

-t STAMP            : use [[CC]YY]MMDDhhmm[.ss] instead of current time

    --time=WORD    : access -a, atime -a, mtime -m, modify -m, use -a

    --help           : display this help and exit

    --version         : output version information and exit

 

 

 

tr
 
 
 


특정한 문자들을 다른 문자로 변경한다. redirection과 함께 사용

 


Usage

$ tr [option] 변경할문자 변경문자

 


Options

-c           : 파일의 모든 내용을 보이지 않고 바꾸는 작업만 보여준다.

-d           : 파일에서 변경할 문자를 제거한다.

 


설명

문자 표현시 백슬래쉬 문자 뒤에 8진법 숫자를 써서 문자 코드를 표현할 수 있다. 또한  [c1-c2]와 같은 하이픈 표현으로 문자의 범위를 지정할 수 있으며 [c*n]과 같은 방법으로 n 만큼의 문자 반복을 표현할 수도 있다. 변경할 문자의 변경 문자의 개수는 같아야 한다.

 


traceroute
 
 
 


네트웍크의 구간에 접속한 시간을 측정한다.

 


Usage

$ traceroute [IP Address 또는 Host]

 

 

 

true
 
 
 


셸 상에서 참의 의미를 가지는 0을 반환한다.

 

 

 

tty
 
 
 


현재 로그온 되어 있는 터미널의 장치 이름을 알려준다.

 


Usage

$ tty [-s]

 


Options

-s           : 표준 입력이 터미널 장치인지 아닌지를 시험한다. 터미널이 표준이라면 0을 반환하며 아니면 1을 반환한다.

 

 

 


 

umask
 
 
 


파일을 생성할 때 현재 사용되고 있는 권한(permission)값의 마스크가 무엇인지 알려주거나 그것을 새로 지정할 때 사용된다.

 


Usage

$ umask [마스크]

 


설명

 


마스크 값은 세 자리의 8진법 숫자로 구성된다. 이것을 마스크라고 부르는 이유는 마스크 값의 각 비트가 들어오는 값을 걸러내는 역할을 하기 때문이다. 즉 마스크 값이 0이면 권한 지정에 제한을 두지 않는다는 것이고 6이라면 읽기와 쓰기에 제한을 가한다는 의미가 되기 때문이다.

 

 

 

 


umount
 
 
 


설정된 마운트 정보를 해제한다.

 


Usage

$ umount 장치면 or mount_piont

$ umount -a

$ umount -t file_system_type

 


Options

-a           : 모든 파일 시스템의 마운트 정보를 해제한다.

-t            : 특정 형태의 파일 시스템만을 선택하여 해제된다. 옵션 뒤에는 어떤 파일 시스템을 해제할 것인지 지정한다.

 

 

 

uname
 
 
 


시스템 이름과 다른 정보를 보여준다.

 


Usage

$ uname [option]

 


Options

-s           : 시스템 이름을 알려준다. (기본값으로 내장)

-n           : 시스템의 노드(node) 이름을 알려준다.

-r           : 오퍼레이팅 시스템의 증명번호를 알려준다.

-v           : 오퍼레이팅 시스템의 버전(version) 번호를 알려준다.

-m          : 하드웨어의 이름을 알려준다.

-a           : 모든 정보를 알려준다. -snrvm 과 같다.

 

 

 

uncompress
 
 
 


compress로 압축되어 있는 file의 압축을 푼다.

 


Usage

$ uncompress file_name(s)

 


설명

사실상, compress의 -d 옵션을 사용하면 압축을 풀 수 있기 때문에 이 명령은 불필요하다. 하지만 옵션을 사용하는 것보다 의미있는 단어를 사용함으로 좀더 친숙하게 사용할 수 있다. uncompress는 자신이 압축 풀기 동작을 수행하는 것이 아니라 -d 옵션을 주어 compress를 호출한다. uncompress 자신의 파일 크기는 아주 적다.

 

 

 

users
 
 
 


간단히 사용자들의 ID 이름만을 알고자 할때 사용한다.

 


uptime
 
 
 


서버 부팅시간과 현재 시간이 출력된다.

 

 

 

uundecode / uuencode
 
 
 


uuencode는 USENET과 같이 ASC2 코드만을 다루는 미디어를 위해 바이너리 코드를 변환한다.

uudecode는 그 반대의 동작을 수행한다.

 


Usage

$ uudecode file..

$ uuencode file.. 이름

 


사용예

$ uuencode canexe.Z canexe.Z > exemail.uu

 


canexe.Z 라는 파일을 인코딩 작업을 거친 후 exemail.uu라는 파일로 저장한다. 이 파일을 디코딩하면 canexe.Z라는 이름으로 파일이 만들어진다.

 

 


 

vi
 
 
 


vi 에디터. 유닉스 계열의 운영체제에서 가장 널리 쓰이는 에디터

 


vi 명령어 요약

1. 시작

vi file                 : vi를 시작하여 지정한 파일 편집

vi -R file              : 읽기 전용(read- only) 편집기로서 vi를 시작하여 지정한 파일 편집

view file              : 읽기 전용(read- only) 편집기로서 vi를 시작하여 지정한 파일 편집


2. 종료

:wq                  : 데이터를 저장하고 종료

:q!                   : 데이터를 저장하지 않고 종료

 


3. 시스템이 다운된 후에 되살리기

vi -r                  : 되살릴 수 있는 모든 파일 이름 보여주기

vi -r file              : vi를 시작하여 지정한 파일 되살리기


4. 디스플레이 제어하기

^L                    : 현재 화면을 다시 디스플레이하기

:set number           : 내부 줄 번호 디스플레이

:set nonumber         : 배부 줄 번호 디스플레이 않기

 

 

5. 마지막으로 지운 것 복사하기

p                    : 마지막으로 지워진 것을 커서의 뒤/아래에 삽입

P                    : 마지막으로 지워진 것을 커서의 앞/위에 삽입

xp                    : 두 문자를 바꿈

deep                 : 두 단어를 바꿈

ddp                  : 두 줄을 바꿈


6. 패턴 검색

/rexp                 : 지정된 정규 표현식에 대해 앞으로 이동

/                     : 이전의 패턴에 대해 앞으로 검색을 반복

?rexp                 : 지정된 정규 표현식에 대해 뒤로 이동

?                     : 이전의 패턴에 대해 뒤로 검색을 반복

n                    : /나 ?명령에 대해 같은 방향으로 반복

N                    : /나 ?명령에 대해 반대 방향으로 반복

 


7. 약어의 사용

:ab short long         : short를 long에 대한 약어로 변경

:ab                   : 현재 약어 목록을 표시

:una short             : 약어 short를 표시


8. 줄 길이의 조정

r             : 문자를 뉴라인으로 변경

J                     : 줄의 결합

:set wm=n            : 오른쪽으로 n문자 위치에서 자동적으로 줄 나눔


9. 커서 이동

h               : 커서를 한 칸 왼쪽으로 이동

j              : 커서를 한 줄 아래로 이동

k                : 커서를 한 줄 위로 이동

l               : 커서를 한 칸 오른쪽으로 이동

 


          : 커서를 한 칸 왼쪽으로 이동

              : 커서를 한 칸 오른쪽으로 이동

-                    : 커서를 이전 줄의 처음으로 이동

+                    : 커서를 다음 줄의 처음으로 이동

              : 커서를 다음 줄의 처음으로 이동

0                    : 커서를 현재 줄의 맨 앞으로 이동

$                    : 커서를 현재 줄의 맨 끝으로 이동

^                     : 커서를 현재 줄의 첫글자(공백이나 탭이 아닌)로 이동

w                    : 커서를 다음 단어의 첫 글자로 이동

e                    : 커서를 다음 단어의 끝 글자로 이동

b                    : 커서를 이전 단어의 첫 글자로 이동

W                    : w와 같음(문장 부호 무시)

E                    : e와 같음(문장 부호 무시)

B                    : b와 같음(문장 부호 무시)

(                     : 다음 문장의 처음으로 이동

)                     : 이전 문장의 처음으로 이동

{                     : 다음 문단의 처음으로 이동

}                     : 이전 문단의 처음으로 이동

H                    : 커서를 화면 맨 위로 이동

M                    : 커서를 중간으로 이동

L                     : 커서를 맨 아래로 이동


10. 편집 버퍼를 통한 이동

^F                   : 한 화면 아래로 이동

^B                   : 한 화면 위로 이동

n^F                   : n화면 아래로 이동

n^B                  : n화면 위로 이동

^D                   : 반 화면 아래로 이동

^U                   : 반 화면 위로 이동

n^D                  : n줄만큼 아래로 이동

n^U                  : n줄만큼 위로 이동


11. 셸 명령 실행

:!command            : vi를 중단하고 지정한 셸 명령을 실행

:!!                    : vi를 중단하고 이전의 셸 명령을 실행

:sh                   : vi를 중단하고 셸을 실행

:!csh                  : vi를 중단하고 새로운 C-셸을 실행


12. 패턴에 의한 치환

:s/pattern/replace/      : 현재 줄의 치환

:lines/pattern/replace/   : 지정한 줄의 치환

:line,lines/pattern/replace/: 지정한 범위의 치환

:%s/pattern/replace/    : 모든 줄의 치환


13. 데이터 읽기

:liner file              : file의 내용을 지정한 줄 다음에 삽입

:r file                 : file의 내용을 현재의 줄 다음에 삽입

:liner !command         : command의 결과를 지정한 줄 다음에 삽입

:r !command          : command의 결과를 현재의 줄 다음에 삽입

:r !look pattern          : 지정한 pattern으로 시작된 단어 삽입


14. 정규 표현식을 사용하기 위한 특수 기호

.                     : 뉴라인을 제외한 모든 단일 문자와 대응

*                     : 영 또는 그 이상의 선행 문자와 대응

^                     : 줄의 시작과 대응

$                    : 줄의 끝과 대응

\<                   : 단어의 시작과 대응

\>                   : 단어의 끝과 대응

[ ]                   : 묶여진 문자중의 하나와 대응

[^ ]                  : 묶여진 문자를 제외한 아무것하고나 대응

\                    : 이어지는 기호를 문자 그대로 해석

 


15. 줄 번호

nG                   : 줄번호 n으로 건너뛰기

1G                   : 편집 버퍼의 첫 줄로 건너뛰기

G                    : 편집 버퍼의 마지막 줄로 건너뛰기

:map g lG             : g가 lG와 같도록 매크로 정의


16. 삽입

i                     : 입력 모드로 전환, 커서 위치 앞에서 삽입

a                    : 입력 모드로 전환, 커서 위치 뒤에서 삽입

I                     : 입력 모드로 전환, 현재 줄의 앞에 삽입

A                    : 입력 모드로 전환, 현재 줄의 끝에 삽입

o                    : 입력 모드로 전환, 현재 줄의 아래에 전개

O                    : 입력 모드로 전환, 현재 줄의 위에 전개


17. 편집하고 있는 파일을 바꾸기

:e file                 : 지정한 파일의 편집

:e! file                 : 지정한 파일의 편집, 자동 점검의 생략


18. 내용 고치기

r                     : 단지 한 글자만 변경(입력 모드로 바뀌지 않음)

R                    : 입력하는 대로 겹쳐 써서 변경

s                     : 삽입에 의해 한 단어의 변경

C                    : 커서의 위치로부터 줄 끝까지 삽입에 의한 변경

cc                   : 전체 줄을 삽입에 의한 변경

S                    : 전체 줄을 삽입에 의한 변경

cmove                 : 커서부터 move까지 삽입에 의해 변경

~                    : 대,소문자 바꾸기


19. 고치기의 취소 또는 반복

u                    : 편집 버퍼를 수정했던 마지막 명령을 취소

U                    : 현재 줄을 저장

.                     : 편집 버퍼를 수정했던 마지막 명령 반복


20. 문자 삭제

x                     : 커서가 있는 문자 삭제

X                    : 커서의 왼쪽 문자 삭제

D                    : 커서부터 줄의 끝까지 삭제

dd                   : 현재 줄의 전체 삭제

dmove                 : 커서부터 move까지 삭제

dG                   : 커서부터 편집 버퍼의 끝까지 삭제

d1G                  : 커서부터 편집 버퍼의 맨 앞까지 삭제

:lined                 : 지정한 줄의 삭제

:line, lined            : 지정한 범위의 삭제


21. 여러 줄의 복사와 이동

:linecotarget           : 지정한 줄을 복사하여 target 줄 밑에 삽입

:line, linecotarget       : 지정한 범위를 복사하여 target 줄 밑에 삽입

:linemtarget            : 지정한 줄로 이동하여 target 줄 밑에 삽입

:line, linemtarget       : 지정한 범위로 이동하여target 줄 밑에 삽입


22. 데이터를 처리하기 위한 셸 명령의 사용

n!!command           : n번 줄에서 command의 실행

!move command       : 커서부터 move까지 command 실행

!move fmt             : 커서부터 move까지 줄들을 형식 맞추기


23. 데이터 저장하기

:w                    : 원래의 파일로 데이터를 저장

:w file                 : 지정한 파일로 데이터를 저장

:w>> file              : 지정한 파일에 데이터를 추가

 

 


 

w
 
 
 


현재 시스템에 접속한 사용자들의 정보를 출력한다.

 


Usage

$ w [user]

 

 

 

wall
 
 
 


현재 시스템에 로그온되어 있는 모든 사용자들에게 메시지를 보낸다.

 


Usage

$ wall [message]

 

 

 

설명

메시지는 각 사용자의 터미널에 나타나게 된다. 인수로 파일 이름이 주어지지 않으면 표준 입력으로부터 데이터를 받아들이며, ^D로 입력을 종결하고 메시지를 발송한다. 이것을 사용하려면 슈퍼 유저로 로그인되어야 한다. 사용자가 자신의 터미널을 메시지 수신 거부 상태로 만들어 놓더라도 슈퍼 유저는 그것을 무시할 수 있다.

 

 

 

wc
 
 
 


file 내의 단어 수 등의 정보를 출력한다.

 


Usage

$ wc [option] file(s)

 


Options

-c           : 문자(character)의 개수만을 알고 싶을 때 사용한다.

-w           : 단어(word)의 개수만을 알고 싶을 대 사용한다.

-l            : 행(line)의 숫자를 알고 싶을 때 사용한다. 혹은 개행 문자의 개수를 알고자 할 때 사용될 수도 있다.

 

 

 

whereis
 
 
 


문자열 또는 file을 검색한다.

 

which
 등록된 path를 통해서 특정 프로그램을 찾는다.

 

who
 현재의 시스템에 접속한 사용자의 이름이나 로그온 정보를 보여준다.

Usage

$ who [ -uTHqs ] [로그온 정보파일 ]


옵션

-u           : 현재 시스템에 누가 로그온되어 있는지 보여준다.

-T           : 사용자의 터미널이 메시지를 보낼 수 있는지를 알려준다. +기호는 메시지를 쓸 수 있고, -는 그렇지 않음을 보여준다.

-H           : 헤더 라인을 프린트한다.

-q           : 사용자 이름과 카운트가 구분된 목록을 보여줌, 다른 옵션은 무시된다.

-s           : 호환을 위해 포함된 옵션으로 무시된다.


whoami
 현재 접속한 계정명 확인 및 접속자의 정보를 출력한다.


Usage

$ whoami

 

write
 사용자의 터미널 사이에 메시지를 전달한다.

Usage

$ write [user] [tty]

 

설명

메시지를 전달하고자 하는 사용자의 이름을 지정한다. 만일 한 사용자의 이름으로 두 명 이상이 사용중이면 특정 터미널을 지정하여(tty) 메시지를 전달할 수 있다. write는 표준 입력 장치로 전달할 메시지를 입력받는다. 각행에서 리턴 키를 누를 때마다 메시지가 전달되며, ^D를 누르면 그만둔다.

 


메시지가 수신되면 ‘Message from 보낸사람 터미널’등의 정보를 보여주어서 누가 어느 터미널에서 메시지를 보내는지를 알 수 있도록 한다. 보내고자 하는 사람이 로그인되어 있지 않다면 ‘user is not logged on이라고’ 알려주며 만일 그 사람의 터미널이 메시지 수신을 거부하고 있는 상태라면 ‘permission denied 라는’ 말을 보여준다. 그는 아마도 mesg n 명령을 사용했을 것이다.

xdm
 
 X-Widows상에서 login screen을 보여준다.


설명

어떤 system은 특정 level로 가도록 지정하면 xdm을 시동시킨다(/etc/inittab를 보도록).

리눅스 부팅 스크립트에 넣어두면 리눅스를 처음 부팅할 때부터 엑스윈도우로 부팅할 수 있다.

 

zcat
 
데이터를 다른 명령에 파이프 하려는 경우 사용하는 명령어


설명

cat 명령과 똑같이 작업하지만 입력으로 압축된 파일이 필요하다.

zcat은 파일을 압축 해제한 후 표준 출력 디바이스에 프린트한다.

zcat namelist | program1 | program2 ...

 

출처: http://blog.naver.com/oedipus31/140002547223

출처블로그 : 하늘이의 하늘보기