리눅스 33

[UNIX/LINUX] inode로 파일 삭제하기

inode를 통한 파일 삭제 방법에 대해 글 올립니다.간혹 시스템을 운영 또는 관리하면서 파일 등을 생성하다가 타이핑 또는 copy&paste 상의 오류로 인해 아래와 같은 당황스런 상황을 겪으실 텐데요.[root@ktdsoss01 tmp]# lltotal 28-rwxr-xr-x. 1 root root 451 Jul 1 19:06 check_filesize.shdrwx------. 2 gdm gdm 4096 Apr 16 13:35 orbit-gdm-rw-------. 1 root root 4096 Jun 25 16:09 perf-vdso.so-cub1DCdrwx------. 2 gdm gdm 4096 Apr 16 13:34 pulse-QsuJaVkv9Zamdrwx------. 2 soya soya 409..

[UNIX/LINUX] File Size 체크 스크립트

이전 글에 이어 특정 파일시스템에서 어떤 파일들이 용량을 많이 차지하고 있는지 확인하는 스크립트에 대해 글 올립니다.먼저 스크립트 전문은 다음과 같습니다.#!/bin/bash SEARCH_PATH=${1} // 특정 용량 이상을 차지하는 file 들을 확인할 디렉토리명MB_SIZE=${2} // 어느 정도 용량 이상의 file 들을 확인할 것인지 MB 단위로 지정 cd ${SEARCH_PATH} ### Check File Size more than ${MB_SIZE} MBfile_list=`find . -size +${MB_SIZE}M -type f -print` // ${MB_SIZE} MB 이상의 type 이 file인 것들을 ${SEARCH_PATH} 에서 find 하여 파일명만 file_list ..

[UNIX/LINUX] 파일시스템 사용량 체크 스크립트

파일시스템 사용량 체크를 간편하게 하기 위한 스크립트에 대해 글 올립니다.Linux 에서 파일시스템 사용량을 점검하는 것이 매우 중요하다는 것은 다 알고 계실 겁니다.점검해야 할 서버 대수가 적고 별다른 할 일이 없을 만큼 한가하다면 일일이 육안으로 점검해도 되겠지만, 점검해야 할 대상 서버와 파일시스템이 많다면 일일이 점검하다가 눈이 골뱅이가 될 것입니다.(@.@)이럴 때 편하게 점검할 수 있는 스크립트입니다.#!/bin/bashthreshold=${1} // 스크립트 실행 시의 input parameter를 threshold 변수에 저장fs_use_lists=`df -Ph | grep -v Filesystem | awk '{print $6,$5}'` // df 명령을 통해 파일시스템명과 사용률(Use..

[LINUX] OS bit 수 확인 방법

1. getconf 명령으로 확인# getconf LONG_BIT64 --> 64 bit 인 경우 '64' 로, 32 bit 인 경우 '32' 로 표기됨 2. uname 명령으로 확인# uname -mx86_64# uname -aLinux ktdsoss01 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux --> 64 bit 인 경우 'x86_64' 와 같은 식으로 표기되며, 32 bit 인 경우 'i686' 이나 'i386' 으로 표기됨 3. /proc/cpuinfo 정보를 통해 확인# cat /proc/cpuinfoprocessor : 0vendor_id : GenuineIntelcpu fam..

[LINUX] ulimit

Linux 에서의 ulimit 에 대해서 글 올립니다. ulimit 이란, shell과 shell이 실행한 프로세스에 대하여 시스템 상의 사용 자원을 제한할 수 있도록 해주는 명령어입니다. 예제를 보시면 다음과 같습니다. # ulimit -a // 현재 로그인한 user가 사용 가능한 모든 자원의 limit 값 core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 127461 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlim..

[dmesg] PCI: Fatal: No config space access function found

1. 에러 메시지:PCI: Fatal: No config space access function found 2. 원인:- Linux VM이 generic kernel을 사용하지 않고 full PV mode 로 실행될 경우 로깅- full PV mode는 Xen의 가상화 지원 모드 두 가지 중 하나이며, PV는 ParaVirtualization의 줄임말- kernel 2.6.24 버전부터는 Xen-PV-enabled kernel이 사용되며, 이럴 경우 어떤 가용한 PCI도 없다는 의미- CentOS 6.3, 6.5 버전(kernel 2.6.24 버전 이상)에서만 해당 메시지 로깅 3. 조치 방안: - lspci 명령 수행 시 아무 결과도 나오지 않고 바로 프롬프트가 떨어지면 정상임- 조치 필요 없음 4. ..

[UNIX/LINUX] 자동화를 위한 interactive 스크립트 - expect (2) 예제

이번 글에서는 expect 스크립트에 대한 예제를 통해 이해를 돕는 시간을 갖도록 하겠습니다. (2) 예제 #!/bin/expect set target "[lindex $argv 0]" set rootid "[lindex $argv 1]" set oldpwd "[lindex $argv 2]" set newpwd "[lindex $argv 3]" spawn telnet $target expect -timeout 5 "*ogin:" send "$rootid\n" expect -timeout 5 "*assword:" send "$oldpwd\n" sleep 2 expect -timeout 5 "#|>" send "passwd\n" expect -timeout 5 "New password:" send "$new..

[UNIX/LINUX] 자동화를 위한 interactive 스크립트 - expect (1) 기본 사용법

이번 글에서는 자동화를 위해 유용하게 사용할 수 있는 expect 란 스크립트에 대해서 말씀 드리도록 하겠습니다. expect 는 telnet이나 ftp와 같이 interactive한 환경이 필요한 곳에서 특정 문자열을 기다리고(expect), 정해진 문자열을 자동으로 보내는(send) 등의 처리를 하는 스크립트 언어입니다. 가령, A라는 서버에서 B라는 서버의 패스워드를 바꾸려 한다고 하면, telnet을 이용하여 B서버로 로그인하고 password 명령을 이용해 기존 패스워드와 새로운 패스워드를 차례로 입력하는 일련의 과정들을 거치게 됩니다. 하지만, 이 expect 를 이용하면 그런 절차들을 일일이 거칠 필요 없이 스크립트 하나만 돌림으로써 문제를 해결할 수 있습니다. expect 스크립트를 사용하..

[LINUX] CentOS 설치

1. 장비에 CentOS DVD를 넣으면 아래와 같은 화면이 보이고 Enter를 누르면 설치가 시작됨 2. OS 설치를 시작하기 전에 설치 media를 테스트하려면 'OK' 를, 그렇지 않으면 'Skip' 을 선택하고 Enter 3. 'Next' 를 누르면 설치 Wizard 가 시작됨 4. 설치를 위해 사용할 언어 선택 5. 키보드 선택 6. 파티션 설정 - 목적에 따라 적절한 항목을 선택. 여기서는 Create Custom layout 선택 7. Create Custom layout 7.1. Swap 파티션: 시스템의 물리적 메모리의 2배 정도 용량으로 생성 (파일시스템 타입에서 swap 선택) 7.2. /boot 파티션: Primary Partition으로 선택하고 512MB로 생성 (파일시스템 타입..

[UNIX/LINUX] Shell Script - sed 명령을 이용한 new line <-> 특정 문자열 (2)

지난 글에 이어서 이번에는 sed를 이용하여 new line을 특정 문자열로 변경하는 방법에 대해 말씀 드리도록 하겠습니다. (2) new line --> 특정 문자열 # cat test.txt1111122222333334444455555 위와 같은 컨텐츠를 가진 txt 파일이 있다고 가정합니다. 위 컨텐츠에서 Enter가 적용된 부분(new line)을 ':'(colon)으로 변경하고자 한다면 다음과 같이 수행합니다. # sed 'N;N;N;N;s/\n/:/g' test.txt sed 명령에서 'N' 옵션은 줄바꿈문자(\n)를 /A패턴/ 공간에 더하고 입력의 다음 줄을 읽어 패턴 스페이스에 덧붙이겠다는 뜻입니다. 무슨 말인지 이해가 잘 되시나요? 사실 저는 아직도 완전히 이해가 되지는 않습니다.;;;;..