Cron


주기적으로 반복되는 일을 자동적으로 실행될 수 있도록 설정

관련된 데몬은 "crond", 관련 파일은 "/etc/crontab"

/etc/crontab 형식

분 | 시 | 일 | 월 | 요일 | 사용자 | 실행명령

00  05   1     *     *       root      cp -r /home/backup


At


일회성 작업을 예약

사용 예시)

예약 : #at {시간}

#at 3:00am tomorrow -> 내일 새벽 3시

#at now + 1 hours -> 1시간 후

at> 프롬프트에 예약명령어 입력 후 <Enter>

완료되면 Ctrl+D


확인 : at -l

삭제 : atrm <작업번호>


cron 실습) 매월 새벽 3시 1분에 /home 디렉토리와 그 하위 디렉토리를 /backup 디렉토리에 백업하기


1. systemctl status cron를 이용하여 cron 서비스 작동하는지 확인하기.



2. /etc/crontab 열어서 코딩하기.


 

-> 명령은 shell 파일을 만들어서 실행. (간단한 스크립트 프로그램 -> 날짜를 뽑아옴)


3. myBackup.sh 만들고 권한 조정.



4. myBackup.sh를 vi로 열어서 코딩.



5. date를 임의로 조절 후 1분후에 결과 확인.



At 실습) 내일 오전 4:00에 명령어 설정하기.


1.  apt-get -y install rdate at -> rdate랑 at 패키지 설치.


2. time 서버에서 시간가져와서 현재시간 설정후 at 명령어 입력.



-> at -l 로 at 확인 후 삭제까지 실습.


apt-get 작동원리



저장소 URL : /etc/apt/sources.list


/etc/apt/sources.list 에 vi로 접속하면 각 패키지의 경로를 미러사이트로 지정하여 apt-get을 사용 가능 하다.


국내 우분투 미러사이트

1. 카이스트서버 (http://ftp.kaist.ac.krhttp://kr.archive.ubuntu.com)

2. 다음카카오서버(http://ftp.daumkakao.com)

3. 네오위즈서버(http://ftp.neowiz.com)


 

 ftp.kaist.ac.kr

ftp.daumkakao.com

ftp.neowiz.com 

 속도

 그럭저럭

(새로운 배포판이 나오면 느려짐)

 빠름 

 평일 낮에는 최고,주말에는 최악

 이용자 수

 공식 서버이기에 매일 붐빔

 우분투, 페도라 등을 쓴다면 이쪽을 추천

 우분투, 페도라를 쓰는데 다음카카오가 맛이 가면 이쪽으로

 이용자 성향

 리눅스 초보자부터 고수까지 다양 (따로 설정하지 않으면 자동으로 이쪽으로 연결됨)

 source.list를 수정할 줄 알기만 하면 이쪽 이용

 변태

 

 비영리

 영리

 영리



미러사이트 표 출처: http://moordev.tistory.com/209 


파일의 리스트와 파일 속성


파일 허가권(Permission)
 - "rw-", "r--", "r--" 3개씩 끊어서 읽음 (r은 read, w는 write, x는 execute의 약자)
 - 첫 번째 "rw-"는 소유자(User)의 파일접근 권한
 - 두 번째의 "r--"는 그룹(Group)의 파일접근 권한
 - 세 번째의 "r--"는 그 외의 사용자(Other)의 파일접근 권한
 - 숫자로도 표시 가능 (8진수)

 chmod 명령

파일 허가권 변경 명령어
예) # chmod 777 sample.txt

파일 소유권(Ownership)
파일을 소유한 사용자와 그룹을 의미

chown/chgrp 명령
파일의 소유권을 바꾸는 명령어
예) # chown centos.centos sample.txt 
# chown centos sample.txt
# chgrp centos sample.txt

 

링크


- 파일의 링크(Link)에는 하드 링크(Hard Link)와 심볼릭 링크(Symbolic Link 또는 Soft Link) 두 가지가 있음

- 하드 링크를 생성하면 "하드링크파일"만 하나 생성되며 같은 inode1을 사용 (명령 : # ln 링크대상파일이름 링크파일이름)
- 심볼릭 링크를 생성하면 새로운 inode2를 만들고, 데이터는 원본 파일을 연결하는 효과 (명령 : # ln -s 링크대상파일이름 링크파일이름)

 

 


=> 원본파일 basefile 생성후 하드링크 파일로 hardlink를 만들고 심볼릭 링크파일로 softlink 파일 생성

inode number 확인 결과 원본파일과 하드링크 파일은 같고 심볼릭 링크 파일은 다른걸 알수 있다

두 파일의 내용은 같은걸 확인.



=> 원본파일을 다른 디렉토리로 이동시 하드링크 파일과  다르게 심볼릭 링크 파일은 내용을 읽을 수 없음.

논리적 설계를 이해

 


참고 :  https://www.youtube.com/playlist?list=PLVsNizTWUw7EoFNBhIdVFp9eT6P22hU1o&nohtml5=False


사용자와 그룹


리눅스는 다중 사용자 시스템(Multi-user) 지원.

기본적으로 root라는 이름을 가진 슈퍼계정이 있으며 모든 권한을 가지고 있음.

모든 사용자는 하나이상의 그룹에 속해 있음.

사용자 파일 위치 : /etc/passwd


/etc/passwd 를 열었을때 각 행의 의미는 다음과 같음.

사용자 이름 : 암호 : 사용자의 ID : 소속된 그룹 : 추가정보 : 홈 디렉토리 기본 셸

사용자 ID 와 그룹의 이름은 1000부터 시작 (아무 설정 안했을 시 사용자 이름과 그룹이름이 같게 생성됌.)




임의로 사용자 user를 만들고 ls명령어를 이용해 내용을 확인

-> /home/user1 와 /etc/skel 의 파일 내용이 같은걸 볼 수 있음

=> 사용자 생성시 /etc/skel 파일의 내용을 복사해서 사용자를 생성함 즉 관리자가 /etc/skel 에 파일을 만들어 놓으면 사용자가 생성할 때마다 저절로 파일을 다운로드 받게됨 (특별한 상황에 유용하게 사용가능)




이것이 우분투 리눅스다 강의 수강 도중 USB connection을 눌렀지만 연결이 안되는 현상이 발생



혹시나 해서 파일 탐색기 열었더니 USB 인식 자체가 안됌.


-> USB compatibility 를 3.0으로 변경 해주고 한 후에 USB 인식 잘 됌 (본인 USB 속성에 맞춰야 하는 듯)


ps . 영상에서는 cd /media/ubuntu/MYUSB 로 입력한 후 파일을 복붙 하지만 필자의 경우에 ubuntu까지는 경로가 맞지만 MYUSB가 아닌 USB모델명이었음

1. 시스템 종료 및 재부팅 명령어


종료하는 방법

shutdown -P now, halt -p

shutdown -h 5 (5분후에 종료)

shutdown -c (종료 취소)

shutdonw -k +10 (10분후 종료 가짜로) 서버관리자가 사용자를 내보낼때 사용


시스템 재부팅

shutdown -r now, reboot, init 6


로그아웃

logout, exit


2. 가상 콘솔


Ctrl + Alt + F7까지 지원 (7개까지 지원)

F7은 X window mode 나머지는 Terminal mode

root 사용자가 shutdown 메세지를 날리면 접속한 사용자에게 메세지가 날라감

우분투 사용자는 root 사용자가 shutdown -k 인지 -h인지 구분못하기때문에 작업 종료.

3. 런 레벨 (Runlevel)

02.jpg

ls -l /lib/systemd/system/default.target => 어떤 런레벨로 기본 setting 되어있는가 ?

ln -sf /lib/systemd/system/multi-user.target /lib/systemd/system/default.target => multi-user로 런레벨변경

========> 재부팅시 text모드로 부팅되는걸 확인 할 수 있음.


4. 자동 완성과 히스토리


자동완성 기능 = Tab

화살표 위아래 도스키를 통해 사용했던 명령어 확인

history => 여태까지 썼던 명령어 확인가능

history -c => 히스토리 삭제

에러문구

virtualized performance counters are not supported on the host CPU type.
Module VPMC power on failed. Failed to start the virtual machine.

1) 생성한 가상화서버 폴더를 엽니다.


2) ~~.vmx파일을 메모장으로 엽니다. (유형이 VMware virtual machine configuration으로 되어있습니다)


3) vpmc.enable = "TRUE"를 "FALSE"로 변경해주세요


가상운영체제가 설치되어 있는 폴더로 가서 확장자가 .lck로 끝나는 모든 폴더와 파일을 삭제하면 된다. 

오류문구 : This virtual machine is configured for 64-bit guest operating systems.

However, 64-bit operation is not possible


-> 64비트용 VMware 이미지 삽입이 안될 경 우 다음과 같은 문구 출력



Step 1: 
While rebooting the laptop, enter to the system Bios by holding ‘Function + F2’ keys
Step 2: 
Go to ‘Configuration’ tab, and look for ‘Intel Virtualization Technology’. Most probably it may disabled. (Refer the image below)

=> BIOS진입 후, Intel Virutal Technology 를 Enable로 바꾸면 됨.

참고 : http://www.smartpctricks.com/2013/05/solved-how-enable-virtualization-intel-vt-x-in-bios-lenovo-idea-pad-s400-laptop.html

+ Recent posts