본문 바로가기

728x90

리눅스

리눅스 sed 명령어 sed 명령어 sed는 스트림 에디터(stream editor)로서, 텍스트 파일을 처리하고 수정하는데 사용하는 명령어입니다. 기본적인 sed 사용법 sed [옵션] '명령어' 파일명 여기서, 명령어는 주로 패턴 매칭(pattern matching)을 통해 문자열을 찾고, 이에 대해 특정 동작을 수행하는 것입니다. 예를 들어, 다음 명령어는 sample.txt 파일에서 "hello" 문자열을 "hi"로 변경합니다. sed 's/hello/hi/g' sample.txt 위 명령어에서 s는 substitute의 약자로, 문자열 대체를 수행하는 명령어입니다. 여기서 hello는 대체하고자 하는 패턴, hi는 대체할 문자열이며, g는 전체 문자열에서 패턴에 매칭되는 모든 문자열을 찾아 대체하라는 옵션입니다. 다.. 더보기
watch 명령어 watch 명령어 watch 명령어는 주기적으로 다른 명령어나 스크립트의 실행 결과를 감시하고 출력하는 유용한 도구입니다. 주로 리눅스와 Unix 기반 시스템에서 사용되며, 시스템 모니터링, 로그 파일 실시간 모니터링, 명령어 주기적 실행 등에 활용됩니다. watch 패키지 설치 watch 명령어는 일반적으로 리눅스 및 Unix 기반 시스템에 기본적으로 설치되어 있으므로 별도의 설치가 필요하지 않습니다. watch 명령어의 기본 구문 watch [옵션] 명령어 옵션 : watch 명령어의 옵션을 설정할 수 있으며, 아래에서 설명하겠습니다. 명령어 : 주기적으로 실행하고 감시할 명령어나 스크립트를 지정합니다. 주요 옵션 -n 또는 --interval : 실행 주기를 초 단위로 지정합니다. 기본값은 2초입니.. 더보기
리눅스에서 2TB 이상의 디스크를 사용하기 리눅스에서 2TB 이상의 디스크를 사용하기(GPT 파티션 설정)리눅스 시스템에서 2TB 이상의 디스크를 사용하려면 GPT(GUID Partition Table) 파티션 테이블을 사용해야 합니다. GPT는 MBR(Master Boot Record)보다 더 큰 디스크 용량을 지원하고 더 많은 파티션을 생성할 수 있는 표준입니다.1. 운영 중인 커널 버전 확인$ uname .. 더보기
snmpwalk 명령어 snmpwalk 명령어 snmpwalk는 SNMP(Simple Network Management Protocol)를 사용하여 네트워크 장치 및 시스템에서 정보를 가져오는 유용한 명령어입니다. SNMP는 네트워크 장치 및 시스템의 상태 및 구성 정보를 모니터링하고 관리하는 데 사용됩니다. snmpwalk 명령어는 특정 장치의 MIB(Management Information Base) 트리에서 데이터를 검색하는 데 사용됩니다. 테스트 환경 운영체제 버전 정보 $ cat /etc/redhat-release CentOS Linux release 8.4.2105 net-snmp-utils 패키지 설치 yum install -y net-snmp-utils snmpwalk 명령어의 기본 구문 snmpwalk [옵션].. 더보기
useradd 명령어 useradd 명령어 useradd는 Linux와 Unix 기반 운영 체제에서 사용자 계정을 추가하는 명령어입니다. 이 명령어를 사용하여 새로운 사용자 계정을 생성할 수 있으며, 필요에 따라 사용자에게 홈 디렉토리를 생성하고 기본 설정을 구성할 수 있습니다. 명령어 구문 useradd [옵션] 사용자명 일반적인 옵션 -c: 사용자에 대한 설명을 추가합니다. -d: 사용자의 홈 디렉토리 경로를 지정합니다. -g: 사용자가 속할 기본 그룹을 지정합니다. -m: 홈 디렉토리를 생성하고 기본 파일을 복사합니다. -s: 사용자의 로그인 쉘을 지정합니다. -u: 사용자의 UID(사용자 식별자)를 지정합니다. -G: 사용자가 속할 보조 그룹을 지정합니다. 사용 예시 새로운 사용자 계정 추가 (홈 디렉토리 생성하지 않.. 더보기
[리눅스] BIND(named)에서 $GENERATE 지시어를 사용하는 방법 BIND(named)에서 $GENERATE 지시어를 사용하는 방법 BIND(named)에서 $GENERATE 지시어를 사용하여 여러 개의 DNS 레코드를 생성할 수 있습니다. $GENERATE 지시어는 특정 패턴을 기반으로 DNS 레코드를 생성하므로, DNS 서버를 구성하는 데 매우 유용합니다. 기본 파일 확장자: $GENERATE 지시어 $GENERATE first-last@interval pattern first : 생성될 첫 번째 레코드의 숫자 last : 생성될 마지막 레코드의 숫자 interval : 레코드 간의 간격 pattern : 레코드의 이름 및 기타 속성을 지정하는 패턴 예를 들어, 172.20.0.0/24 역도메인(reverse domain) zonefile 생성 named.conf(.. 더보기
[리눅스] named(bind)에 geoip 기능 사용하기 named(bind)에 geoip 기능 사용하기 yum install gcc epel-release yum install zlib-devel openssl-devel yum install GeoIP GeoIP-devel yum install bind bind-utils [bind download site] http://ftp.isc.org/isc/bind9/9.10.4-P6/ cd /usr/local/src/ wget http://ftp.isc.org/isc/bind9/9.10.4-P6/bind-9.10.4-P6.tar.gz tar xfz bind-9.10.4-P6.tar.gz cd bind-9.10.4-P6 ./configure --prefix=/usr/local/bind-9.10.4-P6 --sysc.. 더보기
[리눅스] 일반유저가 1024 이하 포트를 사용하기(setcap/getcap) 일반유저가 1024 이하 포트를 사용하기(setcap/getcap) 3. Linux에서 setcap 명령으로 capabilities 설정 리눅스의 capabilities 설정을 통해서 일반 유저가 1024 이하 포트 사용이 가능하다. capabilities란 무엇일까? 전통적인 유닉스/리눅스에서는 root가 모든 권한을 가진다. 일반유저가 root의 일부 권한을 갖기 위해서는 SetUID/SetGID나 sudo 등 기초적인 방법으로 권한을 부여할 수밖에 없었다. 하지만 capabilities는 root의 권한을 세분화(커널 모듈 load/remove, 파일 소유자/소유그룹 변경, kill 권한, ping 허용(ICMP허용), 리부팅 등)하여, 일반 유저도 root의 다양한 권한을 갖도록 만든 보안 모델이.. 더보기

728x90