Linux 2013. 1. 29. 09:44

서버는 서비스 되고 있다는 가정하에 


mount -t nfs 서버ip:/서버에서 마운트되어 사용되어질 디렉토리 /마운트시킬 디렉토리(마운트포인터)


'Linux' 카테고리의 다른 글

tar를 이용한 백업  (0) 2013.02.12
시스템 백업과 복구  (0) 2013.01.29
잘정리된 iptables 사용법  (0) 2013.01.28
Iptables 포트제한  (0) 2012.12.08
리눅스 프로세스 상태 보기(ps명령)  (0) 2012.11.19
//
Linux 2013. 1. 28. 13:49

잘정리된 iptables 사용법


[출처 : http://seeaster.tistory.com/18 ]


오늘은 Iptables 에 대해 간단히 포스팅 하겠습니다. 그전에 몇가지 팁을 적어볼게요 ^^

옵션 보고 익히는 것보다 아래에 적은 팁이 실무에선 더 중요할 것 같네요.!!

 

Tip 7가지

1.     Iptables 하면서 팁은 위에서부터 아래로 적용 됨

2.     명렁어 치기전엔 3번 생각하자

-쳐놓고 서비스 장애 등 가용성에 문제가 온다면 GG입니다

3.     신뢰 IP Any Any open 해놓고 작업하기

-ssh 등 원격 접속 해 있을 때 실수로 차단되면 콘솔로 붙어서 작업해야함.

-inbound 와 outbound 해야함(ssh 같은경우 inbound open만 해놓을경우 통신 불가)

4.     생각나는데로 룰 만드는 것이 아닌 먼저 정책 분석, 트래픽 분석하고 다 정리한다음 테스트 장비에 테스트 후 적용할 것.

-초기 셋팅이 아닌 서비스 중에 변경할 땐 더욱 신중해야함.

5.     #]man iptables 를 이용할 것

-man 명령어로 명령어 옵션 보는 습관을 들이는 것이 좋습니다. 모든 명령어들어 옵션을 외울 수는 없지요. 물론 자주 쓰는 것은 외워두는 것이 좋습니다.

6.     일괄 적업하지 말 것.

-일괄작업 하면 빠르지만 하나하나씩 넣으면서 확인하는 습관을 길러야 합니다. 모든 보안 시스템은 일괄처리 기능이 제거되어있는데요 기계는 실수를 안하지만 사람은 항상 실수 하기 때문 입니다.

7.     Vi 편집기로 /etc/sysconfig/iptables 편집하는 것이 더 편하다.

-저장하기전에 확인하고 확인할것!!또한 vi 편집기로 작업후 서비스 재시작 해줄 것!(service iptables restart)

*처음 룰 생성해서 저장 하기 전까지는 /etc/sysconfig/iptables 파일이 없습니다.

 

 

 

# iptables 명령어(옵션) 간단한 설명

~]#vi /etc/sysconfig/iptables

~]#iptables -L :리스트보기

~]#iptables -P INPUT DROP : -P 기본정책, INPUT의 기본정책을 DROP으로 하겠다.

 

현재 FORWARD 기본정책은 ACCEPT

 

~]#iptables -A : -A 는 추가할떄

~]#iptables -I INPUT 3 : -I 는 원하는 라인에 추가, 3번쨰 라인에 추가한다는말임.

~]#iptables -A INPUT -p tcp : -p 는 프로토콜 정하기

~]#iptables -A INPUT -p tcp -s : -s 는 src ip

~]#iptables -A INPUT -p tcp -s 192.168.81.63 --dport 80: --dport 는 dst port

~]#iptables -A INPUT -p tcp -d 192.168.81.62: -d 는 dst ip

~]#iptabels -A INPUT -p tcp --sport 80: --sport 는 src port

~]#iptables -A INPUT -p tcp -dport 80 -j ACCEPT : -j 는 대응 방법(ACCEPT, DROP, REJECT 등),

*REJECT는 DOS 공격시 부하가 걸리므로 권장하지 않음

~]#iptables -A INPUT –m : -m은 man 페이지를 참조 하길..옵션이 너무 많아요..

 

#서비스 시작/정지/재시작/저장

*iptables 는 save 명령어를 쳐주지 않으면 시스템 재부팅 후 정책이 초기화 됩니다.

~]#service iptables start

~]#service iptables stop

~]#service iptables restart

~]#service iptables save

 

예제 참조는

http://team.boanin.com/

 

0. 기본정책을 ACCEPT로 설정

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

 

1. 현재 자신의 방화벽 규칙을 볼 수 있는 명령

iptables -L

iptables --list

 

2. 21.23.25.80 포트를 차단하는 정책(각각 하나씩 규칙을 만들것)

iptables -A INPUT -p tcp --dport 21 -j DROP

iptables -A INPUT -p tcp --dport 23 -j DROP

iptables -A INPUT -p tcp --dport 25 -j DROP

iptables -A INPUT -p tcp --dport 80 -j DROP

 

iptables -A INPUT -p tcp -m multiport --destination-port 21,23,25,80 -j DROP

 

3.첫번쨰 정책을 삭제

iptabels -D INPUT 1

 

4. 세번째 정책의 출발지 IP를 192.168.1.0/24로 수정

iptables -R INPUT 3 -p tcp -s 192.168.1.0/24 --dport 80 -j DROP

 

5. 출발지 IP가 A클래스 사설 IP 일 경우 차단하는 정책

iptables -A INPUT -s 10.0.0.0./8 -j DROP

 

6. 출발지 IP 192.168.10.1 부터 192.168.10.100, 그리고 192.168.150.0/24이고 목적지IP 는 192.168.10.170이고 목적지 포트는 3306일 경우 차단하는 정책

 

iptables -A INPUT -p tcp -s 192.168.150.0/24 -d 192.168.10.170 --dport 3306 -j DROP

iptables -A INPUT -p tcp -m iprange --src-range 192.168.10.1-192.168.10.100 -d 192.168.10.170 --dport 3306 -j DROP

 

7. tcp 패킷이 초당 10개가 올경우 차단하는 정책(limit match 이용)

iptables -A INPUT -p tcp -m limit --limit 10/s -j DROP

 

8. 하나의 세션에서 10개의 패킷이 매치된 후 tcp 패킷이 분당 100개가 올 경우 차단하는 정책

iptables -A INPUT -p tcp -m limit --limit 100/m --limit-burst 10 -j DROP

 

9. 옆사람의 윈도우와 리눅스에서 SSH 접속을 차단하도록 설정, 윈도우에서 연결은DROP, 리눅스는 REJECT

iptables -A INPUT -p tcp -s 172.17.24.140 --dport 22 -j DROP

iptables -A INPUT -p tcp -s 172.17.24.170 --dport 22 -j REJECT --reject-with tcp-reset

 

10. ICMP 라는 체인을 생성

 -icmp 패킷이 들어올 경우 ICM 체인으로 전달

 -icmp 체인에 ping에 대한 응답하지 않는 정책 추가

 

iptables -N ICMP

iptables -A INPUT -p icmp -j ICMP

iptables -A ICMP -p icmp --icmp-type 8 -j DROP

 

11. 기본정책을 DROP으로 설정

iptables -P INPUT DROP

iptables -P OUTPUT DROP

iptables -P FORWARD DROP

 본인의 윈도우에서 ssh연결이 되도록 설정하고 이미 연결된 상태나 연광성이 있는 연결은 별도의 정책 대신 state 매치를 이용하여 계쏙 사용할수 있도록 설정

iptables -I INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT

iptables -A INPUT -p tcp -s 172.17.24.130 --dport 22 -j ACCEPT

 

12. TCP FLAG 중 전체를 보고 그 중 SYN 과 FIN이 있을 경우 차단하는 정책

iptables -A INPUT -p tcp --tcp-flags ALL SYN,FIN -j DROP

 

13. TCP FLAG 중 전체를 보고 그 중 PSH 과 FIN이 있을 경우 차단하는 정책

iptables -A INPUT -p tcp --tcp-flags ALL FIN,FIN -j DROP


//
Linux 2012. 12. 8. 22:55

리눅스 port를 열기 위해서는  iptables를 통해서, 포트를 열고 막고를  할 수 있습니다.

아래의 예제 부분만 따라 하시면 해당 port에 대해 모두 열 수 있습니다.
Inbound (외부에서 서버로 들어오는) , Outbound( 서버에서 외부로 나가는 )  모두 port를 열기 위해서는 아래의 iptables로 INPUT, OUPUT 을 해주면 모두 열립니다.
권한은 root에서 해주시기 바랍니다.

iptables -I INPUT 1 -p tcp --dport 5900 -j ACCEPT 
iptables -I OUTPUT 1 -p tcp --dport 5900 -j ACCEPT 


예를 들면 ) FTP port 21번을 열고 싶다.
#iptables -I INPUT 1 -p tcp --dport 21 -j ACCEPT 
#iptables -I OUTPUT 1 -p tcp --dport 21 -j ACCEPT 

#service iptables save
#/etc/init.d/iptables restart


*확인 /etc/sysconfig/iptables (직접 추가해도 가능.)


*iptables 방화벽 켜고 /끄기

Task: Disable / Turn off Linux Firewall (Red hat/CentOS/Fedora Core)

Type the following two commands (you must login as the root user):
# /etc/init.d/iptables save# /etc/init.d/iptables start
# /etc/init.d/iptables stop

//
Linux 2012. 11. 19. 12:17

< ps [옵션] -현재 실행되고 있는 프로세스 목록 보여줌 >

-I : 자세한 형태의 정보를 출력

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

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

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

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

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

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

-x : 로그인 상태에 있는 동안 완료되지 않은 프로세스들을 보여준다.

-S : child CPU 시간과 메모리 페이지 결함정보를 추가

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

-e : 환경을 보여준다.

-w : wide형태로 출력한다.

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

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

-n : USER와 WCHAIN을 위해 수치 출력을 지원

< 명령 출력 필드의 의미 >

USER : 프로세스 소유자의 계정

PID : 프로세스 구분 ID

RSS : 프로세스에 의해 사용되는 실제 메모리의 용량(Kbyte)

SZ : 프로세스의 자료와 스택의 크기

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

TTY : 프로세스의 제어 터미널

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

%MEM : 마지막 분 동안 프로세스가 사용한 메모리양의 백분율

START : 프로세스가 시작된 시간

STAT : 프로세스의 상태

-P : 수행가능/수행중

-T : 일시정지

-D : 대기상태

-S : 20초 미만의 짧은 휴식상태

-I : 20초 이상의 긴 휴식상태

-Z : 좀비 프로세스

COMNNAND : 명령어의 이름

< pstree [옵션] -프로세스 정보를 트리형태로 출력 >

-n : PID순으로 정렬

-p : 프로세스명과 함께 PID도 출력

< kill [옵션] 프로세스ID -프로세스 죽이기 >

-s : 특별히 보낼 시그날의 이름이나 번호 지정

-p : 시그날은 보내지 않고 그 프로세스의 이름만 보여준다.

-l : 시그날의 목록 출력

*강제종료시

kill -9 "PID"

*특정 데몬과 관련된 모든 프로세스를 종료하고 싶을때

killall "데몬이름"

< top [옵션] -프로세스의 CPU, MEMORY 사용량등 시스템의 전반적인 상황을 실시간으로 모니터링 >

-d 시간 : 화면 갱신 시간을 지정한다.

-q : 화면을 계속 갱신한다.

-c : 명령행 전체를 보여준다.

-i : idle 상태와 좀비 프로세스는 무시한다.

*top 실행중 명령어

k : 킬

r : nice 값 변경

l : top 맨 윗줄의 항목 on/off

m : 메모리 항목 on/off

t : 프로세스와 CPU 항목 on/off

c : command line 의 옵션 on/off

q : 프로그램 종료

'Linux' 카테고리의 다른 글

잘정리된 iptables 사용법  (0) 2013.01.28
Iptables 포트제한  (0) 2012.12.08
mpich2 를 이용한 클러스터링 셋업  (0) 2012.11.16
yum으로 tomcat 인스톨후 초기화 방법  (0) 2012.11.13
ubuntu kde 에 한글입력 올리기  (0) 2012.11.11
//
Linux 2012. 11. 16. 20:41

MPICH2 GCC 버전을 설치해보자.

버전은 MPICH2 1.4 이다.

설치할 위치는 /engrid/enhpc 디렉토리 아래이다.

그리고 /engrid/enhpc 디렉토리는 작업을 수행할 노드에 모두 NFS 마운트를 해놓은 상태이다.

다운 받은 mpich2-1.4.tar.gz 을 /engrid/enhpc 디렉토리 아래에 압축을 푼다.

cd /engrid/enhpc;

tar xvfz mpich2-1.4.tar.gz;

압축을 풀고 mpich2-1.4 디렉토리에 gcc 디렉토리를 생성한다.

다음엔 intel 버전으로 컴파일 할 것이기 때문에 gcc 버전과 분리하기 위해 gcc 디렉토리를 만들어 컴파일한다.

mpich2를 컴파일 하기 전에 필요한 환경변수를 설정해줘야한다.
다음과 같이 환경변수를 설정해주자.
# export FC=gfortran
# export F77=gfortran
# export CC=gcc
# export CXX=g++
# ./configure --prefix=/engrid/enhpc/mpich2-1.4/gcc --enable-timing=runtime --enable-f77 --enable-fc --enable-cxx --enable-romio --enable-threads=multiple --enable-mpe --with-thread-package=pthreads --with-pm=mpd
# make
# make install

위와 같이 컴파일 하여 설치한다.

컴파일 후 mpdboot를 실행하기 위해 mpd.conf 파일과 mpd.hosts 파일을 설정해야 한다.

mpd.conf 파일에는 MPD_SECRETWORD 를 설정해줘야 한다. MPD_SECRETWORD는 아무거나 설정해도 상관없지만 작업을 수행할 모든 노드에 동일하게 설정되어 있어야 한다.

# vi ~/.mpd.conf

MPD_SECRETWORD=password

# chmod 600 ~/.mpd.conf

# chown root. ~/.mpd.conf

mpd.conf 파일의 권한은 작업을 수행할 소유자 권한으로 설정되어 있어야 한다.

작업을 수행할 노드를 mpd.hosts 파일에 다음과 같은 형식으로 설정해준다.

hostname:n

hostname은 작업을 수행할 노드 호스트 이름이고, n은 노드의 코어 수를 나타낸다.

예를 들어, clunix151 노드와 cluni152 노드에서 각 4 코어를 사용하겠다고 한다면 다음과 같이 설정해준다.

# vi /etc/mpd.hosts

clunix151:4

clunix152:4

작업을 수행할 노드는 설정을 했으니, mpdboot를 실행하자.

# /engrid/enhpc/mpich2-1.4/gcc/bin/mpdboot -r /usr/bin/ssh -n 2 -v -d -f /etc/mpd.hosts

mpdboot가 실행된 노드를 확인하는 명령은 아래의 mpdtrace 이다.

# /engrid/enhpc/mpich2-1.4/gcc/bin/mpdtrace

clunix151

clunix152

mpich2 예제 프로그램 cpi를 수행해보자.

# cd /engrid/enhpc/mpich2-1.4/examples

# /engrid/enhpc/mpich2-1.4/gcc/bin/mpirun -l -n 5 ./cpi

참고로 mpi를 수행할 때 원하는 노드로만 수행할 수 있는 "-machinefile <노드리스트파일>"옵션도 있다.

이 옵션을 설정하지 않으면 위에서 mpdboot 실행할 때 옵션에 설정한 mpd.hosts 노드 중에서 랜덤하게 수행되지만,

이 옵션을 설정하면 이 옵션에 설정된 노드에서만 수행하도록 한다.

다른 작업과 중복되지 않게 노드를 사용하고 싶을 때 사용할 수 있는 옵션이다.

예를 들어, clunix151 노드에서만 작업을 수행하고 싶을 경우, nodelist 파일에 clunix151을 저장후 다음과 같이 명령을 준다.

# gcc/bin/mpirun -np 6 -machinefile nodelist examples/basic/cpi;

모든 노드의 mpdboot 를 clear 하고 싶다면 다음 명령을 수행한다.

# mpdallexit

'Linux' 카테고리의 다른 글

Iptables 포트제한  (0) 2012.12.08
리눅스 프로세스 상태 보기(ps명령)  (0) 2012.11.19
yum으로 tomcat 인스톨후 초기화 방법  (0) 2012.11.13
ubuntu kde 에 한글입력 올리기  (0) 2012.11.11
리눅스 chrome root 로 실행  (0) 2012.11.10
//
Linux 2012. 11. 13. 22:28

fedora 17 kde 에서 yum으로 톰캣 설치 후 초기화

find -name "tomcat"

명령어를 쓰면


./usr/share/tomcat

./usr/share/maven-fragments/tomcat

./usr/share/java/tomcat

./usr/sbin/tomcat

./etc/sysconfig/tomcat

./etc/logrotate.d/tomcat

./etc/tomcat

./var/log/tomcat

./var/cache/tomcat

./var/lib/tomcat

두군데에 톰캣 폴더가 보인다. 어느곳이 진짜일까?

/usr/share/tomcat 의 경우

drwxr-xr-x.   2 root root   4096  9?? 7 11:27 bin
lrwxrwxrwx.   1 root tomcat   11  9?? 7 11:27 conf -> /etc/tomcat
lrwxrwxrwx.   1 root tomcat   22  9?? 7 11:27 lib -> /usr/share/java/tomcat
lrwxrwxrwx.   1 root tomcat   15  9?? 7 11:27 logs -> /var/log/tomcat
lrwxrwxrwx.   1 root tomcat   22  9?? 7 11:27 temp -> /var/cache/tomcat/temp
lrwxrwxrwx.   1 root tomcat   23  9?? 7 11:27 webapps -> /var/lib/tomcat/webapps
lrwxrwxrwx.   1 root tomcat   22  9?? 7 11:27 work -> /var/cache/tomcat/work

/etc/tomcat 의 경우

drwxrwxr-x.   3 root   tomcat   4096  9?? 7 11:27 Catalina
-rw-rw-r--.   1 tomcat tomcat  12128  7??26 05:54 catalina.policy
-rw-rw-r--.   1 tomcat tomcat   5435  7??26 05:54 catalina.properties
-rw-rw-r--.   1 tomcat tomcat   1394  7??26 05:54 context.xml
-rw-rw-r--.   1 tomcat tomcat    547  7??26 05:55 log4j.properties
-rw-rw-r--.   1 tomcat tomcat   3288  7??26 05:54 logging.properties
-rw-rw-r--.   1 tomcat tomcat   6435  7??26 05:54 server.xml
-rw-rw----.   1 tomcat tomcat   1998  7??26 05:54 tomcat-users.xml
-rw-rw-r--.   1 tomcat tomcat   1445  7??26 05:55 tomcat.conf
-rw-rw-r--.   1 tomcat tomcat 152724  7??26 05:54 web.xml

/etc/tomcat 이 설정파일이 있는 conf 폴더이고 /usr/share/tomcat 의 경우 다른 폴더들을 심볼릭 링크 해놓은 것을 알 수있다.
이제부터 /usr/share/tomcat 을 {$tomcat} 이라고 지칭하겠다.
아파치 서버와 연동해야 하지만 이번에는 단순히 웹어플리케이션만 만들어 보기로 하겠다.

윈도우의 톰캣과 비슷한 경로인 {$tomcat}/webapps 디렉토리에 들어가보면 
아무런 웹 어플리케이션도 있지 않다.

가장 간단한 웹 어플리케이션의 경우
{$tomcat}/webapps 경로 아래에
(끝에 /가 붙는 것은 폴더임)
프로젝트명/
프로젝트명/WEB-INF/
프로젝트명/WEB-INF/web.xml
이렇게 존재한다. 

(주의 WEB_INF, web_inf, web-inf 등이 아니다. 리눅스/유닉스는 파일,디렉토리명의 대소문자를 구분한다. WEB-INF를 정확히 쓸것)

톰캣 서버를 껏다 켰을때 메모리상에 올라가는 것이다.

index.jsp 의 경우 없어도 상관 없다 하지만 이런 폴더구조와 web.xml이 없을 경우, 또는 web.xml이 
잘못된 경우 로딩이 되지 않는다.

톰캣 루트 폴더인 {$tomcat}/webapps로 이동
(이후 톰캣 루트폴더는 웹앱스 폴더로, 표현하고 {$tomcat}은 톰캣 폴더로 표현하겠다. 물론 그냥 루트폴더는 /이다.
 이것은 톰캣을 설치후 해당 서버명으로 붙었을때 접근하는 폴더, 즉
 http://도메인 혹은 아이피:8080
 또는
 http://도메인 혹은 아이피:8080/
 로 접근했을때 뜨는 페이지가 톰캣루트디렉토리이기 때문이다.
 이 파일구조와 웹에서 접근 할 때의 관계를 잘 외워두자.)

cd {$tomcat}/webapps 

이번에 만들 프로젝트이름은  ticketM 이다.

mkdir ticketM
cd ticketM
mkdir WEB-INF
touch web.xml

이렇게 하면 web.xml 이 된다.

web.xml의 내용은 이렇게 채운다

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

당신이 root 로 작업했다면 ls -al 이나 ls -lrt 를 쳤을때 이상한 것을 발견해야 된다.

만약 발견하지 못한다면 알려주겠다.

새로 생성된 폴더와 파일은 root로 생성되어 다른 유저가 접근하지못한다.

그런데 톰캣 서비스 (데몬프로세스) 는 tomcat이라는 유저가 실행하는 것과 같다.
(아파치도 마찬가지)

그래서 이 파일 주인과 그룹을 톰캣으로 바꿔놓는 것이 필요

chmod 644 <파일명>
chmod 755 <디렉토리명>

으로 각자 실행해 준다.


권한까지 다 변경하면

톰캣 서비스를 껏다켜보자

페도라에서 yum으로 설치한 경우:
service tomcat restart
라고 치면 
 Redirecting to /bin/systemctl restart  tomcat.service  
이렇게 출력되면 된다.
톰캣 바이너리를 따로 설치한 경우,
     {$tomcat}/bin/shutdown.sh
     {$tomcat}/bin/startup.sh
이렇게 실행하면 된다.
    (해당 쉘이 없을 경우 잘 모르겠다.)

이후  http://도메인 혹은 아이피:8080/로 들어갔을때 출력되지 않을 것이다.
 ticketM 폴더에 index.jsp 파일을 생성한후
파일의 내용을
123123 으로 채우고

http://도메인 혹은 아이피:8080/ticketM 
혹은
http://도메인 혹은 아이피:8080/ticketM/
로 들어가면 123123이 출력된다.

이후에

http://도메인 혹은 아이피:8080/ 
을 홈페이지 루트를 웹으로 접근한다고 표현하고
http://도메인 혹은 아이피:8080/ticketM
혹은
http://도메인 혹은 아이피:8080/ticketM/
를 웹브라우저에 쳐서 접근하는 것을
웹어플리케이션 루트, 또는 웹 프로젝트 루트디렉토리에 웹으로 접근한다고 하겠다.


//
Linux 2012. 11. 11. 14:46

# apt-get update 

일단 패키지 업데이트 

 

# apt-get install -y synaptic 

시냅틱 패키지 관리자 설치

 

 [ 시작 ] - [ System ] - [ Synaptic Package Manager ] 실행

 

software-center 검색해서 설치

 

[ 시작 ] - [ System ] - [ Ubuntu Software Center ] 실행

 language support를 검색한다(아마 이까지는 Gnome도 동일 할듯하다)

 

language support language support-qt가 있는데

설명을 보면 qtKDE에 설치하는듯하고 걍 버전은 그놈에 설치하는듯하다

 

(그리고 [ Favorites ] - [ System setting ] - [ Locale ] 에 가보면

install language-selector-qt to be able to add more languages. 라고 되어있다)

 

[ System settings ] - [ Locale ] 에 들어가서  

우선 Country or region: 에서 change.. 를 누르고

 

Asia,East 에서 South Korea 를 선택 하고 OK를 누른다

 

그리고 맨 밑에 있는 install new language를 클릭한다

 

그리고 Korean 을 클릭 한다

//
Linux 2012. 11. 10. 22:43

1. 터미널을 실행시켜 /usr/bin/ 디렉토리의 google-chrome 실행파일을 편집한다.

vi /usr/bin/google-chrome



2. 파일의 맨 끝에 exec 부분을 보면 아래와 같을 것이다.

exec -a "$0" "$HERE/chrome" "$@"



3. 그 뒤에 다음 스크립트를 덧붙인다.

--user-data-dir



4. 수정을 마치면 다음과 같을 것이다.

exec -a "$0" "$HERE/chrome" "$@" --user-data-dir


5. 크롬을 다시 실행킨다.

 

//
Linux 2012. 11. 10. 17:24

This guide offers an alternative method of loading the i915 driver in the 3.2.6 kernel without adding unsupported PPA's or using packages which are not from the official BackTrack repositories.

Recently I've been trying to get the i915 graphic driver loaded in the new 3.2.6 kernel. After upgrading from R1 > R2 I noticed that the new kernel does not seem to load the i915 driver on boot where as the older 2.6.39.4 kernel loaded it automatically. The new kernel remains functional however in my case my Dell XPS 15z laptop graphic session was stuck at 1280 x 1024, which for a screen that has 1920 x 1080 native resolution, looks quite ugly and bad.

A couple of community members have been posting how to get the driver loaded, but every guide I've seen involves using unsupported PPA's or packages that are not from the official backtrack repositories. With no disrespect to their work, myself being a bit of a perfectionist (or maybe a purist) I tend to not go down the unsupported PPA route if I can avoid it. This guide should hopefully help you get the i915 driver loaded, without the need to mess with any software sources or PPA's, keeping your BackTrack installation pure.

Machine specs

All of this was tested on my Dell XPS 15z laptop, the important specs are below:

Dell XPS 15z i5 2.40 Ghz Dual Core
Intel GPU (Onboard) & Dedicated NVIDIA 2GB GeForce 525M (Optimus)
BackTrack 5 R2 KDE 64-bit (Upgraded from R1 following the official guide)
Installed on a 32 GB USB Stick with Encryption. (LVM)
My installation contains packages from the official backtrack repositories only.

1. Modifying /etc/default/grub:

Before attempting to load the i915 driver you need* to add some values to yourGRUB_CMDLINE_LINUX_DEFAULT line in your /etc/default/grub config. 

*Without doing this, I found the i915 driver did not work correctly and often hung or crashed my machine with the CPU at full throttle when attempting to startx.

Append these values to your GRUB_CMDLINE_LINUX_DEFAULT line:

Code:
i915.i915_enable_rc6=1 i915.lvds_downclock=1 i915.i915_enable_fbc=1 pcie_aspm=force
Your GRUB_CMDLINE_LINUX_DEFAULT line should now look similar to this:

GRUB_CMDLINE_LINUX_DEFAULT="text i915.i915_enable_rc6=1 i915.lvds_downclock=1 i915.i915_enable_fbc=1 pcie_aspm=force"
NOTE: Don't add these on your boot/grub/grub.cfg. These changes will get wiped whenever either a certain package runs the upgrade-grub script or when you run update-grub manually.

Here text mode is used rather than text splash (which is the default) as I have encryption set on my root partition and its more convenient for me see the console information (i.e. Enter password prompt) rather than having to press F8 to get to console. Having text mode set is not a necessary part of getting the i915 driver working. Though I personally would choose to have it enabled anyway as it can provide useful information regarding modules during boot.

You may also be wondering what all these commands are actually for. Mainly they are to help power saving (i.e. prevent battery drain) and to keep things running smoothly, as without them my laptop seems to run much hotter in the newer kernel than the older kernel.

Once you've modified the GRUB_CMDLINE_LINUX_DEFAULT line run the update-grub command for the changes to be applied on next boot: 

Code:
update-grub
IMPORTANT: Reboot your machine before continuing.

This is required so the new commands on the GRUB_CMDLINE_LINUX_DEFAULT line become effective.

2. Manually modprobe the i915 module

Now you should be back at console asking you to login. Now your going to attempt to load the i915 module. Before that however for machines with NVIDIA GPU's you may want to remove the nouveua driver as its not required and its just going to get in the way:

Code:
modprobe -r nouveau
modprobe i915 modeset=1
The first command removes the nouveau driver as its not capable of giving me my true screen resolution (In my case 1920 x 1080) and generally I don't need it. (Note: nouveau will only be present on a system with an NVIDIA GPU). The second command loads the i915 driver.

WARNING: Do not modprobe the i915 module while in an X Session, do it in console.

Observations: At first glance at the situation I first thought the i915 driver was completely missing from the 3.2.6 kernel, however this is not the case as modprobe is able to load it. You can also confirm the presence of the i915 driver by using a bit of grep magic modprobe -l | grep i915.

After you modprobe the i915 module, your screen should go blank for a second or so and should return with the screen resolution changed to your native resolution in console.

You can now proceed to startx and hopefully you will be greeted with BackTrack 5 R2 with the 3.2.6 kernel using the i915 driver. If everything worked out you can proceed to stop the nouveau driver loading at boot permanently, as well as getting the i915 module loaded automatically at boot.

Starting X Error: If you got an error when attempting to start X, you may already have an xorg.conf present which is conflicting with the loading of the i915 module. To remove it you can following the steps outlined in the troubleshooting section towards the bottom of this guide.

3. Stop nouveau from loading during boot permanently (If applicable)

A more convenient way of stopping the nouveau driver loading at boot without running modprobe is to apply it permanently to the blacklist.conf

/etc/modprobe.d/blacklist.conf
Add the following at the bottom of the file:

Code:
blacklist nouveau
Now run:

Code:
update-initramfs -u
This will generate a new initrd.img for the 3.2.6 kernel. If the output from the command says its updating the older 2.6.39.4 kernel you need to follow the steps in this guide to correct this behaviour.

Any subsequent boots after this will stop the driver from loading completly, you will be able to confirm this by checking your console output and looking for any lines with nouveau mentioned, you can also run lsmod and check nouveau is not listed anywhere.

4. Loading the i915 module automatically:

(Probably the moment you've been waiting for!)

If you have confirmed that manually loading the i915 module via modprobe works, you can startx with no problems and you get the desired screen resolution, you can make the module load during boot like its supposed to just like the older kernel. To do this you need to append this to your GRUB_CMDLINE_LINUX_DEFAULT line:

Code:
video=i915:modeset=1
Here's what your grub line should look like with this change:

GRUB_CMDLINE_LINUX_DEFAULT="text video=i915:modeset=1 i915.i915_enable_rc6=1 i915.lvds_downclock=1 i915.i915_enable_fbc=1 pcie_aspm=force"
Run update-grub:

Code:
update-grub
Now you can reboot to see if the i915 module will load automatically.

On your next boot you should get the i915 module loaded automatically! What should happen during the boot process is your screen resolution will start off being set to a low generic resolution such as 1024 x 768 and then should automatically adjust to your native resolution as the i915 module kicks in. This is because during the boot process the VESA module is loaded by default first as its a generic graphics driver which will work on any machine, then as the i915 module is loaded responsibility for the display is transferred over and the VESA module is deactivated.

Please let me know if this guide works for you. If you are having problems try the troubleshooting section at the bottom of this guide, if you still can't get everything working, feel free reply to the thread

'Linux' 카테고리의 다른 글

yum으로 tomcat 인스톨후 초기화 방법  (0) 2012.11.13
ubuntu kde 에 한글입력 올리기  (0) 2012.11.11
리눅스 chrome root 로 실행  (0) 2012.11.10
백트랙 초기 비밀번호  (0) 2012.11.10
startx 명령시 black screen 현상  (0) 2012.11.10
//
Linux 2012. 11. 10. 16:04

로컬에 설치를 한 분들은 설정치도 않은 패스워드에 깜짝 놀란다.


root // toor


//