관련링크
본문
마클을 올해 5월에 직구를 통해 구입해 사용한 이후...
과거의 추억(?)을 되살려가며.. 이것저것 설정해본것 중에 가장 고생한 설정입니다. ㅠㅠ
다들 마클의 Sleep mode라고 알고 계신가요??
알고 계신다면..... 내 마클이 뒤척이지 않고 편안하게 숙면을 취하고 있는지 확인해보셨나요???
그냥저냥(?) 쓰고 계신다면 아마 엄청 뒤척이며 자고 있을껍니다 ㅡㅡㅋ
최근 옆동네였나?? 그곳에서 엄청난 더위에 마클 대쉬보드상의 온도가 50˜60도까지 올라간다는 불만글속에서..
자작나스로 갈껄 후회하는 글을 본적이 있습니다...
제 생각에는 잘때 자지못하고 끊임없이 일을 하고 있어 온도가 상승한게 아닌가 생각됩니다...
그래서 그 글을 보고 여기에 먼저 sleep 모드설정 방법(?)을 올려드립니다...
마클... 다른 나스에 비하면 싸지만... 오래써야죠.... ˆˆ;;;
활용기를 올려주시는 모든 분들이 글의 서두에 적듯이 저역시도 적어봅니다..
잘못된 혹은 어설픈 변경은 마클을 영원히 잠재우실수 있습니다...
서두가 길었습니다...
1. 제 마클버전은 "4.4.3-113" 입니다.. 즉, 1세대에서 최신버전입니다..
큰 문제는 없을 것으로 생각되지만 제가 직접 다뤄본게 아니니....
마클 3점대 버전과 요즘 판매되는 2세대에서는 내부설정이 다를수 있으니 충분히 확인해보신후 변경하세요.. ㅋ
2. 내 마클이 잘자고 있는지 확인 : /var/log/user.log
위에 보시는 내용중 "... exit standby after ..." 라는 로그가 마클이 잠자고 있다가 깨어나는 로그입니다..
다음 명령어로 확인해보실 수 있습니다
grep "exit standby after" /var/log/user.log
이 명령어의 결과가 하나도 없거나... 턱없이 적다면..... 마클이 잠들지 않고 계속 일하는 겁니다 ㅠ
근데 위 로그로만 보면 확인이 조금 어렵습니다.. 잘잤는지.. 뒤척이는지...
그래서 해외포럼(딜바 혹은 옆동네 해포가 아닌 마클공식 해포)에 있는 스크립트를 활용해 조금 제가 수정한 프로그램으로 돌려봤습니다..
형식은 "[ 시간1 ] Sleep Time - 숫자 seconds ( 시간2 ) from 시간3" 의 형태를 띄고 있습니다..
이건 "시간3"에 잠들어서 "시간1"에 깨어났고... 총 "시간2" 시간 (총 "숫자" 초) 동안 잠들어 있었다는 겁니다...
오늘은 이 글때문에 이것저것 캡쳐하느라 거의 잠들지 못하고 있는데...
근데 그전으로 가면.. 한두시간에서 최대 10시간정도씩 아주 잘~ 자고 있네요.. ^^
이전에는 50여시간동안 sleep모드인것을 본적도 있습니다.. ㅎㄷㄷㄷㄷ
마지막에 붉은 네모쳐진곳이 보이시나요??
지난 861시간동안 707시간동안의 sleep모드상태를 확인하실 수 있을실껍니다..
그럼 이게 왜 마클의 default 설정에서는 잘 동작하지 않을까요???
마클 기본설정에 sleep 모드와 관련해서 약간~ 미스난 부분이 있습니다... ㅠㅠ
기본설정으로 그냥 사용하셨던 분들은 잠들고 나서 수초에서 수십초내에 깨어나는 로그를 확인하실수 있을실겁니다. ㅋ
이제 그 설정들을 변경한 제 환경을 위주로 설명드리겠습니다...
다시 한번 말씀드리지만, 사전지식의 정도에 따라서 꽤 복잡한 작업일 수도 혹은 아주 간단한 작업일수도 있습니다.
충분히 검토후에 변경하세요~
3. init script 수정 : /etc/rc2.d/S98user-start
각자가 선호하는 에디터로 init script를 열어보세요.... (처음 수정하시는 분들은 아마 아무것도 안적혀있을껍니다..)
아래는 제 init script입니다..
이 script는 부팅시 제일 마지막에서 두번째로 수행되는 작업입니다..
즉, 파일명에서 유추하실수 있는것처럼... 부팅시 사용자 설정을 넣어 시스템을 구동시킬수 있는 파일입니다..
참고로 이파일은 /CacheVolume/user-start 파일로 심볼릭링크가 걸려있어
펌웨어 업글후에도 삭제되지 않습니다..
제 파일에 보면.. 앞부분에 (적어도 제게는) 불필요한 각종 서비스들을 중단합니다..
service라는 명령어로 제외시킬수도 있지만 언제든 다시 사용할수도 있어 저는 user-start 스크립트에
불필요한 서비스에 대한 중지 명령어를 수행했습니다.
그리고 지금 하려는 sleep모드에서의 중요한 부분은 mount 라고 되어있는 줄입니다..
해당 mount 명령어를 자신의 S98user-start 파일에 추가하세요~
저 명령어의 역할을 설명드리려면..... 엄청난 해설글이 필요하기에 자세한 설명은 생략하겠습니다 ㅡㅡ;;
간단하게는 "/ 파티션에 있는 파일 및 디렉토리에 대한 access time을 업데이트하지 마라!" 입니다.
위 script의 수정 및 저장이 끝나면...
- 본 mount 명령어를 putty 창에서 수행해주거나...
- 아니면, reboot해주시면 정상적으로 반영됩니다..
만약, 리부팅이나 명령어 수행을 통해 정상적으로 mount 명령이 수행되면...
위 화면에 붉은상자처럼, "noatime, nodiratime" 설정이 보이실껍니다..
명령어나 리부팅전에 mount라고 putty에서 입력해보시면... 위 설정이 안보이는게 확인되실껍니다..
4. cron 설정 : /etc/crontab 또는 root계정용 crontab
저는 root 계정전용 crontab을 사용하지 않습니다..
(crontab -e 명령어를 통해 스케쥴작업을 등록하는 경우)
원래는 계정별 crontab 사용하는걸 개인적으로는 선호하시만...
마클의 경우, cron 데몬이 마클의 sleep 모드를 방해한다는 것을 알고 나서는...
한눈에 cron 작업들을 보기위해 그냥 /etc/crontab을 사용합니다.. ㅠ
그래서 저는 /etc/crontab 만을 보여드리겠습니다..
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'# command to install the new version when you edit this file# and files in /etc/cron.d. These files also have username fields,# that none of the other crontabs do.SHELL=/bin/shPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin# m h dom mon dow user command#-----# 정 기 수 행 작 업 모 두 주 석 처 리 (at 2016.06.30)#-----#17 * * * * root cd / && run-parts --report /etc/cron.hourly#0 3 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )#10 3 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )#20 3 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )##-----# m h dom mon dow user command#-------------------------------# dow (Day of Week)# 0, 7 : sunday# 1 : monday# 2 : tuesday# 3 : wednesday# 4 : thursday# 5 : friday# 6 : saturday#-------------------------------## reboot at first sunday of every month00 05 * * 0 root if [ $(date +\%d) -le 7 ]; then /sbin/reboot; fi# start or stop btsync00 01 * * 1,4 root /etc/init.d/btsync restart00 10 * * 1,4 root /etc/init.d/btsync stop# update EPG for tvheadend05 10 * * 1,4 root python /etc/hts/epgxml.py -p 4 -l /etc/hts/mine.list /etc/hts/tvheadend/epggrab/xmltv.sock10 10 * * 1,4 root /etc/cron.daily/ramlog15 10 * * 1 root /etc/cron.daily/logrotate@reboot root /etc/cron.daily/apache2@reboot root /etc/cron.daily/apt@reboot root /etc/cron.daily/aptitude@reboot root /etc/cron.daily/cracklib-runtime@reboot root /etc/cron.daily/dpkg@reboot root /etc/cron.daily/mdadm@reboot root /etc/cron.daily/ntpdate@reboot root /etc/cron.daily/passwd
이런저런 주저리주저리 적혀있습니다..
여기서 핵심은...
- 시간, 일, 주, 월별로 자동수행되는 모든 cron 작업 중단
#17 * * * * root cd / && run-parts --report /etc/cron.hourly
#0 3 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )#10 3 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )#20 3 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
위 부분입니다..
필요한 작업들만 수행주기를 조절했습니다..
logrotate나 ramdisk작업은 1주에 1번 또는 2번만...
몇몇 작업들은 reboot 시에만...
그외 매시 혹은 매일 혹은 매주 혹은 매월 수행되던 마클 기본 cron 작업들은 모두 수행중단시켰습니다.
중단작업은 모두 불필요한 작업임을 제 능력한에서 확인한 작업들입니다 ㅋ
(즉, 제 능력이 부족해 보지 못한 부분이 있을 수도 있습니다 ㅠㅠ)
5. 마클을 sleep모드로 보내는 system script 수정 : /usr/local/sbin/monitorio.sh
이제 마지막 단계입니다 ㅠㅠ
마클은 monitorio.sh라는 스크립트를 통해서 주기적으로 디스크 상태를 확인해
10분간 아무작업도 하지않으면 sleep모드로 변경합니다..
해당 system script는 init 스크립트로도 구동되고 있습니다..
자세한 설명은 무궁무진하니 다 생략하고.. 수정한 부분만 보여드리겠습니다..
첫번째, 두번째 붉은박스가 수정된 부분입니다..
아... 다시보니 세번째 박스 위치가 잘못됐네요 ㅠㅠ
그냥 가겠습니다 ㅋ
세번째 박스의 오른쪽 부분에 보시면 255라는 숫자가 보이실껍니다..
이는 커서의 위치라 255 라인이라는 표시입니다..
첫번째 박스에 커서가 위치해 있으므로 255 라인으로 이동해 첫번째 박스의 내용을 추가합니다..
역시나 상세한 설명은 제끼겠습니다.. 양해 부탁드립니다. ㅠㅠ
255 라인은 제가 해당 파일 윗부분을 수정했을수도 있어 정확한 위치는 아닐수 있으므로
255 라인으로 가서 앞뒤에 있는 글자들을 보고 제 파일의 내용과 일치하는 부분에 추가하세요~
두번째 박스는 옵션입니다...
마클은 sleep모드로 진입하게되면 전면 LED가 파란색으로 꿈뻑~꿈뻑~(깜빡깜빡과는 다른 느낌적인 느낌^^)거립니다.
저는 이것도 싫어서 sleep모드 진입시 LED가 꺼지게 설정을 변경했습니다. 이게 두번째 박스입니다.
이건 선택사항이니 원하시는분만 추가하시면 될거 같습니다.
단, 원래 설정은 주석처리해야겠죠?? 변경사항 바로위에 처럼요 ㅋ
긴글이네요.. 너무나 긴글이네요 ㅠㅠ
두서없이 적다보니 이해가 되실지 모르겠습니다...
이해가 잘안되시는 부분은 댓글 주세요~~
테블릿에서 쓰다가 안되서 삽질하고 PC와서 다시쓰고 했더니..
글만 적는데 두시간정도가 걸린거 같네요 ㅠㅠ
일전에 어떤분이 마클 sleep 모드에 대해서 궁금해 하셨는데...
이제야 글올려드리네요 ㅠㅠ
아래 어떤글에서 보안관련 문의에 시간내서 정리해드리겠다고 했는데..
언제 하게될지 장담을 못하겠네요.. ㅎ
암튼 즐거운 금요일 & 주말되세요~~
PS. 참고로, 눈치빠르신분들은 눈치채셨겠지만...
마클에서는 (특히 버전 4에서는) btsync가 안되네... tvheadend는 마클에서 사용할수 없네 하시는데...
모두 가능합니다..
제가 그렇게 쓰고 있으니까요..
위 crontab 보시면 잘~ 사용하고 있는거 보실수 있으실꺼에요. ㅋ
댓글목록
|
귀중한 자료 감사합니다. |
|
나중에 시간날 때 해봐야겠네요.
|
|
헛 좋은 정보 감사합니다!~ |
|
와 자료감사합니다.
|
|
좋은 정보 감사합니다 |
|
좋은 정보 감사합니다. |
|
감사합니다 |
|
외계어 천지지만 나중에 알아먹을 길이 있겠죠
|