웹로직 9.0 이상에서 가능

EAR 로 배포 되어야 한다.

/EAR_TEST/EarContent/META-INF/weblogic-application.xml 내에

<wls:session-descriptor>
    <wls:sharing-enabled>true</wls:sharing-enabled>
</wls:session-descriptor>

과 같이, 설정 되어야 한다.

WAR 가 EAR 바깥에 있는 경우는, Eclipse 의 플러그인으로 말고는 현재로서는 EAR 안쪽으로
.war 로 묶어 배포하는 것 밖에는 없다(윈도우 기준).

UNIX 에서는 심볼릭링크로 abc.war 라는 이름으로 디렉토리 링크 걸어서 가능하단다.(아직 테스트 못해봄)
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,

Linux 용 nmon 은 SourceForge 에서 오픈소스로 공개되어 있음.

다운로드는 http://nmon.sourceforge.net/pmwiki.php?n=Site.CompilingNmon
에서 .c 소스와 makefile 다운 받으면 된다.

makefile 내에 보면, 플랫폼 별로 분기되는 것을 볼 수 있는데,
여기서 적당히 내 플랫폼에 맞는것 고른 후에
make <make 상에 있는 분기 라벨> 하면 된다.

ubuntu 에서는 libncurses5-dev 패키지를 다운받아야 ncurse 헤더 참조하여 컴파일 가능하다.


위 그림처럼 그래피컬한게 쫌 이뻐졌다.
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,

사용자 계정추가.

1.사용자 계정명과 ID(식별번호)는 유일해야 합니다.

2.모든사용자는 하나의 그룹에 속해야 합니다.

 

위의 두가지를 확인하기 위해 /etc/passwd /etc/group 파일의 내용을 확인하셔서

중복되는 계정명과 ID는 없는지, 어느 그룹에 속할것인지를 결정하시면 됩니다.

 

말씀하신 100번이란 ID는 식별번호를 말하는것이고 계정명(user name)은..물론 숫자로도 가능하지만

일반적으로는 영문으로 만들죠.^^

 

예) 계정명 - user1, 식별번호 - 100

      소속그룹 - staff, 식별번호 - 10 -> 기본그룹 말고 추가하시겠다면[ #groupadd -g 100 '그룹명' ]이렇

                                                        게 추가 하시고 /etc/group 파일을 확인하시면 생성된 내용을 보실수

                                                        있습니다.

      홈디렉토리 - /export/home/user1 -> 계정의 홈디렉토리가 됩니다.

      사용 shell - /bin/csh -> 기본제공되는 sh,csh,ksh 중에 택일하시면 됩니다.

 

위와 같이 결정이 되셨다면,

#useradd -u 100 -g 10 -d /export/home/user1 -m -s /bin/csh user1

 

이렇게 하시면 됩니다.

 

*사용자계정및 사용자그룹의  ID(식별번호)중에서 0~99번까지는 시스템에서 특별계정용으로 예약이 되었습니다.

일반계정은 100번 이후부터 사용하시면 됩니다


반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,

 

solaris도 많은 UNIX계열의 OS와 같이 터미널이나 콘솔창을 이용하여 작업한다.

(터미널을 열기위해서는 Xwindow에서 바탕화면에서 마우스 오른쪽 -> 도구 -> 터미널을 실행하면 된다.)

 

★ ifconfig

   => ifconfig는 주로 내가 사용하는 OS의 네트워크 주소를 알기 위해서 사용한다.

    (그냥 ifconfig라고 입력하게되면 ifconfig의 기본적인 사용법에 대해 나온다(옵션이 필요한 명령어)

 

     ● ifconfig <interface>

        =>현재 설정되어있는 interface(랜카드) 네트워크의 주소에 대한 설정값을 확인할 수있다.

      (ex)# ifconfig pcn0 (pcn0랜카드에 설정된 주소값을 보여준다)

           # ifconfig -a (모든 랜카드에 설정된 주소값을 보여준다.)

 

     ● ifconfig <interface> <plumb/unplumb>

       =>인터페이스 연결을 <연결함/비연결>을 설정한다.

       (ex)# ifconfig pcn0 unplumb (일단 기본적으로 연결되어있기 때문에 먼저 비연결을 설정해본다.)

            # ifconfig -a (연결이 해제되었는지 확인)

            # ifconfig pcn0 plumb (다시 연결해보자~)

            # ifconfig -a (다시 연결이 되어있는지 확인)

 

     ● ifconfig <interface> <ip address> netmask <netmask value> <up/down>

       => 인터페이스의 IP주소의 값을 변경시에 사용 (up은 활성화이고, down은 비활성화이지만

          대부분 down은 잘 사용하지 않는다.)

    (ex)# ifconfig pcn0 192.168.40.65 netmask 255.255.255.0 up (pcn0인 랜카드의 주소값을 변경하였다)

         # ifconfig -a (주소가 제대로 변경되었는지 확인)

 

   ※ ifconfig로 주소 변경시 하드가 아닌 메모리에 저장되므로 리부팅시 모든 변경사항이 다시 초기화된다.

       (변경전 설정사항으로 변경)

 

 

★ netstat

    => 각각의 프로토콜을 가진 활성화된 소켓의 리스트를 보여준다.

 

  netstat -a => 물리적인 인터페이스와 논리적인 인터페이스의 모든 소켓과 모든 라우팅테이블의 정보를 보여준다.

  netstat -g => 모든 인터페이스가 가진 멀티캐스트 그룹 구성원들을 보여준다.

  netstat -i => IP 경로가 사용하는 인터페이스의 정보를 보여준다.

  netstat -m => STREAMS 메모리 통계를 보여준다.

  netstat -n => 네트워크 주소를 숫자로 보여준다.(netstat는 기본적으로 상징적인 주소를 보여준다.)

  netstat -p => 미디어 테이블의 통신망을 보여준다.

  netstat -r => 라우팅 테이블을 보여준다.

  netstat -s => per-protocol 통계를 보여준다.

  netstat -v => 소켓과 STREAM 메모리 통계, 라우팅 테이블을 가진 추가적인 정보를 보여준다.

  netstat -I <interface> => 개별적인 인터페이스의 상태를 보여준다.

  netstat -M => 멀티캐스트 라우팅 테이블을 보여준다.

  netstat -P protocol => 적용되는 프로토콜의 모든 소켓과 통계를 제한적으로 보여준다.

  netstat -D => 인터페이스를 설정한 DHCP의 상태를 보여준다.

 

 (ex) # netstat -rn => 라우팅 테이블을 숫자로 보여준다.

       # netstat -an => 모든 소켓과 모든 라우팅 테이블의 정보를 숫자로 보여준다.

 

 

★ PING

   => 입력한 주소로 ICMP를 보내 연결이 되는지 확인한다.

   ▶ PING [옵션] <주소> (옵션이 없는 경우 간단하게 alive(연결됨) , no answer(응답없음)으로 표현

   ※ 여러 옵션이 있지만 그다지 사용하는 것은 없고, 리눅스를 사용하신 분들이라면

        -s 옵션을 이용해 리눅스에서 핑을 날리는 것과 같이 출력되는 것을 볼 수 있다.

 

  (ex) # ping -s 168.126.63.1 => KT DNS로 핑을 날린다.

          (실패시 네트워크 설정 확인해볼것. (가상머신 사용시에는 메인 OS의 방화벽이 존재하는지 확인해보자~!))

          (핑을 중간에 멈추지 않으면 무한대로 날리게 되니 "ctrl + c"를 눌러 멈추자)

 

★ DNS client 설정 파일

    => 웹페이지를 열기위해서는 도메인 이름 서비스를 제공하는 DNS 서버로 접속해야한다.

        솔라리스에서는 DNS로의 접속 설정을 환경설정 파일을 이용하여 접근이 가능하다.

 

     # vi /etc/resolv.conf => 아마도 막 설치를 하신분은 이 파일이 없을 가능성도 있으니, 새로만들자.

      nameserver 168.126.63.1  => KT DNS로 접근한다.

       (vi에디터를 처음 쓰시는 분들은 "i"버튼을 누르면 입력이 되고 모든 입력이 끝나면 "Esc"버튼을 누르고

        ":wq"(저장후 나감)입력하고 엔터를 눌러 빠져 나오자~!)

       ※ 읽기 전용 파일의 경우 ":wq"로 저장후 빠져나오지 못하므로 ":wq!"를 입력해 강제로 저장하구 빠져나오자

     # cat /etc/resolv.conf => 제대로 설정이 되었는지 확인하자.

     # vi /etc/nsswitch.conf => DNS를 사용하려면 이 환경설정파일을 변경해주어야 한다.


      이런 화면이 보여지는데 (이 화면은 vi를 실행하고, ":set nu"를 입력하면 위의 화면과 동일하게 나온다.)
      이 화면에서 12번째 줄에 있는 "hosts:    files""hosts:    files   dns"라고 입력한 다음
       저장하고 빠져나오자.(저장하는 방법은 위에서 잠깐 언급했다.)
 
 
★ 네트워크 관련 파일 확인하기
 
 # cat /etc/hosts => 아이피와 컴퓨터 이름이 저장 되어 있는 파일 (간이 네임서버 파일로 사용 가능)
 
 위의 그림과 같을 경우, ping이나 telnet등을 접속할 때 xp주소를 192.168.40.1이라고 직접 입력하지 않고 "xp"라고만 
 입력해도 192.168.40.1과 같은 주소로 인식한다.(이런식으로 자주 통신하는 주소를 별칭으로 만들어서 작업하면 편하다.)
 
 # cat /etc/defaultrouter => Default Gateway 주소가 저장되어 있는 파일
 # cat /etc/netmasks => Netmask 값이 저장되어 있는 파일
 # cat /etc/resolv.conf => 네임서버의 주소가 저장되어 잇는 파일
 # cat /etc/nsswitch.conf | grep hosts => 네임 서비스 사용 순서가 보인다.
   (여기서 "|"은 \버튼을 shift와 같이 누르면 나온다. 헷갈리지 말자~!)
 # cat /etc/hostname.pcn0 => 부팅시에 랜카드에 설정할 아이피를 가리키고 있는 호스트 네임이 저장된 파일
    ※hostname다음에 붙는 pcn0는 랜카드이므로 만약 다른 이름을 가진 랜카드를 사용한다면 hostname다음에
       현재 설치된 랜카드이름을 넣으면 된다.(대부분 pcn으로 잡힌다. vmwaretool설치시 vmxnet0로 잡힌다.)
 
==> 부팅시 /etc/hostname.pcn0 파일의 컴퓨터 이름을 /etc/hosts 파일에서 찾고 그 아이피를 랜카드에 할당한다.
 
 
★ 호스트 네임 변경 파일
  => 호스트 네임을 변경하기에 앞서서 자신의 호스트가 무엇인지 알아보고,
    아래의 파일들을 변경하여 네임을 변경하자~!
 
   # hostname => 현재 자신의 호스트 네임이 무엇인지 보여준다.
   # hostname <변경할 네임> => 현재 자신의 호스트 네임을 변경할 네임으로 바꾼다. (터미널을 다시 열어서 확인)
                                        단, 이방법은 재부팅시에는 다시 바뀌기 전의 이름으로 설정된다.
   # cat /etc/hosts => 위에서도 한번 언급되었지만, 부팅시 컴퓨터 이름을 이곳에서 찾는다.
  ◎다음 아래의 파일들을 살펴보면 다 같은 호스트 네임을 가지고 있는 것을 확인할 수 있다.
   # cat /etc/nodename
   # cat /etc/hostname.pcn0
   # cat /etc/net/ticlts/hosts
   # cat /etc/net/ticots/hosts
   # cat /etc/net/ticotsord/hosts
   => 호스트 네임을 변경하고자 한다면 일단 /etc/hosts에 호스트네임과 IP주소를 지정하고,
      아래 5개파일에서 호스트 네임을 변경하고자 하는 호스트 네임으로 변경해주면 된다.
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,
이노무 Tomcat 은 JNDI 등록때문에 받는 스트레스가 심하다. 버전에 따라 JNDI 등록하는 방법이 다르기 때문인데
이번에는 Tomcat 5.5 를 기준으로 한다.

인터넷 검색 해보면 각양 각색으로 설명이 틀린데, 뭐 META-INF 에 context.xml 을 작성해라, server.xml 만 작성하면 된다는 등등.. 그런데 왜 난 잘 안되는걸까..

결론부터 말하자면, Tomcat 5.5 에선, server.xmlweb.xml 에 모두 설정을 해줘야 한다.

server.xml 설정

<GlobalNamingResources> ... </GlobalNamingResources> 내 이건, <Host> 내의 <Context>... </Context> 이건 관계 없이 아래와 같이 설정한다

[Derby]

<Resource description="Test database connection" name="jdbc/testDs"
 auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30"
 maxWait="10000" username="userid" password="password" driverClassName="org.apache.derby.jdbc.ClientDriver"
 url="jdbc:derby://localhost:1527/C:/MyDevTool/bin/db-derby-10.4.2.0/officedb" />

[MySQL]
<Resource description="Test database connection" name="testDs2"
 auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30"
 maxWait="10000" username="userid" password="password" driverClassName="com.mysql.jdbc.Driver"
 url="jdbc:mysql://localhost:3306/my_db?autoReconnect=true" />

web.xml 설정

server.xml 만 설정해서 되는건 아니고, web.xml 도 설정 해줘야 하는데, 이놈때문에 좀 해멨다.
web.xml 의 가장 마지막 정도에 아래와 같이 정의해줘야 한다.

[Derby]

 <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/testDs</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

[MySQL]
 <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/testDs</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

이렇게 server.xml / web.xml 두가지를 해줘야 정상 작동 한다.

그리고, Tomcat 에서도, name 을, jdbc/testDs 로 하지 않고
testDs 로만 설정 해줘도 잘 동작 한다.


반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,
1. 커널 최신판으로 업그레이드
 설치에 앞서, 커널을 최신판으로 업데이트 해야 한다. 
 
$ sudo apt-get update
$ sudo apt-get upgrade
 
이러면, 패키지 목록을 최신버전으로 가져오고, 모든 패키지 및 커널을 업그레이드 한다

2. dkms 패키지 설치

 dkms 패키지를 설치해야 커널 모듈을 컴파일 할 수 있는 환경이 구성되므로, 해당 패키지를 설치 한다

$ sudo apt-get install dkms

3. build-essential 및 linux-header-XXXXX 패키지 설치

 Guest Addition 을 설치할 때, 커널 모듈을 추가하고 커널을 재컴파일 하기 위해서, 필요한 패키지를 설치한다
$ sudo apt-get install build-essential linux-headers-`uname -r`
 linux-headers-`uname -r` 명령 활용하여 정확한 버전 갖고온다

4. VirtualBox Guest Addition 설치
 VirtualBox 의 VM Guest 화면에서, "장치>게스트 확장 설치.. " 메뉴를 클릭하여, VBox Guest Addition ISO 이미지를 Mount 시킨다.

 그리고, /dev/cdrom1 을 (상황에 따라 달라질 수 있음) /mnt/cdrom 같이 적절한 곳에 mount 한다
$ sudo mount /dev/cdrom1 /media/cdrom

 Mount 한 CD-ROM 에서, VBoxLinuxAddition-x86.run 을 싫행시킨다. (Guest OS 에 따라 달라질 수 있다)
$ ./VBoxLinuxAddition-x86.run

 커널 컴파일까지 잘 진행됐으면 성공이다.

커널 컴파일 후에, X-Server 관련한 컴파일을 시도하는데, 이때 X 를 사용하지 않는 시스템이면, Fail 이 나도 상관 없다. 그 전단계인 모듈 컴파일 하고, 커널 컴파일까지만 잘 되면 된다.

5. 시스템 재부팅 및 확인

 시스템을 재부팅 하고, 아래 명령으로, 모듈이 잘 올라왔는지 확인한다.
$ lsmod | grep vboxvfs

 결과가 나오면 커널에 잘 올라간 것이고, 없으면 이상 있는게다.

6. vboxsf 마운트 시키기

 이제 본격적으로, 공유된 디렉토리를 접근하기 위해 Mount 한다.
 이때, VM 설정에 추가한, 공유디렉토리의 이름으로 Mount 를 해야 하므로, 해당 이름을 잘 알아두어야 한다.

 해당 공유이름은 아래 명령의 결과 중에 Shared folders: 쪽에서 찾을 수 있다.
$ VBoxManage showvminfo "VM 이름"

 만약 Shared folder 이름이 SHARED 리고 가정하고, /mnt/vm_shared 로 마운트 하려면,
$ mount -t vboxsf SHARED /mnt/vm_shared
와 같이 Mount 하면 사용 가능하다.

반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,
Ubuntu 에서 특정 사용자의 VirtualBox VM을 root 계정을 통해 실행시키려 했더니,
COM 초기화 실패 에러가 난다. 왜그런가 했더니, 특정 사용자의 Home 디렉토리 환경이 안잡힌게 문제였다.

보통 sudo 사용 시
$ sudo -u userid 커맨드..
사용하는데, 이것 말고, 한가지 옵션 (-H ) 만 더 넣어주면 해결 된다.

즉,
$ sudo -H -u userid 커맨드...
처럼 -H 옵션을 넣어주면, 사용자의 Home 디렉토리를 사용하게 된다.
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,
dpkg -l

하믄 됨
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,
일단, VMWareTools 가 설치되어 있어야 한다.

VMWareTools 는, VMWare 의 Guest OS 실행하면, 하단에 나오는 Install 버튼 누르고,
/dev/cdrom 을 mount 한 다음, 안에 있는 VMWare어쩌구_install.pl 파일인가를 실행해주면 된다.
마운트 하기 : $ mount /dev/cdrom /media/cdrom

툴이 설치 완료 된 후에, Shared Directory 를 VMWare 의 VM 설정 중 Option 에서 해주면 일단 환경은 된것이다.
 (Guest 재부팅 필요 없음)


위 처럼 lsmod 했을 때, vmhgfs 가 로드 되어있으면 문제 없는 것이다.

만약 로드안되어있으면
$ modprobe vmhgfs
를 한다

잘 되었다면
/mnt/hgfs
에서 공유된 디렉토리를 확인할 수 있다.
반응형
블로그 이미지

Good Joon

IT Professionalist Since 1999

,

Windows7 을 깔면서, VMWare 를 7으로 업데이트 하고, 이전 Ubuntu Guest 를
디렉토리 복사 해서, VMWare 에 물렸는데, 이놈이 ifconfig -a 로 보면, eth0 가 안올라 온다.
그리고, eth1 이 올라오면서, 에러가 나서 IP 할당도 못받아 있다.

$ lspci
해서, Ethernet 이 인식이 됐는지 우선 확인해 보고,

$ dmesg | grep eth
해보면, 부팅할 때 뭔가 문제가 있었나 볼 수 있다.

내경우는
udev: renamed network interface eth0 to eth1
이라는 퐝당한 메세지가 잡혔다.

원인은, MAC Address 가 바뀌어서 그런 듯 하다.
방법은 두가지 이다

  • edit /etc/udev/rules.d/70-persistent-net.rules and correct the eth0 to MAC address mapping, or
  • edit /etc/network/interfaces and change eth0 to eth1
  • 아래 방법은 eth0 을 못쓰고, eth1 으로 쓰겠다는 것이니,
    위의 방법을 선택하면 된다.

    실제로 70-persistent-net.rules 파일을 열어보면

    위 처럼 되어 있다.

    여기서 두번째 (빨간색) 놈은, 부팅 하면서 udev 가 추가해준 것이다. 즉, 현재 설정이다.
    오른쪽에 보면 현재 MAC Address 가 있는걸 볼 수 있다. 또, 가장 마지막에 보면 NAME="eth1" 으로 되어있다.

    그럼, 간단하게, 위에있는놈을 삭제해주고, NAME="eth1" 을 eth0 으로 바꿔주고
    시스템을 reboot 한다.

    잘 작동 된다~

    반응형
    블로그 이미지

    Good Joon

    IT Professionalist Since 1999

    ,