#title 솔라리스 처음 사용하기 [[TableOfContents]] 솔라리스 인스톨을 성공적으로 마쳤다면 재부팅을 하고, 처음으로 맞이하는 것이 CDE(Common Desktop Environment)입니다. 관리자 계정으로 기본으로 root를 입력하고, 설치시 입력했던 root의 패스워드를 입력합니다.. 그러면 두개의 창이 뜰것입니다.. 도움말 편집기와 파일 관리자입니다.. 자~ 그렇다면 솔라리스와 친숙해 지기 위해서 열심히 마우스가 뽀개지기 직전까지 마우스로 여러 메뉴를 찍어봅니다.. 어느정도는 CDE에서 잘 읽어보구 마우스로 또각거리면 관리가 됩니다... 헐헐~ 텔넷으로 로그인 할때는 다른 사용자로 로긴한 후에 su라는 명령어를 통해서 root사용자로 로긴을 해야 합니다.. 윈도우에서 텔넷을 한다면...[시작] --> [실행] --> telnet 192.168.0.101을 합니다.. 뒤에 아이피는 솔라리스가 인스톨된 컴터의 IP주소 입니다.. 솔라리스 환경에서 콘솔을 열으시셔 해보시기바랍니다... {{{ SunOS 5.8 login: oracle Password: Last login: Sat Nov 24 15:17:21 from :0 Sun Microsystems Inc. SunOS 5.8 Generic February 2000 $ }}} 이런식입니다... 저는 오라클사용자로 로긴을 했습니다.. 먼저 텔넷을 사용하여 접속할 사용자 생성을 해봅시다.. 간단하게 해봅시다.. 여기부터는 그대로 따라서 해보시기 바랍니다.. '--'로 시작하는 것은 제가 주석을 달아논것이니까 이것은 실습하실때 생략하시길.. {{{ $ su root Password: --솔라리스 콘솔을 이용하신다면 생략하세요.. # groupadd -g 7000 users --그룹의 생성, -g 옵션은 그룹의 번호지정 # useradd -g users -d /export/home/yasi -m yasi --사용자 생성, -g 는 그룹, -d는 사용자의 홈디렉토리 -m 은 사용자의 홈디렉토리가 없을때 생성 # passwd yasi New password: --보안상 입력하는 패스워드는 보이지 않는다. Re-enter new password: passwd (SYSTEM): passwd successfully changed for yasi # mkdir -P /export/home/yasi mkdir: 잘못된 옵션 -- P --솔라리스에서는 대/소문자구별을 확실히 합니다.. mkdir: 사용법: mkdir [-m mode] [-p] dirname ... # mkdir -p /export/home/yasi --디렉토리 생성, (현재 root 계정) -p 옵션은 하위디렉토리까지 생성 # chown oracle /export/home/yasi --change owner, 루트계정으로 생성한 디렉토리는 루트의 소유이기 때문에 소유자를 변경 # su - yasi Sun Microsystems Inc. SunOS 5.8 Generic February 2000 $ id --현재 사용자의 솔라리스에서 부여한 번호와 이름, 그룹이 나옵니다.. uid=101(yasi) gid=7000(users) $ pwd --현재 사용자가 머물고 있는 디렉토리 /export/home/yasi $ --사용자의 쉘이 #에서 $로 바뀐것을 볼수 있습니다.. }}} 허이구...이거 텔넷으로 하기위한 작업을 하다보니....그룹생성과 사용자 생성을에 대한 거의 모든 짓을 해버렸슴다..헐헐~ 중요한 것은 root계정으로 들어가서 작업할 때는 주의를 하셔야 한다는 것입니다.. 환경이라든지 어떤 작업을 잘못하면 운영체제에 아주 나쁜 영향을 끼칠수 있기 때문입니다.. 솔라리스의 CUI(Consol(Command-Line) User Interface)와 친숙해 지기 위해서.. 재미있는 명령어의 첫 만남을 시작해 봅시다.. {{{ $ su - root Password: Sun Microsystems Inc. SunOS 5.8 Generic February 2000 # uname --이 명령어는 운영체제의 정보를 보여줍니다.. 옵션이 a, X가 있는데 사용은 다음과 같습니다.. SunOS # uname -a SunOS yasicom 5.8 Generic_108529-09 i86pc i386 i86pc # uname -X System = SunOS Node = yasicom Release = 5.8 KernelID = Generic_108529-09 Machine = i86pc BusType = Serial = Users = OEM# = 0 Origin# = 1 NumCPU = 1 # uname -aX SunOS yasicom 5.8 Generic_108529-09 i86pc i386 i86pcSystem = SunOS Node = yasicom Release = 5.8 KernelID = Generic_108529-09 Machine = i86pc BusType = Serial = Users = OEM# = 0 Origin# = 1 NumCPU = 1 }}} 다음은 날짜를 알아보는 명령어 data를 사용해 봅시다. date명령으로 일반사용자는 지금 시스템의 시간을 기준으로 시간과 날짜를 볼수가 있습니다.. 그러나 날짜와 시간을 고치는 것은 root유저만 할 수 있습니다.. {{{ $ date 2001년 11월 25일 일요일 오후 11시 35분 23초 $ date 112523352001 --root유저가 아니기때문에 에러..날짜를 바꿀 권한이 없다. date: 소유자가 아님 사용법: date [-u] mmddHHMM[[cc]yy][.SS] date [-u] [+format] date -a [-]sss[.fff] $ su Password: # date 112523142001 2001년 11월 25일 일요일 오후 11시 14분 00초 # date 2001년 11월 25일 일요일 오후 11시 14분 10초 }}} 다음은 달력을 봐봅시다... 잼있습니다... {{{ $ cal 6 --6월을 나타냅니다.. 6 Jan Feb Mar S M Tu W Th F S S M Tu W Th F S S M Tu W Th F S 1 2 1 2 3 4 5 6 1 2 3 4 5 6 3 4 5 6 7 8 9 7 8 9 10 11 12 13 7 8 9 10 11 12 13 10 11 12 13 14 15 16 14 15 16 17 18 19 20 14 15 16 17 18 19 20 17 18 19 20 21 22 23 21 22 23 24 25 26 27 21 22 23 24 25 26 27 24 25 26 27 28 29 30 28 28 29 30 31 31 Apr May Jun S M Tu W Th F S S M Tu W Th F S S M Tu W Th F S 1 2 3 1 1 2 3 4 5 4 5 6 7 8 9 10 2 3 4 5 6 7 8 6 7 8 9 10 11 12 11 12 13 14 15 16 17 9 10 11 12 13 14 15 13 14 15 16 17 18 19 18 19 20 21 22 23 24 16 17 18 19 20 21 22 20 21 22 23 24 25 26 25 26 27 28 29 30 23 24 25 26 27 28 29 27 28 29 30 30 31 Jul Aug Sep S M Tu W Th F S S M Tu W Th F S S M Tu W Th F S 1 2 3 1 2 3 4 5 6 7 1 2 3 4 4 5 6 7 8 9 10 8 9 10 11 12 13 14 5 6 7 8 9 10 11 11 12 13 14 15 16 17 15 16 17 18 19 20 21 12 13 14 15 16 17 18 18 19 20 21 22 23 24 22 23 24 25 26 27 28 19 20 21 22 23 24 25 25 26 27 28 29 30 31 29 30 31 26 27 28 29 30 Oct Nov Dec S M Tu W Th F S S M Tu W Th F S S M Tu W Th F S 1 2 1 2 3 4 5 6 1 2 3 4 3 4 5 6 7 8 9 7 8 9 10 11 12 13 5 6 7 8 9 10 11 10 11 12 13 14 15 16 14 15 16 17 18 19 20 12 13 14 15 16 17 18 17 18 19 20 21 22 23 21 22 23 24 25 26 27 19 20 21 22 23 24 25 24 25 26 27 28 29 30 28 29 30 26 27 28 29 30 31 31 $ cal November 2001 S M Tu W Th F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 $ cal 12 2022 --2022년의 크리스마스는 일요일이군여...그때까정 살수 있을라나?? December 2022 S M Tu W Th F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 }}} 다음은 도움말 사용법을 알아보겠습니다... 저같이 머리나쁜넘은 명령어를 잘 기억하지 못합니다... 그때 참고할 만한것이 바로..man이죠.. 좀 많은 양이 나오므로...한페이지씩 보여주게 됩니다... <사용법> 스페이스바 : 다음 화면으로 이동 엔터 : 현재화면에서 한 라인 진행 Ctrl + b : 한 화면 앞으로 이동 Ctrl + f : 한 화면 뒤로 이동 /pattern : 패턴을 찾아 이동 N : 다음 패턴을 찾아 이동 Q : 종료 {{{ $ man uname Reformatting page. Please Wait... done User Commands uname(1) NAME uname - print name of current system SYNOPSIS uname [ -aimnprsvX ] uname [ -S system_name ] DESCRIPTION The uname utility prints information about the current sys- tem on the standard output. When options are specified, sym- bols representing one or more system characteristics will be written to the standard output. If no options are specified, uname prints the current operating system's name. The options print selected information returned by uname(2), sysinfo(2), or both. OPTIONS The following options are supported: -a Prints basic information currently available from the system. -i Prints the name of the hardware implementation (plat- form). -m Prints the machine hardware name (class). Use of this option is discouraged; use uname -p instead. See NOTES section below. -n Prints the nodename (the nodename is the name by which the system is known to a communications network). <이하생략> }}} 다음은 현재 시스템에 로그인 되어 있는 사람이 누구누구 인지 살펴보는 명령어입니다.. 직접 해보는게 더 낫겠습니다.. 두번째 필드에 나오는 console은 진짜 있는 장치를 의미하구여.. pts/4, pts/5하는 것은 가상의 장치입니다...pseudo device라고 하지여... term은 여기에 안나오는데...이것은 랜카드나...모델같은 물리적으로 연결되는 장치를 의미합니다.. {{{ $ who --일반적인 정보를 보여줍니다.. oracle console 11월 25 22:18 (:0) oracle pts/4 11월 25 22:19 (:0.0) oracle pts/5 11월 25 22:21 (:0.0) yasi pts/6 11월 25 23:32 (192.168.0.1) $ who am i --지금 내가 어떤 사용자로 로긴했는지 보여줍니다... yasi pts/6 11월 25 23:32 (192.168.0.1) $ whoami --이 명령은 간단히 이름만 나오는데...우째...안나오네여..ㅡㅡ; whoami: 없음 $ who -H --who 명령어와 같죠? NAME LINE TIME oracle console 11월 25 22:18 (:0) oracle pts/4 11월 25 22:19 (:0.0) oracle pts/5 11월 25 22:21 (:0.0) yasi pts/6 11월 25 23:32 (192.168.0.1) $ who -q --간단히 이름만 보여줍니다.. oracle oracle oracle yasi # users=4 $ who -m --현재 터미널에 대한 정보만 보여줍니다.. yasi pts/6 11월 25 23:32 (192.168.0.1) }}} 현재 내가 어떤 사용자로 로긴했는가는 또 다른 명령어로도 알 수 있습니다.. 뿐만아니라 현재 로긴된 유저의 아이디와 그룹도 알수가 있지여... {{{ $ id uid=101(yasi) gid=7000(users) --해당 유저가 속한 Primary Group만을 표시 $ id -a --해당 유저가 속한 모든 그룹을 표시 uid=101(yasi) gid=7000(users) groups=7000(users),101(dba) $ id oracle uid=1001(oracle) gid=101(dba) $ id -a oracle uid=1001(oracle) gid=101(dba) groups=101(dba) }}} 첨에 이런야그를 잠깐 한거 같슴다... 명령어를 몇개 연결해서 쓸수 있다구여... 다음에 배울 디렉토리 검색 명령어를 써봅시다.. {{{ $ ls local.cshrc local.login local.profile $ ls -a . .. .profile local.cshrc local.login local.profile $ ls -al total 12 drwxr-xr-x 2 100 users 512 Nov 24 17:05 . drwxr-xr-x 5 root root 512 Nov 25 22:09 .. -rw-r--r-- 1 yasi users 144 Nov 24 17:05 .profile -rw-r--r-- 1 yasi users 124 Nov 24 17:05 local.cshrc -rw-r--r-- 1 yasi users 607 Nov 24 17:05 local.login -rw-r--r-- 1 yasi users 582 Nov 24 17:05 local.profile $ ls;pwd --두개의 명령어를 연결했슴다.. local.cshrc local.login local.profile /export/home/yasi $ pwd --현재 로긴한 사용자가 있는 디렉토리의 위치 /export/home/yasi }}} 텔넷을 접속하셨다면 상당히 지금 답답하실겁니다.. 왜나하면 백스페이스나 방향이 이런거 사용이 안돼니까여.. 저두 이게 좀 짜증스럽더군여..헐헐~ 각각을 설명하고 있는 것이 보입니다.. 안보이시는 분은 눈을 크게뜨고 다시 보시길... erase :한글자를 지운다. werase :한 단어를 지운다. kill :한라인을 모두지운다. intr, quit :현재 작업을 강제종료시킨다. susp :현재 작업을 일시중지시킨다. {{{ $ stty -a speed 38400 baud; rows = 61; columns = 120; ypixels = 0; xpixels = 0; csdata ? eucw 1:0:0:0, scrw 1:0:0:0 intr = ^c; quit = ^\; erase = ^?; kill = ^u; eof = ^d; eol = ; eol2 = ; swtch = ; start = ^q; stop = ^s; susp = ^z; dsusp = ^y; rprnt = ^r; flush = ^o; werase = ^w; lnext = ^v; -parenb -parodd cs8 -cstopb -hupcl cread -clocal -loblk -crtscts -crtsxoff -parext -ignbrk brkint ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc ixon -ixany -ixoff imaxbel isig icanon -xcase echo echoe echok -echonl -noflsh -tostop echoctl -echoprt echoke -defecho -flusho -pendin iexten opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel tab3 $ stty erase ^H --이제 좀 자유로워 졌을 것이다..주의할것은 바꿀때 한글자 지우기를 erase중에 한 단어로 하지 말라는 것이다. --이유는 나중에 다시 바꾸지를 못하기 때문이다.. '\'를 이용하면 된다는데...우째 저는 안돼는구만요..헐헐~ --아싸리 문제꺼리를 일으킬 짓을 안하면 되는 것이죠머.. }}}