GUI 로 파일 또는 파일 속의 내용을 검색 하여도 되지만

find 명령어를 사용하면 빠르게 원하는 파일 혹은 내용을 찾을 수 있다.


1. 파일 검색

1.1 # find [경로] -name "[파일 이름]"

경로부터 하위경로까지 검색하여 매칭되는 파일이름을 보여준다.

"*"을 적절히 집어넣어 파일명이 생각나지 않을때도 찾아 낼 수 있다.


1.1.1 실행 테스트

[root@localhost ~]# find / -name "main.c"
/root/main.c
[root@localhost ~]# find / -name "main*.c"
/usr/src/main_test.c
/root/main.c



1.2 # find [경로] 

하위 경로 파일 전부 검색하기 (파일이름이 생각 안날 때)

경로에 . 을 사용하여 상대경로로 검색할 수 있다.


1.2.1 실행 테스트

[root@localhost ~]# find .
.
./.cshrc
./anaconda-ks.cfg
./.bash_history
./.Xauthority
./.bashrc
./test
./test/test1
./test/test2
./main.c
./.tcshrc
./.bash_logout
./.rnd
./.bash_profile
./.viminfo
./install.log.syslog
./install.log



2. 파일 속 내용 검색

2.1 # find [경로] -name "[파일 이름]" | xargs grep "[내용]"

경로부터 하위경로까지 검색하여 매칭되는 파일이름과 매칭 내용을 보여준다.


2.1.1 실행 테스트

[root@localhost ~]# find . -name "test*" | xargs grep "main()"
./test/test_main.c:main(){
[root@localhost ~]# find | xargs grep "main()"
./test/test_main.c:main(){


2.2 # find [경로] -name "[파일 이름]" | xargs grep -I "[내용]"

바이너리 파일때문에 원하지 않는 결과 값이 나올 때는 grep 옵션에 -I (대문자 아이) 를 주어서 명령어를 실행시켜보자.




컴퓨터의 시간을 맞춰주기 위해서는 몇가지 방법이 있지만 그중 하나가

ntp서버에 접근하여 정확한 시간을 얻어 와서 자신의 컴퓨터시간을 맞추는 것이다.


이 때 필요한 것이 ntpd 인데 얼마만큼의 간격을 두고 서버에서 시간을 가져올까?


ntpd 가 설치되어 있는 리눅스 환경에서


#ntpq -p 의 명령어를 실행시켜 보면 다음과 같은 출력을 얻는다.


여기서 poll 이라는 항목이 있다.

64 가 의미하는 바는 무었인가??


#man ntpd 명령어를 사용하여 메뉴얼을 띄워서 확인해보자.

POLL INTERVAL CONTROL 의 항목을 보면

최소 6(64초) 최대 10(1024초) 로 기본 값이 정해 져 있고 이 값은 

로컬 시간과 ntp 서버 시간차에 따라 가변적으로 변하게 된다.


시간 차이가 적게 날수록 최대 시간에 가까워  지고

시간 차이가 많이 날수록 최소 시간에 가까워 진다.


#man npt.conf (메뉴얼)

에서 최소 3(8초) 최대 17(36시간)의 값으로 세팅 가능 하다고 한다.


'Dev' 카테고리의 다른 글

하드디스크가 이상하다.  (0) 2016.07.25
find 명령어 사용하기  (0) 2016.07.22
jsp:useBean 에러!!  (0) 2016.03.09
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
[redhat 6.7] telnet server 설치  (0) 2016.02.19

redhat 6.7 32bit 환경에서 테스트중 에러가 발생했다..


톰캣 위치/webapps/jsp/HelloBean.jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
    
<jsp:useBean id="time" class ="java.util.Date" scope="page" />
<jsp:useBean id="hello" class = "com.test.HelloBean" scope="page" />
 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Use Bean Test</title>
</head>
    <body>
    <h3> Use Bean Test</h3>
        Hello..
    <%= hello.getName() %>
    <hr>
    Time : <%= time.toLocaleString() %>
    </body>
</html>
cs


톰캣 위치/webapps/jsp/WEB-INF/classes/src/HelloBean.java

1
2
3
4
5
6
7
8
9
10
11
12
package com.test;
 
public class HelloBean{
    private String name = "World";
        public HelloBean() { }
            public void setName(String name){
            this.name = name;
        }
        public String getName(){
            return name;
        }
}
cs


두 파일을 생성 한 후 "톰캣 위치/webapps/jsp/WEB-INF/classes/src/" 의 디렉토리에서 다음과 같이 컴파일 해준다.

# javac HelloBean.java

그 후 생성된 HelloBean.class 파일을 /webapps/jsp/WEB-INF/classes/com/test 로 옮겨준다.


그뒤 로컬에서 테스트 할 경우 웹 브라우저를 켜고

127.0.0.1:8080/jsp/HelloBean.jsp 를 실행하면 될 줄 알았는데!!!!!!!!!

아래와 같은 에러가 발생했다.

HTTP Status 500 - java.lang.NoClassDefFoundError: com/test/HelloBean (wrong name: hello/HelloBean)


이리저리 구글링을 해서 검색해본결과 

jsp 파일의 

<jsp:useBean id="hello" class = "com.test.HelloBean" scope="page" />

부분을

과 같이 한 단계 더 추가해 주고

<jsp:useBean id="hello" class = "com.test.simple.HelloBean" scope="page" />


java 파일도 마찬가지로 


패키지 선언 부분을 

package com.test;

다음과 같이 바꿔주고 실행해 보면 에러 없이 잘 뜨는 것을 확인할 수 있다.

package com.test.simple;

'Dev' 카테고리의 다른 글

find 명령어 사용하기  (0) 2016.07.22
ntp poll interval 에 대해서  (0) 2016.03.10
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
[redhat 6.7] telnet server 설치  (0) 2016.02.19
CentOS 7 nfs 설정  (1) 2016.02.18

$$ 를 사용하여 임시 파일을 만들 수 있다.

임시 파일은 말그대로 임시 파일이다. 잠시 만들어졌다가 필요 없어지면 삭제할 목적이다.
임시 파일을 만들 때 문제는 이미 같은 파일 명이 있어서 다른 파일이 지워질 수 있다는 것이다.(중요한 파일일 지도 모른다.)
같은 디렉토리 안에 이름이 겹치지 않는 파일을 만들기 위하여 다음과 같이 사용하면 된다.




'Dev' 카테고리의 다른 글

ntp poll interval 에 대해서  (0) 2016.03.10
jsp:useBean 에러!!  (0) 2016.03.09
[redhat 6.7] telnet server 설치  (0) 2016.02.19
CentOS 7 nfs 설정  (1) 2016.02.18
VMware-tool 설치 에러  (0) 2016.01.25

redhat에서는 기본적으로 yum을 사용할 수 없기 때문에

yum 이 되도록 세팅이 돼 있는 상태여야 한다. (http://moongblog.tistory.com/10)


1. 텔넷 서버 설치 유무 확인

#rpm -qa | grep telnet-server


깔려있지 않다면...

(yum 설정이 잘 되지 않으면 rpm 파일을 다운 받아서 "#rpm -ivh telnet-server" 로 설치 해도 된다.

#yum install -y telnet-server


telnet-server 를 설치하면 xinetd 는 같이 설치 되는 듯 한데 혹시 telnet-server 설치 후에도 rpm -qa | grep xinetd 처럼 했을 때

아무것도 나오지 않는다면 

#yum install -y xinetd


2. telnet 설정

#vi /etc/xinetd.d/telnet

1
2
3
4
5
6
7
8
9
10
11
12
13
default: on
# description: The telnet server serves telnet sessions; it uses \
#       unencrypted username/password pairs for authentication.
service telnet
{
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        log_on_failure  += USERID
        disable         = no
}
cs
disable 부분이 yes 로 되이있는 것을 no 로 바꿔준다.


3. 서비스를 실행

#service xinetd start


4. 서비스 동작 확인

#service xinetd status


5. 포트 열기 

- 시작 바 의 System->Administration->Firewall 에 들어가서 텔넷 포트인 23번 포트를 열어주면 끝!

- 방화벽을 내려서 확인 해봐도 됨

. service iptables stop


'Dev' 카테고리의 다른 글

jsp:useBean 에러!!  (0) 2016.03.09
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
CentOS 7 nfs 설정  (1) 2016.02.18
VMware-tool 설치 에러  (0) 2016.01.25
Go 언어 란 무엇인가.?  (0) 2015.12.01

CentOS 7 에서 nfs 를 통한 공유폴더 설정 방법


#rpm -qa | grep nfs

- nfs가 설치 되어 있는지 유무 확인

-설치가 안돼있다면 설치

#yum install nfs-utils nfs-utils-lib


★ 서버

1. 서버에서 nfs에 사용될 공유 폴더를 생성한다

#mkdir /nfs/data 


2. /nfs/data 의 공유 폴더를 192.168.32.0-255 까지 읽고 쓸수 있는 권한을 부여하고, 동기화를 한다.

#vi /etc/exports

1
/nfs/data 192.168.32.*(rw,sync)
cs

3. CentOS 7 부터는 iptables 와 firewall 두가지가 같이 들어있어 test 환경을 편하게 하기위하여 두가지를 모두 stop 시킨다.

- 재부팅 후에도 해당 기능을 사용 하지 않으려면 stop 후 disable 까지 해주면 된다.

#systemctl stop firewalld.service

#systemctl stop iptables


4. 명령어를 통하여 서비스의 이름과 상태를 확인

#systemctl list-unit-files | grep fire


★ 클라이언트

1. 클라이언트에서 서버의 nfs 공유폴더와 mount 시킬 폴더를 생성한다.

#mkdir /nfs


2. nfs 서버의 접근 가능 IP 및 공유폴더 정보 확인

#showmount -e 192.168.32.32

- 없는 실행 프로그램이면 #yum install showmount 로 설치 후 사용하면 된다.


3. nfs 서버의 공유폴더와 마운트

#mount -t nfs 192.168.32.32:/nfs/data /nfs

- "-t" 옵션을 통하여 어떤 형태의 파일과 마운트 할건지 지정해 준다. (여기서는 nfs)

- 클라이언트의 /nfs 폴더로 들어가 확인하여 보면 서버의 /nfs/data의 내용이 똑같이 나오는 것을 확인 할 수 있다.(마운트 전에 있던 파일 중 크기가 0인 파일은 안보일 수 있다.)


4. 부팅 시 자동 마운트 하기

#vi /etc/fstab

192.168.32.32:/nfs/data /nfs   nfs     hard    0 0

'Dev' 카테고리의 다른 글

jsp:useBean 에러!!  (0) 2016.03.09
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
[redhat 6.7] telnet server 설치  (0) 2016.02.19
VMware-tool 설치 에러  (0) 2016.01.25
Go 언어 란 무엇인가.?  (0) 2015.12.01

VMware Tools installation cannot be started manually while Easy Install is in progress

다음의 에러가 나면서 설치 에러가 난다면!!!!

1. 메뉴창 VM -> Settings -> Floppy 항목을 지우고 재시작 해보면 될 것이다.

그래도 안되면

2. 메뉴창 VM -> Settings -> CD/DVD 를 지웠다가 다시 등록하고 해보자.

VMware 9 기준으로 테스트함.

'Dev' 카테고리의 다른 글

jsp:useBean 에러!!  (0) 2016.03.09
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
[redhat 6.7] telnet server 설치  (0) 2016.02.19
CentOS 7 nfs 설정  (1) 2016.02.18
Go 언어 란 무엇인가.?  (0) 2015.12.01

Go 언어란 ?

구글이 개발한 프로그래밍 언어.

가비지 컬렉션 기능, 병행성을 잘~ 지원하는 컴파일 언어.


Go 언어의 목적 ?

정적 타입 컴파일 언어의 효율성과 동적 언어 처럼 쉬운 프로그래밍을 할 수 있도록 하는 것이 목표.




'Dev' 카테고리의 다른 글

jsp:useBean 에러!!  (0) 2016.03.09
$$ 을 사용하여 임시 파일 만들기.  (0) 2016.02.23
[redhat 6.7] telnet server 설치  (0) 2016.02.19
CentOS 7 nfs 설정  (1) 2016.02.18
VMware-tool 설치 에러  (0) 2016.01.25

+ Recent posts