1. 사용자 관리
1.2 사용자 관리 명령어
1) 사용자 생성
useradd [옵션] [사용자명]
-u : 사용자 UID 지정
-g : 사용자가 속한 주 그룹의 GID 지정
-G : 사용자가 속한 보조 그룹의 GID 지정
-d : 홈 디렉토리 지정
-m : 지정한 홈 디렉토리가 존재하지 않을 때 사용자를 생성하면서 홈 디렉토리도 같이 생성
-k : 홈 디렉토리를 생성하면서 사용자의 홈 디렉토리에 필요한 초기화 파일이 저장된 디렉토리를 지정
따로 지정하지 않으면 /etc/skel 디렉토리로 자동으로 설정
-s : 사용자 로그인 쉘을 지정
-c : /etc/passwd 파일에 주석 부분을 설정
-D : 사용자를 생성할 때 설정되어 있는 기본값을 조회
기본값을 변경할 때는 -D 옵션 뒤에 다른 옵션을 추가해서 변경
ex) useradd -u 1001 -g 0 -d /home/user01 -m -c "normal user" -s /bin/bash user01
2) 사용자 정보 수정
usermod [옵션] [사용자명]
옵션은 useradd 명령어와 같다
3) 사용자 삭제
userdel [옵션] [사용자명]
-r : 사용자의 홈 디렉토리를 사용자와 함께 삭제
1.3 그룹 관리 명령어
1) groupadd [옵션] [그룹명]
-g : 생성할 그룹의 GID 지정
2) groupmod [옵션] [그룹명]
groupadd 명령어와 똑같다.
3) groupdel [옵션] [그룹명]
1.4 패스워드 관리 명령어
1) 패스워드 설정 명령어
passwd [옵션] [사용자명]
-n : 최소 패스워드 사용일
-x : 최대 패스워드 사용일
-w : 만료일 전 패스워드 변경 경고 기간
-l : 해당 사용자 계정 잠금
-u : 해당 사용자 계정 잠금 해제
usermod -e : 만기일 지정
usermod -f : inactive일 지정
1.5 로그인 명령어
1) 사용자 전환 명령어
su - [사용자명] : 사용자로 로그인하면서 해당 사용자의 홈디렉토리에 있는 사용자 초기화 파일을 읽어서 적용
su [사용자명] : 사용자로 로그인하면서 해당 사용자의 홈디렉토리에 있는 사용자 초기화 파일을 읽지 않고 그냥 로그인
1.6 기타 사용자 관련 파일
1-1) /var/log/lastlog
사용자가 마지막으로 로그인한 시간을 기록
1-2) lastlog
마지막으로 로그인했던 기록 조회
2) /var/log/secure
로그인 실패 기록
cat /var/log/secure 명령어로 조회
실패한 경우에는 -로 표시, 성공한 경우 +를 표기한다.
2. 디스크 관리
2.1 디스크 확인
1) 파티션 확인
fdisk -l : 현재 추가된 디스크와 파티션 내용을 조회
2) 디스크 사용량 확인
df -h : 현재 디스크의 사용량을 조회
2.2 디스크 추가
1) 디스크 인식
echo "- - -" > /sys/class/scsi_host/host0/scan
2.2 디스크 파티션 설정
1) 파티션 설정
fdisk [디스크명]을 입력하면 아래와 같은 그림이 나온다
2.3 포맷(파일 시스템 생성)
1) ext 파일 시스템 생성
mkfs [파티션 이름]
2.4 마운트
1) 수동 마운트
mount [파티션명] [마운트포인트] 마운트 포인트는 특정 디렉토리
umount [파티션명] 해제
umount [마운트 포인트] 해제
umount [파티션명] [마운트포인트] 해제
디스크를 사용하기까지
1. 디스크 추가 VMware에서 추가
2. 디스크 인식 echo "- - -" > /sys/class/scsi_host/host0/scan
3. 파티션 생성 fdisk /dev/sd?
4. 포맷(파일시스템 생성) mkfs /dev/sd??
5. 마운트 mount /dev/sd?? [디렉토리명]
2) 자동 마운트
/etc/fstab
1 2 3 4 5 6
/dev/mapper/centos-swap swap swap defaults 0 0
파티션명 마운트포인트 파일시스템 파일시스템 옵션 dump 또는 fsck 설정
3. 작업 스케줄링
3.1 단일 작업 스케줄링
1) 작업 예약
at [시간]
[실행 할 명령어]
Ctrl + d
2) 작업 확인
atq 또는 at -l
3) 작업 삭제
at -r [작업번호]
3.2 반복 작업 스케줄링
1) 작업 예약
crontab -e
[분] [시] [일] [월] [요일] [명령어]
0~59 0~23 1~31 1~12 0~6
일~토
1,2
1-5
ex) 매주 금요일 새벽 3시 정각에 백업 명령어 수행
0 3 * * 6 백업
매 시간 45분마다 echo 명령어를 이용해서 "Break Time" 화면에 출력
45 * * * * echo "Break Time" > /dev/pts/0
짝수 월에 일요일마다 새벽 4시 반에 특정 명령어가 수행
30 4 * 2,4,6,8,10,12 0 명령어
매월 평일 오전 11시 45분이면 "Lunch Time"을 출력
45 11 * * 1-5 echo "Lunch Time" > /dev/pts/0
2) 작업 확인
crontab -l
3) 작업 삭제
crontab -r 에서 설정 내용 일괄 삭제
crontab -e 에서 설정 내용 삭제
3.3 접근 제어
1) 화이트 리스트 방식
/etc/at.allow 기본적으로 없으며 따로 생성해야 함
/etc/cron.allow 기본적으로 없으며 따로 생성해야 함
2) 블랙 리스트 방식
/etc/at.deny 기본적으로 생성돼 있음
/etc/cron.deny 기본적으로 생성돼 있음
*tip : allow 파일과 deny 파일이 둘 다 있을 경우 allow 파일이 우선, deny 파일은 무시
4.1 네트워크 인터페이스
1) 인터페이스 확인
ifconfig 장치 이름, 현재 상태, IP, MAC 주소 등
UP이 있으면 사용
2) 인터페이스 상태 변경
ifconfig [장치명] up 또는 down
4.2 DHCP
1) 설정 파일 수정 ( vi /etc/sysconfig/network-scripts/ifcfg-ens33)
/etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO : IP 설정 타입, dhcp, static
ONBOOT=yes
4.3 수동
1) 설정 파일 수정
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=
NETMASK=
GATEWAY=
DNS1=
2) 설정 적용
service network restart //네트워크 서비스 재시작
5. 패키지 관리
5.1 설치 파일 형식
1) 패키지 설치 *tip : 레드햇 계열(rpm 파일), 데비안(deb 파일)
rpm -ivh [패키지 파일명]
2) 패키지 확인
rpm -qa
3) 패키지 삭제
rpm -e [패키지 파일명]
4) 패키지 업데이트
rpm -Uvh [패키지 파일명]
*tip : 인터넷 상에서 파일을 받아올 때는 wget [주소] 명령어를 사용한다.
5) 의존성 확인
rpm -qR [패키지명]
패키지 관련된 의존성을 확인 가능
5.2 소스 코드
1) 패키지 설치
일반적으로 소스코드 파일은 tar.gz 형식으로 배포
tar zxvf 명령어를 이용해서 압축부터 해제
1. ./configure : 소스코드로 패키지를 설치하기 위한 여러가지 도구 및 라이브러리들이 다 있는지 확인하고
make 명령어를 이용해서 컴파일 하기 위한 환경을 만들어주는 스크립트
2. make : ./configure 로 생성된 Makefile의 내용대로 컴파일을 수행->리눅스용 실행파일 생성
3. make install : 생성된 리눅스용 실행파일을 특정 디렉토리에 설치
2) 패키지 삭제
1. make 했던 디렉토리로 돌아와서 make uninstall
ex) wget https://ftp.gnu.org/gnu/bison/bison-3.1.tar.gz
5.3 인터넷 저장소(repository)
1) 패키지 설치 *tip : 레드햇 계열(yum 명령어), 데비안(apt-get)
yum (-y) install [패키지명]
-y 옵션 추가시 묻는 문항에 모두 y로 대답
2) 패키지 삭제
yum erase [패키지명]
3) 패키지 업데이트
yum update [패키지명]
5.4 서비스 패키지 관리
1) service
service [서비스명] [보조 명령어]
start : 서비스 시작
stop : 서비스 중지
restart : 서비스 재시작
refresh : 서비스 설정 파일 적용
2) service 명령어 구버젼, 아직까지는 사용 가능
service [서비스명] [보조 명령어]
start : 서비스 시작
stop : 서비스 중지
restart : 서비스 재시작
reload : 서비스 설정 파일 적용
3) systemctl 명령어
service [보조 명령어] [서비스명]
start : 서비스 시작
stop : 서비스 중지
restart : 서비스 재시작
reload : 서비스 설정 파일 적용
5.5 런 레벨
1) 런 레벨 종류
런레벨은 숫자 또는 문자로 표현된 시스템의 부팅 상태
런레벨은 서비스와 사용자가 사용할 수 있는 자원들에 대해서 정의하고 있다.
0 : halt, 시스템 종료, 즉 런 레벨을 0으로 변경시키면 시스템은 종료된다.
1 : Single User Mode, 루트 사용자만 접속이 가능하고 시스템 복원이나, 파일시스템 점검, 패스워드 복구 등의 작업을 할 때 사용
2 : Multi User Mode, but 일부 네트워크 기능을 사용할 수 없는 상태, NFS 기능(파일 공유)
3 : Full Multi User Mode, 거의 모든 기능을 사용할 수 있다. 텍스트 유저 모드
4 : 사용하지 않는 모드
5 : 기본적으로 사용하는 모드, x윈도우가 실행된 GUI모드
6 : reboot, 시스템 재부팅
2) 런 레벨 변경
init [런레벨]
3) 현재 런 레벨 확인
who -r
*시스템 종료 : init 0, halt, shutdown
*시스템 재부팅 : init 6, reboot, shutdown -r
6.1 리눅스에서 DNS서버(bind)
1) 설치
yum install bind
2) 설정 파일
/etc/named.conf
6.2 named.conf 파일
1) 기본 설정
options {
directory "/var/named";
};
zone "sjb.com" in {
type master;
file "sjb.com.zone";
};
2) 설정 확인
named-checkconf 출력 결과가 없으면 정상
6.3 zone 영역 파일
cd /var/named/ 명령어를 이용해 디렉토리 이동후 시작
/var/named/sjb.com.zone안에서
(name) (ttl) CLASS TYPE Origin DNSMaster
;-------------------------------------------------------------------------------
@ IN SOA ns.bliss.com. root.bliss.com. (
2018100201 ;serial number
3600 ;Refresh
1800 ;Retry
36000 ;Expire
86400 );TTL
;(name) (ttl) CLASS TYPE Value
;-------------------------------------------------------------------------------
IN NS ns.bliss.com.
ns IN A 192.168.153.100
www IN A 192.168.153.100
server IN CNAME www
~
를 복사붙여넣기한다.
cat bliss.com.zone
/var/named]#named-checkzone bliss.com bliss.com.zone
으로 검사를 한다. [ok]가 뜨면된다.
공감(♥) 과 댓글은 필자에게 큰 힘이 됩니다. 잠시 1초만 내주시면 안될까요? ~~ 로그인 없이도 가능합니당 |
'클라우드 아키텍처 설계 기초지식 > 04 리눅스서버 운영 ' 카테고리의 다른 글
리눅스 서버 운영 (5) - 무인 원격 설치 서버 (0) | 2019.03.14 |
---|---|
리눅스 서버 운영 (4) - 보조 DNS설정,WEB,DB설정 (0) | 2019.03.14 |
리눅스 서버 운영 (2) - 권한변경,파일 관련 명령어, 쉘 명령어, 프로세스제어, 아카이브 압축, 사용자 관리 (0) | 2018.10.31 |
리눅스서버 운영 (1) - 기초,명령어 (0) | 2018.10.31 |
댓글