2007. 11. 26. 14:02 Unix/Linux
SuSE Linux 관련
http://openskills.info/infobox.php?ID=949
o SuSE Linux Firewall 관련
http://www.topology.org/linux/fwsuse.html#suse91
o SuSE에만 해당되는 사항은 아니지만 Open Skills라는 사이트
http://openskills.info/
2007. 11. 26. 14:02 Unix/Linux
2007. 11. 24. 08:07 Unix/Linux
2007. 11. 20. 11:19 Unix/Linux
o Magic SysRq Key란 무엇인가?
- magic system request key 의 줄임말.
- magical key combo를 말하는 것으로 해당 키를 누르게되면 커널이 무엇을
하고 있던간에 커널이 완전히 죽은 경우가 아니라면, 바로 응답을 준다.
o 커널 컴파일옵션
make menuconfig -> Kernel Hacking -> Kernel Debugging 체크 -> Magic Sysrq Key 체크
* 일반적으로 배포되는 리눅스에는 위 옵션이 기본적으로 체크되어 있다. 따라서
설치된 커널은 이미 sysrq 를 지원하도록 준비가 되어있는 셈이다.
o sysrq 활성화/비활성화
sysrq 를 run-time 에 enable / disable 할 수 있는데, 다음 명령을 사용한다.
enable : # echo 1 > /proc/sys/kernel/sysrq
disable : # echo 0 > /proc/sys/kernel/sysrq
o sysrq 사용
콘솔에서 <alt>-<sysrq>-"magic key" 를 누르면 된다.
o magic key 종류와 기능
magic key 에 해당하는 키와 그 기능을 살펴보면 다음과 같다.
(아래 내용은 커널 소스의 Documents/sysrq.txt 를 참조하였다.)
'r' - 키보드 raw mode를 끄고 XLATE모드로 설정
(상당히 제한적이며, 상/하 키 이벤트를 탐지할 수 없다. 모든 키에 대해 Ctrl/Alt/Shift를 처리할 수 없다)
(* Quite limited, cannot detect key up/key down events. Doesn't handle ctrl/alt/shift for all keys.)
-> X 서버 또는 svgalib 프로그램 Crash의 경우 편리함
'k' - Secure Access Key (SAK), 현재 가상 콘솔 상의 모든 프로그램을 종료한다.
(로그인시에 패스워드를 갈취하는 트로이목마 프로그램이 없기를 원할 때 유용하다.
현재 가상 콘솔상의 모든 프로그램을 종료하여 트로이목마 프로그램이 실행한 것이 아닌 init에 의해
실행된 로그인 프롬프트를 원할 경우)
'b' - sync나 디스크의 마운트해제(unmount)없이 시스템을 즉시 reboot
'c' - sync나 디스크의 마운트해제없이 의도적으로 시스템 crash를 일으킨다.
이 키는 NETDUMP 클라이언트 패키지 또는 DISKDUMP 패키지가 설치되었다면 가장 유용하다
'o' - 시스템을 끈다.(설정이 되어 있고 지원한다면).
's' - 모든 마운트된 파일 시스템에 대해 sync 시도
'u' - 모든 마운트된 파일 시스템을 읽기전용으로 마운트 시도
'p' - 콘솔상에 현재 레지스터(register)와 플래그(flag)를 뿌려준다.
't' - 콘솔상에 현재 작업 목록과 그 정보를 뿌려준다.
'm' - 콘솔상에 현재 메모리 정보를 뿌려준다.
'v' - Dumps Voyager SMP processor info to your console.
(Voyager SMP Processor가 뭔지.. 암튼 그 프로세서 정보를 콘솔에 뿌려준단다.)
'0'-'9' - 어떤 커널 메세지를 콘솔에 뿌려줄지 제어하는 콘솔 로그 레벨을 설정한다.
('0'의 경우 매우 긴급한 메시지만 콘솔상에 뿌려준다. syslogd/klogd가
실행중이라면 계속 로그를 생성한다.(파일시스템에..))
'e' - init 프로세스를 제외한 모든 프로세스에 SIGTERM 시그널을 보낸다.
'i' - init 프로세스를 제외한 모든 프로세스에 SIGKILL 시그널을 보낸다.
'l' - 모든 프로세스(init 포함)에 SIGKILL 시그널을 보낸다.(이를 수행한 후에 시스템은 동작하지 않음)
'h' - 도움말을 표시한다.(실제로 위의 목록에 없는 key들은 도움말을 보여준다. 하지만 'h'가 기억하기 쉬움)
위에서 run-time 으로 sysrq ON/OFF 를 할 수 있는 방법을 얘기하였다. 하지만 이것은 reboot 후에는 적용되지
않는다. reboot 후에 적용되도록 하려면, 다음과 같은 방법을 사용한다.
1. /etc/sysctl.conf 파일을 직접 수정한다.
# vi /etc/sysctl.conf
kernel.sysrq = 1 입력
# reboot
위와 같이 하면 reboot 후 항상 sysrq 가 enable 상태로 reboot 된다.
2. sysctl 명령어를 사용한다.
# sysctl -w kernel.sysrq=1
위 명령은 결국 /etc/sysctl.conf 에 kernel.sysrq=1 옵션을 기록해준다. 따라서 reboot 후에 적용된다.
만일 서버에 접속할 수는 있어도 콘솔은 없는 경우에 sysrq 를 사용하고 싶다면, 다음 파일을 사용하여 가능하다.
/proc/sysrq-trigger
말 그대로 sysrq-trigger 이다. 해당 파일의 permission 은 --w------ 이다. 즉 root 권한으로 쓰기만 가능하다.
echo b > /proc/sysrq-trigger 라고 하면 콘솔에서 <alt>-<sysrq>-"b" 를 누른것과 동일한 효과를 나타낸다. 즉 reboot 된다. 즉 sysrq-trigger 파일에 원하는 명령어를 써주면 바로 해당하는 sysrq 명령이 수행된다.
** 상기 내용은 http://blog.naver.com/pinocc/120037594446의 내용에 리눅스 커널문서중 sysrq.txt의 내용을
첨가하여 정리한 것임
** 더 상세한 내용은 sysrq.txt 내용을 보시기 바람.
2007. 11. 15. 15:55 Unix/Linux
기본설정
openssl.conf 파일 편집
2007. 11. 13. 10:41 Unix/Linux
o 배포판 버전 : Ubuntu 7.04 Desktop 버전
o 설치 패키지 : open-vm-tools-2007.09.04-56574.tar.gz (http://open-vm-tools.sourceforge.net/)
o 설치한 이유 : vm-tools를 설치하다가 컴파일 에러가 나서..
o 설치한 과정 :
- open-vm-tools-2007.09.04-56574.tar.gz을 다운로드 받는다.
- 기본적으로 설치된 Desktop Ubuntu에 다음의 패키지를 설치한다.
libgc-dev
libXinerama-dev
libxrandr-dev
libxtst-dev
libgtk-dev (1, 2 version 모두)
- 압축을 풀고 디렉토리로 이동
- ./configure
- make
- make modules
- make install
- /etc/ld.so.conf 에 /usr/local/lib 추가
- ldconfig 실행
--- to be continued....
2007. 11. 3. 20:51 Unix/Linux
telnet, ftp 서비스 잠금
telnet과 ftp 잠금
시스템으로의 외부로부터의 접근(inbound access)이 필요하지 않다면 다음과
같이 하여 사용자들의 telnet 또는 ftp 접근을 거부하라.
vi /etc/inetd.conf
telnet 또는 ftp로 시작하는 줄을 주석처리하라. 파일을 저장하고 편집을 마쳐라.
이제 다음의 명령어로 inetd 데몬을 정지 후 시작하라.
/etc/rc.d/init.d/inet stop
/etc/rc.d/init.d/inet start
(기종에 따라 /etc/init.d 가 될 수도 있다.)
이제부터는 아무도 (외부)네트웍에서 여러분의 서버로 telnet과 ftp를 할수 없다.
※ 역자註 : 요즘은 inetd super deamon을 사용하였으나 요즘은 xinetd를 사용하여
위의 팁은 현실과 맞지 않을 수 있다. xinetd는 다음과 같이 disable = yes (사용안함)
또는 disable = no (사용)을 설정하며
# default: off
# description: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#
service 서비스명
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}
다음의 명령으로 데몬을 재시작할 수 있다.
/etc/rc.d/init.d/xinetd stop
/etc/rc.d/init.d/xinetd start
-------------------------------------------------------------------------
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
UNIX GURU UNIVERSE
UNIX HOT TIP
Unix Tip 2323 - May 12, 2006
http://www.ugu.com/sui/ugu/show?tip.today
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
LOCK DOWN TELNET OR FTP
When inbound access isn't required into
a system deny users Telnet or FTP access
do the following:
vi /etc/inetd.conf
Comment the line starts with Telnet or
FTP. Save the file and exit.
Stop and start the inetd daemon now by
following commands:
/etc/rc.d/init.d/inet stop
/etc/rc.d/init.d/inet start
(Your flavor may be /etc/init.d)
Now on nobody can telnet or FTP to your
server from outside network.
2007. 11. 1. 18:58 Unix/Linux
○ 하도 여러 사람들의 글이 많아서 내 나름 정리를 하고자... man page를 보고 끄적끄적
※ ethtool 사용법(주로 쓰이는 옵션 : 굵게)
# ethtool -s ethX [speed 10|100|1000] [duplex half|full] [port tp|aui|bnc|mii] [autoneg on|off] [phyad N] [xcvr internal|external] [wol p|u|m|b|g|g|s|d...] [sopass xx:yy:zz:aa:bb:cc] [msglvl N]
휴 길기도 하군..
※ 네트웍 설정에 넣기
/etc/sysconfig/network-scripts/ifcfg-ethX 파일에
ETHTOOL_OPTS="speed 1000 duplex full autoneg off"
추가
2007. 11. 1. 18:54 Unix/Linux
리눅스 설정 방법
1. 네트워크 관련 설정 파일 설정
---------------------------------------------------------------------------
/etc/resolv.conf : nameserver
/etc/modules.conf : interface alias , duplex
/etc/sysconfig/network : default gateway , hostname
/etc/sysconfig/network-scripts/ifcfg-eth0 : ipaddr , netmask , broadcast
/etc/sysconfig/static-routes : static으로 설정되어 있는 routing table 정보
---------------------------------------------------------------------------
1. NIC의 duplex상태 확인 및 설정
#ethtool eth0 : duplex및 속도 확인
#ethtool -s eth0 duplex full : duplex를 full로 설정
#ethtool -s eth0 speed 100 : speed를 100으로 설정
/etc/modules.conf : 부팅시 설정하기 위해서 사용하는 file
alias eth0 e100
alias eth1 e100
options e100 e100_speed_duplex=4,4 // 1=10half;2=10full;3=100half;4=100full
* modules.conf에서 option에 duplex를 설정하는 방법은 NIC마다 다르므로 확인한 후 사용하여야 함.
위 예는 intel NIC를 설정하는것을 보인것임.
2. 수동으로 NIC 올리기
-기본값으로 UP / DOWN
#ifconfig eth0 plumb (사용)
#ifconfig eth0 up
#ifconfig eth0 down
#ifconfig eth0 unplumb(사용안함)
-값을 지정하여 올리기
#ifconfig eth0 211.41.84.222 netmask 255.255.255.0 broadcast 211.41.84.255 up
-인테페이스 사용/미사용
#ifconfig eth0 plumb (사용)
#ifconfig eth0 unplumb (미사용)
3. routing 수동 설정 방법
routing table에 설정할 내용
----------------------------------------------------
각 NIC ip의 network주소에 대한 routing table
local주소에 대한 routing table
default gateway
static routing table
----------------------------------------------------
#route add -net 211.41.84.0 netmask 255.255.255.0 dev eth0 : network주소에 대한 routing table등록
#route add -net 172.24.9.0 netmask 255.255.255.0 gw 172.24.64.1 dev eth1 : static route 등록
#route add default gw 211.41.84.234 dev eth0 : default gateway등록. /etc/sysconfig/network확인
#route add -host 211.41.84.111 gw xxx.xxx.xxx.xxx dev eth0 : 특정 호스트에 대한 routing table등록.
* netmask가 빠짐을 주의
/etc/sysconfig/static-routes : 그외 static으로 등록하여야 할 것(paran.com)
any net 172.24.9.0 netmask 255.255.255.0 gw 172.24.64.1 metric 1
any net 172.16.0.0 netmask 255.240.0.0 gw 172.24.64.1 metric 1
any net 10.0.0.0 netmask 255.0.0.0 gw 172.24.64.1 metric 1
any net 192.168.0.0 netmask 255.255.0.0 gw 172.24.64.1 metric 1
- 간단 요약 -
IP 설정 정보 확인
1. IP 주소
2. 넷마스크
3. G/W 주소
4. DNS 주소
5. 네트웍 주소
네트웍 설정
1. /etc/hosts
2. /etc/resolv.conf
3. 호스트 이름, 게이트웨이, 게이트웨이로 갈 장치 등을 설정
/etc/sysconfig/network 파일 수정
ex) 1 NETWORKING=yes
2 HOSTNAME=kwsweb04
3 GATEWAY=211.41.73.129
4 GATEWAYDEV=eth0
4. 인터페이스 설정
/etc/sysconfig/network-scripts/ifcfg-eth0
ex) 1 DEVICE=eth0
2 BOOTPROTO=static
3 BROADCAST=211.41.73.191
4 IPADDR=211.41.73.144
5 NETMASK=255.255.255.192
6 NETWORK=211.41.73.128
7 ONBOOT=yes
각 인터페이스마다 설정한다.
5. /etc/rc.d/init.d/network restart
또는 간단히 service network restart
네트웍 설정 확인
# ping www.paran.com
# ifconfg -a | more
# mii-tool
ftp나 sftp 등으로 속도 테스트
※ 원문 : http://cafe.naver.com/quest4i/69
2007. 11. 1. 17:39 Unix/Linux
Linux 에서 DAT 사용법
SCSI controller 를 linux 에서 인식시키는 방법.
modprobe <SCSI module 이름>
예: modprobe initio
SCSI controller 및 연결된 장비 보는 방법.
J:~ # cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 05 Lun: 00
Vendor: HP Model: C5683A Rev: C005
Type: Sequential-Access ANSI SCSI revision: 02
혹은 dmesg 명령.
scsi0 : Initio INI-9X00U/UW SCSI device driver; Revision: 1.03g
Vendor: HP Model: C5683A Rev: C005
Type: Sequential-Access ANSI SCSI revision: 02
st: Version 20030403, bufsize 32768, max init. bufs 4, s/g segs 16
Attached scsi tape st0 at scsi0, channel 0, id 5, lun 0
st0: Block limits 1 - 16777215 bytes.
mt 사용법.
mt –f /dev/st0 status (첫번째 tape 장비 상태 보는 법)
mt –f /dev/st0 eject (첫번째 tape 장비안의 tape 꺼내기)
man mt 참고할 것.
tar 사용법.
tar cvf /dev/st0 /backup (/backup 을 tape 에 기록)
tar tvf /dev/st0 (tape 안의 내용을 봄)
tar xvf /dev/st0 (현재 folder 에 tape 내용을 복구)
man tar 참고할 것.
참고 문서: http://kldp.org/KoreanDoc/TapeDrive-KLDP
출처 : http://cafe.naver.com/lto/31
2007. 11. 1. 17:35 Unix/Shell
아래글을 보고 Shell에 적용을 해 봤습니다.
DATE=`expr \`date +%d\` + 1 - 1`
echo $DATE
아니면 바로
expr `date +%d` + 1 - 1
흐흐흐
--------------<아래는 퍼온글입니다>------------------
우연히 발견했습니다.
echo date("m");
하시면 결과가 09 이렇게 나오죠(지금이 9월이니까)
그런데 여기서 앞의 0을 제거하는 방법중 가장 쉬운건....
echo date("m")+1-1;
하니까 0이 제거되는군요. 하하핫.
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=3999