본문 바로가기

컴퓨터/리눅스

(22)
SELinux가 켜진 상황에서 cgi 실행시키기 문제를 상술하자면, SELinux 가 켜져 있는 상황에서 cgi 파일 안에서 외부 프로그램을 실행시키려 할 때 해야 하는 일이다. 관건은 file 의 SELinux security context를 변경시켜야 한다는 것이다. SELinux가 켜져 있는 상황에서, 일반적이라면 cgi-bin 인 곳에 apache 가 실행시킬 수 있는 실행 파일이 위치하게 된다. 만약 그 스크립트 파일 안에서 다른 프로그램을 실행시켜야 한다면, 그렇게 실행을 당해야 하는 파일은 httpd_sys_script_exec_t context를 갖고 있어야 한다. 다음과 같이 한다. [centos@ABCDEFGH KKK]$ sudo chcon -t httpd_sys_script_exec_t [executible-file-name]그것의..
rsync : 데이터 백업 프로그램 rsync는 두 대의 컴퓨터의 특정 경로에 있는 파일들을 동기화시켜주는 프로그램이다. rsync를 이용하면 데이터 백업을 쉽게 할 수 있다. rsync를 이용하는 방법을 살펴 보자. rsync 의 기본 사용법은 다음과 같다. rsync [OPTIONS] [source] [dest] source의 내용을 dest로 복사를 해준다. 사용할 수 있는 OPTION 이 매우 많은데, 간단하게는 다음과 같이 할 수 있다. rsync -avz [source] [dest] 즉, archive mode 로 복사를 하며(a), 데이터를 압축해서 복사를 하고(z), 복사되는 파일을 출력해 주는 옵션(v). rsync는 파일의 변경 여부를 판단할 수 있는 매우 많은 방법을 제공하는데, 기본적으로는 파일의 마지막 수정 날짜와 ..
리눅스에서 새 HDD를 달고 mount 하기 새로운 HDD를 장착 후 마운트를 하는 방법은 다음과 같다. (CentOS 기준) fdisk -l 로 확인하면 새로운 disk 정보가 뜬다. root 계정이 아니면 fdisk -l 을 했을 때 아무것도 안 나온다. 당황하지 말고 root 계정으로 한다. format 이 안 되어 있는 상태에서는 df 에 의해 안 보인다. 우선, 어떤 파일 형식으로 마운트를 할 것인지를 결정해야 한다. 이를 알기 위해선 현재 사용하는 HDD가 어떤 형식으로 되어 있는지 보는 것이 가장 빠른 방법일 것이다. 이것은 mount 명령어에 아무런 인자를 지정하지 않고 볼 수 있다. 그 후, 원하는 file type 으로 file system 을 만들고 mount를 하기 위해선 다음과 같이 하면 된다. mkfs -t ext4 /de..
삼바 접속이 안될 때 확인할 점들 삼바를 설치 후 윈도우즈에서 연결을 하면 짠! 하고 한 번에 되면 좋겠지만 잘 안 되는 경우가 많다, ㅋ. 그럴 땐 우선 다음과 같은 점들을 확인해 준다 (CentOS 기준). 1. SELinux2. 방화벽3. 데몬 실행 여부4. IP 1. SELinux : Security Enhanced Linux 인데, 이게 켜져 있으면 삼바를 돌리기 위해선 참 많은 다른 설정을 해야 한다. 보안이 향상된 것보다 차라리 편하게 삼바를 하고 싶다면 이것을 꺼준다. 이것 때문에 문제가 생길 경우 증상은 탐색기에서 연결된 상태로 뜨지만 권한 문제로 실제 접속은 되지 않는 것처럼 나오는 것이다. 2. 방화벽: 당연히 삼바가 쓰는 port 를 열어 놓아야 겠지. udp 138, 139 를 이용할테니 열어 놓도록 한다. 3. ..
vi 초기 환경 설정 파일 vi 를 실행시켰을 때 설정되는 환경을 바꾸기 위해서는 사용자의 홈 디렉토리에 있는 .vimrc 파일을 수정해 주면 된다. 만약 .vimrc 파일이 없으면 그냥 만들면 된다. 개인적으로 내가 사용하는 설정은 다음과 같다. set nuset smartindentset hlsearchset nowraphi Comment ctermfg=red 각각을 설명하면 다음과 같다. set nu: 가장 왼쪽에 줄번호를 나오게 한다. set smartindent: tab-자동맞춤을 해준다. (코딩하는 사람은 알 수 있을 듯)set hlsearch: /[검색어] 형식으로 vi 내에서 검색을 할 때 match 된 문자열의 전경/배경색을 변경해서 알아 보기 쉽게 해준다. highlight search 의 약자일 것이다. 꼼수로..
ar : object file 을 하나로 묶기 만약 a.o 와 b.o 의 두 object 파일을 하나로 묶고자 할 때는 ar 명령어를 사용할 수 있다. 사용법은 다음과 같다. ar rsv target_file file1 file2 [...] 만약 위와 같은 상황이라면, ar rsv ab.a a.o b.o 로 하면 a.o 와 b.o 가 ab.a 에 모두 들어가게 된다. 따라서 a.o 와 b.o 를 사용하여 link 를 할 때는 g++ -o test test.cpp ab.a 처럼 a.o 와 b.o 대신 ab.a 를 써주면 된다. 이 때 .o 대신 .a 를 접미사로 붙여주는 것은 이처럼 합해진 object 파일이라는 것을 알리기 위한 관례이다. ar 은 archive 의 약자. 왜 이런 경우가 필요하느냐 하면, 다른 사람이 작성해 놓은 파일들을 하나로 묶..
/'`'` 제목이 좀 이상하긴 한데, 정확하다. 저건 vi(vim) 에서 highlight search 를 했을 때, 이제 high-light 를 끄려 할 때 사용하는 구문이다. 즉, high-light 를 해서 다음과 같이, 찾아진 부분의 색이 변했을 때, 이제 이 색을 끄고 싶을 때 위처럼 하면 '`'` 는 본문에 없기 때문에 아무것도 안 찾아지고, 그래서 high-light 를 끄는 결과가 된다. 위의 목적으로 매번 hlsearch 끄거나 켜기에는 너무 번거롭기 때문에 위처럼 한다. 사람마다 약간 다르긴 한데, 어떤 사람은 동일한 목적으로 /algoaidgasdf 이런 식으로 하기도 하더군, ㅋ.
IP 또는 사용자로 웹페이지 접속 제한하기 apache 를 사용할 때, 지정된 경로에 접근할 수 있는 사용자를 지정할 때 보통 htpasswd 로 만들어진 파일을 사용하거나 아니면 특정 IP 로 들어 온 것만 허용할 수 있다. 이 글은 지정된 IP는 제약조건 없이 접근이 가능하되 그렇지 않을 경우 사용자를 묻도록 하는 방법을 살펴 본다. 이런 방법은, 회사나 학교 내부에서 접근할 때는 그냥 되고, 외부에서 접근해야 할 때는 사용자 ID 와 암호를 넣고 접근하도록 할 때 사용할 것이다. 방법은 간단한데, htpasswd 로 만들어진 파일을 사용하거나 IP 를 열어 놓고 둘 중 어느 조건을 만족해도 된다고 설정하는 것이다. httpd.conf 파일에서 DocumentRoot 로 지정된 directory 의 접근지시자 설정 부분을 다음과 같이 바꾼다...