구글드라이브 동기화 폴더 위치 바꾸기(Google Drive)

Posted by taeho Tae-Ho
2016.12.25 20:52 운영체제

구글 드라이브는 기본적으로 사용자 계정의 홈디렉토리에 생성됩니다. 하지만 이 기본경로는 C:드라이브여서 꽤나 많은 공간을 낭비하게 되죠. 그래서 MicroSD를 노트북에 꼽고 이 MicroSD에 구글드라이브를 생성하고 싶었습니다. 하지만 구글드라이브는 최초 설치시와 설치되고 구글계정과 연결이 되어 있는 상태에서는 동기화 경로를 바꿀 수 있는 환경설정 옵션을 제공해주지 않기 때문에 일단 한번 구글계정과 연결한 이후 계정 연결 해제와 재 연결 과정을 거쳐 드라이브 동기화 폴더를 변경해야 합니다.

그 과정을 지금부터 설명합니다.

먼저 구글드라이브의 동기화를 중지합니다. 다음과 같이 구글드라이브 앱에서 마우스 우클릭을 하면 다음과 같이 팝업메뉴가 실행되죠. 오른쪽 위의 점세개를 클릭합니다.

아래 화면처럼 환경설정 창이 실행되면 가운데 탭인 "계정" 탭을 선택합니다. "계정" 탭에는 "계정 연결 해제..." 버튼이 보입니다. 클릭하면 연결을 해제하겠냐는 창이 보입니다. "연결 해제" 버튼을 클릭합니다.

아래 화면처럼 연결이 해제되었으며 더 이상 동기화 되지 않는다는 메시지가 보입니다.

창을 닫고... 다시 구글 드라이브 앱에서 마우스를 우클릭합니다. 동기화가 중지되고 구글계정 연결이 해제되어 있기 때문에 아래 처럼 "로그인" 창이 실행됩니다.

"로그인" 버튼을 클릭하면 아래 화면처럼 로그인 창이 뜹니다. 구글 계정을 입력하고...다음 창에서 비밀번호를 입력하고 로그인합니다.

비밀번호를 입력하고 다음~다음~버튼을 누르다 보면 아래 화면처럼 "설정이 끝났습니다" 라는 메시지가 나오는데.. 여기서 멈춥니다!!! 그리고 창의 아래를 보면 "동기화 옵션" 버튼이 보입니다. 이 버튼을 클릭해야 합니다. 구글은 동기화 폴더 변경 기능을 여기에 숨겨??? 놓았습니다.

"동기화 옵션" 탭에 보면 폴더 위치를 변경할 수 있는 "변경..." 버튼이 보입니다.

아래 화면처럼 다른 폴더로 변경하고 "동기화 시작" 버튼을 누르면 변경된 폴더에 동기화가 시작됩니다.

이렇게 계정 연결을 해제하고 다시 연결하는 과정에서 동기화 폴더를 변경한 뒤에는 다시 계정 연결을 해제하기 전까지는 동기화 폴더를 다시 변경할 수 없습니다.


신고
이 댓글을 비밀 댓글로

Hyper-V에서 Windows 7 가상머신 생성하기

Posted by taeho Tae-Ho
2016.09.12 15:00 운영체제

앞의 포스트에서 Hyper-V를 활성화하고 가상머신에서 인터넷 연결을 위해 가상 스위치를 생성하는 방법을 설명했습니다. 이제 Windows 7 가상머신을 생성하고 인터넷에 연결하기 위한 작업을 진행합니다.

먼저 Hyper-V 관리자를 실행하합니다.

아래 화면처럼 "새로 만들기" 메뉴에서 "가상 컴퓨터(M)"을 선택하여 실행합니다.

가상 컴퓨터 만들기 마법사가 실행됩니다. 마법사가 시키는 대로 진행하면 됩니다. 참...편합니다.

가상 컴퓨터 이름으로 CUK를 지정했습니다. 그리고 가상 컴퓨터가 사용할 경로를 지정합니다. 공간이 충분한 위치를 지정하라고 친절하게 경고하고 있죠. 최소 10G 이상 여유가 있는 곳을 지정하는 것이 좋습니다. 설치할 운영체제의 종류와 가상 컴퓨터에 어떤 프로그램을 설치하느냐에 따라 공간의 최소 필요량은 다릅니다.

가상 컴퓨터 기술이 발전하면서 가상머신의 유형이 1세대와 2세대로 나뉩니다. 노트북이 UEFI 펌웨어이고 설치하려는 가상머신이 모두 64bit 라면 2세대를 선택하는 것이 좋습니다. 여기서는 그냥....1세대를 선택했습니다. 32bit 윈도를 설치할 거거든요.

가상머신이 사용할 메모리(RAM)의 양을 지정합니다. 제 노트북은 8G 램이므로 2G 정도를 가상머신에게 할당합니다.

다음에서는 연결...즉 어떤 가상 스위치를 지정할지를 정합니다. 나중에 변경도 가능합니다. 앞의 포스트에서 CUK라는 가상 스위치를 만들었습니다. 그 스위치를 선택합니다.

가상머신이 저장될 가상 하드디스크의 크기를 선택합니다.  

다음은 가상머신을 설치할 운영체제 미디어를 선택합니다. CD드라이브에 설치할 운영체제 CD나 DVD를 넣었다면 실제 CD/DVD 드라이브를 선택하고 ISO파일을 갖고 있다면 아래와 같이 해당 ISO 파일을 선택해줍니다.

현재까지 선택한 가상머신 설정을 확인합니다. 마침을 누르면 가상머신이 만들어집니다.

아래와 같이 CUK라는 가상 컴퓨터가 만들어졌습니다. 가상스위치 이름도 CUK고 가상 머신이름도 CUK입니다. 이름은 같아도 관계 없습니다. 여기까지 진행된 이 가상머신은 부팅되지 않고 꺼져있는 상태입니다.  그 가상머신을 켜기 위해서는 CUK 가상 컴퓨터를 선택하고 오른쪽 아래에 보이는 "시작"을 선택해야 합니다.

"시작"을 누르면 아래 화면처럼 검은 화면이 작게 표시됩니다. 그리고 가상 컴퓨터 CUK의 상태가 "실행 중"으로 바뀌고 CPU 사용율과 사용중인 메모리의 용량 그리고 작동 시간이 표시됩니다. 화면은 어디 있냐구요??? 

화면을 보기 위해서는 "종료" 버튼 위에 보이는 "연결..." 버튼을 눌러야 합니다.

"연결..." 버튼을 누르면 아래 화면처럼 가상 머신의 실제 실행화면이 보입니다. Windows 7 설치 화면이 떠있죠? 위에서 설치용 ISO 파일을 선택해 두었기 때문에 해당 ISO 이미지로 부팅되어 설치 화면이 표시된 것입니다. 여기서부터는 Windows 7 설치 과정과 동일합니다.

다음과 같이 설치를 진행합니다.

설치가 완료되면 리부팅이 되고 설치된 Windows 7으로 부팅됩니다.

그 다음에 할일은 네트워크 설정입니다.

다음과 같이 가상머신에서 이더넷 설정으로 들어가 앞에서 지정한 가상 스위치의 이더넷인 vEthernet (CUK)와 동일한 대역의 사설 고정 IP를 지정하면 됩니다.

앞에서 가상 스위치의 vEthernet (CUK)에 192.168.200.1 을 부여했습니다. 이 IP와 동일한 대역의 IP인 192.168.200.10 을 가상머신인 Windows 7에 부여한 화면입니다. 그리고 DNS도 설정해주어야 합니다. 여기서는 KT의 DNS 주소를 입력하였습니다.

위와 같이 설정을 완료하면 Hyper-V에 설치한 Windows 7 가상머신에서 인터넷이 가능해집니다.

신고
이 댓글을 비밀 댓글로

Hyper-V의 가상 스위치 만들기 (Windows 10 기준)

Posted by taeho Tae-Ho
2016.09.12 14:30 운영체제

바로 앞의 포스트에서 Windows 10의 Hyper-V를 활성화 시키는 방법에 대해 포스팅했습니다.

하이퍼V를 이용해 만든 가상머신에서 인터넷을 사용하기 위해서는 Hyper-V 관리자에서 최초의 가상머신을 만들기 전에 가상 스위치 라는 것을 만들어주어야 합니다. 그리고 가상 스위치에 생성된 이더넷에 IP도 부여해주어야 합니다. 

 먼저 아래와 같이 Hyper-V 관리자를 실행합니다. 그리고 화면의 왼쪽에 보이는 "작업" 화면에서 "가상 스위치 관리자..."을 실행합니다.

가상 스위치 관리자에서 아래 화면처럼 "내부"를 선택하고 "가상 스위치 만들기"를 실행합니다.

가상 스위치는 외부, 내부, 개인 세개의 유형으로 만들 수 있습니다. 간단히 설명하면 다음과 같습니다.

  • 외부 : 브릿지 방식입니다. 노트북이나 컴퓨터에 물리적인 이더넷 포트와 대등한 가상 이더넷을 만듭니다. 따라서 노트북이나 컴퓨터의 이더넷 포트가 공유기에서 IP를 부여받을 때 여기서 만들 가상 스위치의 이더넷에도 IP를 추가로 부여받습니다. 이동이 잦거나 외부에서 가상머신을 통해 인터넷을 사용해야 한다면... 절대 외부를 선택하지 않아야 합니다. 
  • 내부 : 노트북 내부에 고유의 가상네트워크를 만듭니다. 내부를 선택하면 여기서 만들어진 가상 스위치는 노트북 외부에서 보이지 않습니다. 집에 공유기를 설치하면 외부에서 공유기 안쪽에 존재하는 PC들을 스캔할 수 없듯이 노트북 내부의 가상 머신을 외부에서 인식할 수 없습니다. 내부를 선택하면 노트북이 공유기 역할을 수행하여 노트북에 생성한 가상머신의 IP를 변경할 필요없이 외부에서 인터넷을 사용할 수 있습니다.
  • 개인 : 내부와 마찬가지로 노트북 내부에 고유의 가상머신을 만들지만 외부로 나갈 수 없는 완전하게 폐쇄된 네트워크를 만듭니다. 따라서 노트북의 가상머신에서 노트북에 연결된 인터넷을 통해 인터넷에 접속할 수 없습니다.

확인을 누르고 다음과 같이 가상 스위치의 이름을 지정합니다.

여기에서는 CUK 라고 이름을 붙였습니다. 그리고 "내부 네트워크"를 선택합니다. 그리고 확인을 누릅니다.

위와 같은 작업을 통해 가상 스위치를 만들면 아래 화면처럼 노트북의 네트워크 연결 설정에 vEthernet (CUK) 라는 Hyper-V Virtual Ethernet Adapter가 생성됩니다.

이제 노트북의 Wi-Fi가 인터넷에 연결되면 vEthernet(CUK)가 Wifi를 통해 인터넷에 접속할 수 있도록 다음과 같이 공유 설정을 해줍니다.

다시한번 설명하면 Wifi 어댑터가 인터넷에 연결되면 그 연결을 vEthernet (CUK)가 이용하여 다음 포스트에서 생성할 가상머신이 인터넷에 접속할 수 있도록 설정해주는 것입니다.

공유설정이 끝나면 vEthernet (CUK)에 사설 IP를 아래와 같이 부여합니다. 여기에서는 192.168.200.1 을 부여했습니다만 편한대로 부여하면 됩니다. 단, 다음에서 만들 가상머신에게도 같은 대역의 IP를 부여해주어야 합니다. (네 자리 중 끝자리만 다른 IP)

 여기까지 설정하면 Hyper-V의 가상 스위치 설정작업도 완료됩니다.

다음은 Windows 7 ISO 파일을 이용해 Windows 7 가상머신을 만들고 인터넷에 접속하는 단계를 진행합니다.

신고
이 댓글을 비밀 댓글로

Windows 10의 HyperV 활성화 하기

Posted by taeho Tae-Ho
2016.09.12 14:00 운영체제

서버보안 관련 일을 하다 보면 VMWare나 Hyper-V를 이용해 노트북에 리눅스나 윈도 서버를 가상머신으로 구동할 일이 자주 생깁니다. 그래서 이 블로그의 앞쪽 글을 보면 VMWare, Hyper-V, VirtualPC등 가상화 프로그램에 대해 많은 포스트가 있는데요. 이번엔 Windows 10의 HyperV 사용법 입니다.

이전의 Hyper-V와 크게 다르지는 않습니다.

일단 HyperV는 CPU제조사인 Intel에서도 우선순위가 높은 지원 기능 중 하납니다. 그래서 HyperV를 사용하기 위해서는 컴퓨터의 바이오스에서 관련 기능을 활성화 해주어야 합니다. 이 이야기인 즉슨... CPU 수준에서 가상화를 지원한다는 의미이며 이는 가상화의 성능이 단순히 운영체제의 프로그램 레벨에서 구현하는 것 보다 훨씬 좋아질 수 있다는 의미이기도 합니다.

일단... 다음과 같이 노트북 혹은 컴퓨터의 바이오스에서 "Intel(R) Virtualization Technology"와 비슷한 항목을 찾아 Enable 합니다. 제 노트북의 경우 LG 그램인데 이 항목 하나만 Enable 하면 됩니다. 하지만 다른 바이오스의 경우 VT 로 시작하는 다른 항목도 있을 수 있습니다. 보통은 하나 혹은 두개 정도만 Enable 하면 됩니다. 만약 이 항목이 없다면 CPU 혹은 메인보드에서 가상화를 지원하지 않는 것입니다.

일단 바이오스 설정을 성공적으로 마쳤다면 Windows 10을 시작하고 로그인한 뒤 제어판으로 이동합니다. 그리고 Windows 기능 켜기/끄기를 찾아 아래 처럼 Hyper-V 항목을 찾습니다. 처음은 V 체크가 되어 있지 않습니다. 아래 화면처럼 두 항목을 모두 V 체크 합니다.

만약 Hyper-V 항목이 보이지 않는다면....

포기하세요. 현재 사용중인 Windows 10에서 Hyper-V를 지원하지 않는 겁니다. 아마도 Pro 버전 아래 즉 Home 버전에는 Hyper-V가 포함되어 있지 않습니다. VMWare난 Virtual PC를 별도로 설치하여 사용하여야 합니다.

위 두 항목을 체크하고 확인 버튼을 누르면 한참 뭔가를 작업하고 리부팅하라고 합니다.

리부팅 하면 위 화면처럼 설정을 진행합니다. (사진 속 인물은 누굴까요?????)

모든 작업이 끝나고 나면 아래 화면처럼 Hyper-V 관리자가 메뉴에 보입니다.

가상 머신을 만들 준비는 끝났습니다.

다음 포스트에서는 가상머신을 만들고 게스트 머신인 가상머신에서 호스트 머신인 노트북의 인터넷 연결을 통해 인터넷을 나가기 위한 가상 스위치를 만드는 방법에 대해 설명합니다.


신고
이 댓글을 비밀 댓글로

VMWare Workstation Player 12.1 에서 NAT IP 변경하기

Posted by taeho Tae-Ho
2016.03.26 20:34 운영체제

벌써 몇년이 지났지만.... VMWare Player에서 NAT를 설정하는 방법을 포스팅한 적이 있습니다. (http://blogger.pe.kr/227)


그리고 어느덧 시간이 흐르고 흘러 VMWare Player가 VMWare Workstation Player로 이름이 바뀌었고 버전도 어느새 12.1 까지 판올림되었습니다. 그럼에도 불구하고 기본적인 VMWare의 컨셉은 바뀌지 않았습니다.



예전과 마찬가지로 VMWare Workstation Player를 설치하면 가상 네트워크의 사용을 위해 두개의 기본적인 가상 네트워크 카드를 생성합니다. 



그리고 NAT에 VMNet8이 사용되는 것도 예전 버전과 동일합니다. 그리고 이 네트워크 카드의 IP는 기본적으로 192.168.234.1 인가하는 IP가 설정되어 있습니다. 


만약 이 IP를 그대로 쓴다면 NAT로 설정되어 설치된 가성머신에서 인터넷의 사용이 문제 없을 것 같습니다. 이 IP에 대해 NAT 설정 시 사용할 Gateway가 지정되어 있기 때문입니다.


하지만 이 IP를 사용할 수 없다면 다음의 과정을 거쳐 원하는 내부 네트워크 설정으로 변경해야 합니다.


먼저 VMNet8의 IP를 아래와 같이 네트워크 속성 창을 실행하고 설정합니다. 아래 화면에서는 192.168.110.1 로 지정하였습니다. 당연히 가성머신의 IP도 192.168.110.x로 설정하여야 합니다. 다만 192.168.110.2 의 IP는 사용하지 마시길 바랍니다. NAT 사용 시 방화벽IP가 2번을 사용하기 때문입니다. 만약 별도로 원하는 네트워크를 지정하고 싶다면 원하는 IP 대역으로 변경하여 지정합니다.



그리고 VMWare Workstation Player에는 포함되어 있지 않은 vmnetcfg.exe 라는 설정 프로그램을 설치해야 합니다. 이 파일은 VMWare Workstation 버전부터 함께 설치되고 Player에는 포함되어 있지 않습니다. Workstation을 설치하고 이 파일을 복사해 둔 뒤 Workstation을 삭제하고 Player를 설치한 뒤 Player 설치 경로에 붙여넣기 해야 합니다. 


(예전엔 설치파일이 extract 되었었는데 설치과정을 제외하고 파일만 추출하는 extract 옵션이 잘 동작하지 않는 듯 싶습니다. 웬일인지 extract가 되지를 않습니다.)


그런 복잡한 과정을 거치기 싫다면 아래 첨부파일을 다운로드 받아 압축을 해제하고 Vmware Workstation Player 경로에 붙여넣기한 뒤 관리자 권한으로 실행하면 됩니다.


vmnetcfg.zip


아래와 같이 Virtual Network Editor가 나타나면 VMNet8을 선택한 뒤 아래 화면과 같이 설정하면 됩니다. 


신고
이 댓글을 비밀 댓글로

리눅스 민트의 기본 텍스트 편집기 gedit 에 FTP 플러그인 적용하기

Posted by taeho Tae-Ho
2016.03.21 20:00 운영체제

이따금씩 리눅스 서버에 구축되어 있는 웹페이지의 소스를 수정할 일이 생기곤 합니다. 

윈도의 경우 울트라에딧, 에딧플러스 등등 익숙한 텍스트 편집기들이 FTP클라이언트 기능을 갖고 있어 소스를 궂이 PC에 다운로드 하지 않고도 서버에 접속하여 편리하게 수정할 수 있습니다. 


하지만 리눅스에는 그런 가벼우면서도 편리한 도구가 흔치 않은 듯 합니다.  

그러다 찾은 방법이 리눅스 민트에 기본적으로 포함되어 있는 gedit의 플러그인 기능입니다. gedit의 플러그인 중에 ftp 클라이언트 기능을 확장시켜주는 놈이 있습니다. 하지만 역시나... 플러그인만으로 동작하는 것은 아닙니다. 리눅스 민트의 기본 파일 탐색기인 니모(Nemo)와 (우분투에서는 노틸러스와) 연동되어 동작하네요.


그 방법을 지금부터 기록합니다.


먼저 gedit에서 사용할 ftp클라이언트 플러그인을 설치합니다. 설치 과정은 아래의 명령을 하나씩 차례대로 실행해주면 됩니다.


sudo apt-get install subversion

mkdir -p ~/.gnome2/gedit/plugins

cd ~/.gnome2/gedit/plugins

svn checkout http://gedit-ftp-browser.googlecode.com/svn/trunk/ ftp-browser

mv ftp-browser/FTP.gedit-plugin ftp-browser/FTP.py .

sudo rm -r ftp-browser/


관련 홈페이지는 요기...입니다.  https://code.google.com/archive/p/gedit-ftp-browser/


모두 설치가 되었으면 이제 민트리눅스의 기본 파일 탐색기인 Nemo를 실행합니다. 우분투라면 노틸러스를 그냥 실행하면 됩니다. 그리고 다음과 같이 주소창을 보이게하고 ftp 혹은 sftp 서버의 주소를 다음과 같이 입력합니다. 포트번호를 변경했다면 아래 사진처럼 주소 끝에 : 를 붙이고 포트번호를 입력하면 됩니다.



주소를 입력하고 조금 기다리면 아래 화면처럼 사용자 계정과 비밀번호를 입력하라고 합니다. 당연히 입력해야겠죠?? 입력 후 또 잠시 기다립니다. 기다림의 시간은 조금 길 수도 있습니다.



아래 사진처럼 로그인이 완료되고 홈디렉토리가 보입니다. 그리고 왼쪽 창 하단에 접속된 서버명이 "네트워크" 항목에 보입니다.



그런데 이 서버는 리부팅하거나 로그아웃/로그인하면 해당 서버 정보가 "네트워크"에서 사라집니다. 그래서 다음 화면과 같이 해당 서버를 "책갈피"에 스크랩해 두어야 합니다. 그러면 다음번 접속시에는 서버 접속 1번만 인증해주면 됩니다.



이제 gedit를 실행합니다.

그리고 "보기" 메뉴에서 "가장자리 창" 메뉴를 클릭합니다. 그러면 아래 화면처럼 좌측에 디렉토리 브라우징 창이 보입니다. 그리고 Nemo 탐색기에서 등록했던 서버가 보입니다.



쭉~~찾아 들어가면 아래 화면처럼 서버내의 소스파일을 열어 수정하고 저장할 수 있습니다.



그런데...한가지 단점은...

접속이 끊기거나 리눅스 민트에 로그아웃, 로그인하면 Nemo 탐색기에서 다시 한번 접속을 해줘야 한다는 것입니다.

접속 부분이 조금 번거롭긴 하지만 보안을 생각하면 그점이 장점이 될 수도 있을 것 같습니다.

신고
이 댓글을 비밀 댓글로
  1. 지막 편집기 실행화면은 윈도우 편집기 못지 않아보입니다 리눅스에서도 이런 편집기가 있었군요 ssh도 될지 궁금해 집니다
    • 네..SSH로 접속하는 SFTP도 잘 됩니다. 저 화면도 SFTP로 접속한 겁니다. ^^ 함 써보세요~~

리눅스 민트의 발열 관리를 위한 최대 클럭 제한하기 (노트북에 리눅스 설치)

Posted by taeho Tae-Ho
2016.03.20 17:45 운영체제

LG의 노트북 브랜드인 "그램"은 그 인기만큼이나 에쁘죠. 게다가 얇고 무게도 매우 가볍습니다. 지금까지 구린 삼성이나 기타 다른 노트북(맥제외)만 보다 그램을 보면 눈이 띠용~~하고 커집니다. 


하지만 그 얇기와 무게를 만들다 보니 "발열"을 제대로 잡지 못한 듯 합니다. 그래서 그14인치 그램을 처음 사고 설정한 것 중 하나가 바로 CPU클럭 제한입니다. (관련 포스트 보러가기 : http://blogger.pe.kr/495)

윈도 OS를 사용할 때는 위 포스트와 같이 CPU의 클럭수를 제한하면 발열이 확연히 줄어듭니다. 당연히 최대 성능도 조금 낮아집니다. 예쁜 그램을 사용하기 위해 감수해야 하는 부분 중 하납니다. T.T


하지만 리눅스 민트를 설치한 지금..  리눅스 민트의 시스템관리에는 그런 기능 따위는 제공하지 않고 있습니다. (뭐니뭐니 문제가 많아도 윈도가 참 대단함을 느끼고 있습니다. 수 없이 많은 고객의 요구사항을 반영한 결과일테니까요..)  그런데 웹서핑 정도가 아닌 가상머신으로 윈도를 구동하고 워드나 파워포인트를 사용하면 발열이....우~~~ 무섭습니다. 키보드 상판이 뜨끈~뜨끈하다 못해 뜨거움이 느껴질 정도 입니다. 


제가 좀 기계의 열에 예민하다는 점을 감안해주시길 바랍니다. 어떤 이는 "뭐 이정도 갖고 그러냐..."고 하는 이야기도 듣습니다. 어찌됐든...

도저히 그대로는 사용하지 못할 듯 해서 또 구글링을 했습니다. 역시나 방법이 있습니다. 다만 쉘 스크립트를 만들어야 했습니다. 그 과정을 기록해 둡니다.


제가 사용하는 LG 그램 14z950 모델은 CPU로 2.7GHz까지 지원하는 Core i5-5200U 가 장착되어 있습니다. 기본이 2.20GHz까지인데 터보부스트를 사용하면 2.70GHz까지 올라가는 것 같습니다. 리눅스 민트에서 다음의 명령을 사용해 확인해도 2700MHz까지 지원되는 CPU임을 확인할 수 있습니다.


먼저 현재 CPU의 동작 클럭을 모니터링하는 스크립트 입니다. 간단합니다.



이 스크립트를 파일로 저장하고 실행하면 다음과 같이 각 코어별로 동작하는 클럭수가 시시각각 변하는 것을 볼 수 있습니다. 



processor 0에서부터 3까지 4개의 코어가 동작하며 각각 다른 클럭에 맞춰 동작하고 있는 것을 알 수 있습니다. 화면엔 거의 비슷하게 보이지만 실제로는 800에서부터 2699 정도까지 매우 다이나믹하게 동작합니다.


명령어나 건드리는 파일은 따로 소개하지 않고 제가 사용하기 위해 만든 스크립트를 바로 공개합니다. 이 스크립트는 scaling_max_freq라는 파일을 건드립니다.



이 스크립트를 실행하면 물어봅니다. 최대 CPU 클럭을 얼마로 맞추겠냐고 말입니다. 2GHz, 1.5GHz, 1GHz 셋 중 하나를 선택할 것을 요구합니다. 만약 수치를 다르게 하겠다면 case 문 안의 echo 에서 숫자를 바꾸면 됩니다.


이 스크립트를 통해 1.5GHz로 CPU 클럭을 제한하면 다음과 같이 1.5GHz 이상으로 올라가지 않는 것을 확인할 수 있습니다.



이 스크립트는 발열 때문에 사용하게 되었지만 외부에서 전원이 없는 환경에서 배터리타임을 늘려주기 위해서도 사용할 수 있습니다. 노트북의 배터리 사용시간에 가장 큰 영향을 주는 것이 바로 CPU클럭이기 때문입니다. 당연히 액정의 밝기와 HDD의 빈번한 액세스도 큰 영향을 주는 요소지요.

신고
이 댓글을 비밀 댓글로

버추얼박스(VirtualBox)에 설치한 운영체제에서 USB 메모리 인식시키기

Posted by taeho Tae-Ho
2016.03.19 22:47 운영체제

오늘은 리눅스 민트 17에 설치한 버추얼박스에서 구동되는 윈도에 USB를 인식시켜야 할 필요가 있었습니다. 사실 보통 USB라면 리눅스에 마운트하고 버추얼박스에서 실행되는 윈도에서 네트워크 드라이브로 연결하면 그다지 속도저하를 느끼지 않고 사용할 수 있습니다. 


하지만 윈도에서 사용할 때 비트라커(bitlocker)로 암호화된 USB 메모리는 리눅스에서 사용할 수 없습니다. 때문에 버추얼박스에서 실행되는 윈도에 직접 마운트해야 비트라커 암호를 입력해 접근이 가능합니다. 그래서... 반드시 버추얼박스에서 실행되는 윈도에 USB 메모리를 인식시켜야 했습니다.


VMWare는 기본적으로 가상머신에 USB를 인식시킬 수 있는데 버추얼박스는 뭔가...추가적인 작업이 필요합니다.


먼저 "장치" 메뉴에 가면 가장 아래에 보이는  "게스트 확장 CD 이미지 삽입" 메뉴를 클릭합니다.



그러면 CD롬 드라이브에 아래와 같은 "VirtualBox Guest Additions" 설치 프로그램이 보입니다.



이 VirtualBox Guest Additions는 버추얼박스가 설치된 리눅스에 설치하는 Oracle VM Extention Pack과는 달리 윈도 가상머신 내에 설치되는 Guest OS용 확장팩이라고 생각하면 됩니다.



이 게스트 OS용 추가 팩을 설치한 뒤 게스 OS인 윈도를 리부팅 하여야 합니다. 그리고 나서 다시 부팅한 뒤 아래 화면처럼 "장치"-"USB" 그리고 "USB 설정" 설정 메뉴를 클릭합니다. 이 때부터 호스트 OS인 리눅스 민트에 인식된 USB 장치들의 목록이 보입니다.



이 USB 설정 메뉴에 간 뒤 USB컨트롤러를 사용하도록 설정합니다. USB3.0 포트가 있는 노트북이나 데스크탑 컴이라면 3.0까지 사용할 수 있도록 체크하고 아래 화면처럼 USB장치필터 우측의 + 표시를 눌러 게스트 OS에서 사용할 USB 장치를 선택하여 필터에 추가해줍니다.


위 화면에서는 ASMedia AS2115라는 외부 USB 컨트롤러를 추가하는 모습니다. 이 노트북에는 이미 SanDisk Extreme USB 장치가 사용될 수 있도록 필터에 등록되어 있는 것을 알 수 있습니다.



그리고 나서 게스트 OS인 윈도를 구동한 뒤 호스트 노트북에 꼽혀있는 USB 장치를 게스트 OS인 윈도에 마운트하기 위해 하단의 USB포트 아이콘을 클릭하여 마운트할 USB 장치를 선택하는 화면입니다.


이렇게 한 뒤 탐색기를 실행하여 살펴보면 새로운 USB 메모리가 드라이브로 인식되어 접근이 가능하게 됩니다.

신고
이 댓글을 비밀 댓글로

리눅스 민트. 터치패드 Disable 시키기

Posted by taeho Tae-Ho
2016.03.18 20:30 운영체제

윈도 8.1이 설치되어 있던 노트북에 리눅스 민트를 설치한지 일주일이 되어갑니다.


LG 그램 노트북에 리눅스 민트 설치 및 사용기 http://blogger.pe.kr/555 


처음엔 꽤나 불편할 거라 생각했는데 편의성...측면에서 큰 기대를 안해서 그런지 그럭저럭 쓸만합니다. 오히려 윈도보다 빠릿빠릿하게 느껴질만큼 반응속도가 빨라서인지 속도 측면에서는 윈도보다 만족스럽습니다.


게다가... USB 메모리나 외장하드의 읽고 쓰기 속도가 체감상 윈도에서보다 더 빠르게 느껴집니다. 브라우저로 사용하는 크롬도 윈도에서보다 더 빠르게 동작하는 듯 합니다. 


불편한 점이 있다면 아무래도 부족한 앱이죠. 카카오톡 PC버전이나 아래아 한글, 오피스 등 리눅스에서는 구동되지 않는 애플리케이션이 많기에 버추얼박스를 통해 윈도8.1을 구동하고 심리스 모드를 종종 사용해야하는 불편함을은 어쩔 수 없는가 봅니다.


Wine과 PlayOnLinux를 설치해 카카오톡을 실행시켜봤지만 무슨이유인지 장시간 사용하다 보면 Hang 상태가 되어버리는 문제가 있네요. 어찌보면 애플리케이션가상화 솔루션인 Wine의 안정성은 만족스럽지 않습니다.


그리고 또하나의 불편함이 있습니다. 바로 노트북의 터치패드입니다.손이 삐꾸(?)인지 타이핑을 하다보면 자꾸만 터치패드를 건드려서 오타가 나곤합니다.


노트북의 터치패드를 Diable 시키는 앱을 노트북 제조사에서 제공하는데 윈도버전만 제공되지 리눅스 버전은 제공이 되지 않습니다. 혹시나 LG전자 서비스웹페이지에도 가봤지만 리눅스용 앱은 제공하지 않고 있습니다. 그래서 구글을 뒤져보니 역시나 방법이 있었습니다.


xinput 명령을 사용하면 됩니다.



위와 같이 xinput --list 명령을 실행하면 XWindows에서 사용되는 입력디바이스의 목록이 보입니다.

이중에서 Touchpad를 찾아보면 id가 13번 입니다. 이제 다시 xinput 명령을 이용해 13번 디바이스를 Disable 시키면 됩니다.



이제 터치패드가 동작하지 않습니다. 이 명령을 스크립트로 만들어 놓고 로그인할 때마다 실행시켜 터치패드를 Disable 시켰는데.... 어느날 부터인가 이 명령이 먹지를 않습니다. 그래서 확인해 보니 터치패드의 디바이스 ID가 달라져 있었습니다.


그렇습니다. 디바이스ID를 고정시켜 실행하지 않고 자동으로 ID를 찾아 Disable 시키는 두줄짜리 스크립트가 필요한 것이었습니다.


그래서 다음과 같이 스크립트... 두줄짜리.. 를 만들어 실행시켰습니다.



이제는 터치패드의 디바이 ID가 바뀌어도 정상적으로 동작합니다.

신고
이 댓글을 비밀 댓글로

리눅스 패스워드 정책 설정 (CentOS 6.6 기준)

Posted by taeho Tae-Ho
2015.12.16 15:07 운영체제

RedHat의 클론 OS인 CentOS는 클론답게 RedHat 리눅스와 90% 이상 동일합니다. 심지어 커널버전이 동일하다면 RedCastle과 같은 커널수준에서 동작하는 SW도 문제없이 실행이 될 정도입니다. 아마도...패스워드 규칙도 마찬가지이지 않을까 생각합니다.


패스워드 정책이라 함은...


비밀번호 길이는 최소 8자...

비밀번호는 영문 알파벳, 숫자(최소1개), 특수문자(최소1개)가 포함되어야 함...

비밀번호는 사용자ID가 포함될 수 없음...

비밀번호 변경 시 이전에 사용한 패스워드는 3개까지 사용 금지...


등등..

비밀번호를 만들 때 지켜야할 "최소한"의 규칙을 말합니다. 비밀번호 정책은 "최소한"의 규칙입니다. 


리눅스도 이러한 비밀번호 규칙을 설정할 수 있습니다.


예전에는 아래 화면처럼 /etc/login.defs에서 이러한 규칙을 설정할 수 있었습니다.  (지금도 설정가능한지는 모르겠습니다만...안될거라고 예상되지만..)



최근에는 사용자 계정의 비밀번호 규칙을 설정하는 것이 조금 까다로워졌습니다. 바로 유닉스와 리눅스에서 공통으로 제공하는 플러그인 형태의 사용자 인증 모듈(PAM)에서 설정하도록 하고 있습니다.


PAM 모듈의 설정은 /etc/pam.d 에서 합니다. ssh remote(telnet), vsftpd 등 서비스별로 분리가 되어 있죠. 패스워드 규칙은 원래 passwd 라는 설정파일에서 정의하게 되어 있습니다. (아래 그림)



그런데 password 규칙은 system-auth 를 포함(include) 하도록 되어 있죠. 따라서 passwd 파일이 아닌 system-auth를 봐야 합니다. system-auth를 열어보면...다음과 같이 보입니다.



패스워드 규칙을 기본값으로 사용할 땐 위 이미지에서 주석처리(#) 된 행과같이 설정되어 있고 주석문 아래라인은 없습니다. retry 허용 횟수만 설정되어 있죠.

위 라인은 패스워드 변경 시에는 pam_cracklib.so 파일에 정의된 패스워드 규칙 검사 루틴을 호출하라는 뜻입니다. SO는 SharedObject (공유객체)의 의미로서 Windows의 DLL과 유사하다고 보면 됩니다. 리눅스와 유닉스에선 "공유 라이브러리"라고 부릅니다.


어쨌든 system-auth 파일을 위와같이 변경하고 테스트해보면 비밀번호를 12자 이상으로 설정(minlen=12)해야만 비밀번호 변경이 됩니다. 


minlen과 같이 옵션으로 사용할 수 있는 항목들은 다음을 참고하면 됩니다.


Options


debug


This option makes the module write information to syslog(3) indicating the behavior of the module (this option does not write password information to the log file).


authtok_type=XXX

The default action is for the module to use the following prompts when requesting passwords: "New UNIX password: " and "Retype UNIX password: ". The example word UNIX can be replaced with this option, by default it is empty.


retry=N

Prompt user at most N times before returning with error. The default is 1.


difok=N

This argument will change the default of 5 for the number of character changes in the new password that differentiate it from the old password.


minlen=N

The minimum acceptable size for the new password (plus one if credits are not disabled which is the default). In addition to the number of characters in the new password, credit (of +1 in length) is given for each different kind of character (other, upper, lower and digit). The default for this parameter is 9 which is good for a old style UNIX password all of the same type of character but may be too low to exploit the added security of a md5 system. Note that there is a pair of length limits in Cracklib itself, a "way too short" limit of 4 which is hard coded in and a defined limit (6) that will be checked without reference to minlen. If you want to allow passwords as short as 5 characters you should not use this module.


dcredit=N

(N >= 0) This is the maximum credit for having digits in the new password. If you have less than or N digits, each digit will count +1 towards meeting the current minlen value. The default for dcredit is 1 which is the recommended value for minlen less than 10.

(N < 0) This is the minimum number of digits that must be met for a new password.


ucredit=N

(N >= 0) This is the maximum credit for having upper case letters in the new password. If you have less than or N upper case letters each letter will count +1 towards meeting the current minlen value. The default for ucredit is 1 which is the recommended value for minlen less than 10.

(N < 0) This is the minimum number of upper case letters that must be met for a new password.


lcredit=N

(N >= 0) This is the maximum credit for having lower case letters in the new password. If you have less than or N lower case letters, each letter will count +1 towards meeting the current minlen value. The default for lcredit is 1 which is the recommended value for minlen less than 10.

(N < 0) This is the minimum number of lower case letters that must be met for a new password.


ocredit=N

(N >= 0) This is the maximum credit for having other characters in the new password. If you have less than or N other characters, each character will count +1 towards meeting the current minlen value. The default for ocredit is 1 which is the recommended value for minlen less than 10.

(N < 0) This is the minimum number of other characters that must be met for a new password.


minclass=N

The minimum number of required classes of characters for the new password. The default number is zero. The four classes are digits, upper and lower letters and other characters. The difference to the credit check is that a specific class if of characters is not required. Instead N out of four of the classes are required.


maxrepeat=N

Reject passwords which contain more than N same consecutive characters. The default is 0 which means that this check is disabled.


maxsequence=N

Reject passwords which contain monotonic character sequences longer than N. The default is 0 which means that this check is disabled. Examples of such sequence are '12345' or 'fedcb'. Note that most such passwords will not pass the simplicity check unless the sequence is only a minor part of the password.


maxclassrepeat=N

Reject passwords which contain more than N consecutive characters of the same class. The default is 0 which means that this check is disabled.


reject_username

Check whether the name of the user in straight or reversed form is contained in the new password. If it is found the new password is rejected.


gecoscheck

Check whether the words from the GECOS field (usualy full name of the user) longer than 3 characters in straight or reversed form are contained in the new password. If any such word is found the new password is rejected.


enforce_for_root

The module will return error on failed check also if the user changing the password is root. This option is off by default which means that just the message about the failed check is printed but root can change the password anyway.


use_authtok

This argument is used to force the module to not prompt the user for a new password but use the one provided by the previously stacked password module.


dictpath=/path/to/dict

Path to the cracklib dictionaries.


참고로 이 정책은 system-auth를 수정하고 저장한 뒤 다음번 passwd 명령을 실행할 때 바로 적용됩니다. 리부팅이나 재로그인이 필요하지 않습니다.

신고
이 댓글을 비밀 댓글로
  1. 사실 개발자 였던 시절엔 이런 password 규칙이 너무 귀찮았습니다^^ 그래도 보안을 생각하면 이런 규칙이 적용되어 있어야지요^^
    • 운용하는 서버의 대수가 많을 수록 그 귀찮음과 불편함음 급격하게 커지죠~ ^^