All posts by RSR

vmware-modconfig for latest kernel

USB 3.0 외장하드 & 메모리를 사용하는데 있어 현재 데비안 최신커널인 3.2.0-4 에서 문제가 계속 발생하여
커널 업그레이드를 결심,

그래서 대충 3.12.15커널 받아서 빌드-> 하지만 vmware 사용에 문제가 발생
incompatible types when assigning to type ‘VMCIHostUser’ from type ‘kuid_t’ 이딴 오류가 계속뜬다….

그래서 구글링해보니까
CONFIG_UIDGID_STRICT_TYPE_CHECKS=n
를 설정하래서 설정하고 컴파일 진행 (30분 ㅅㅂ;;)

근데 계속 같은오류
왠가 싶어 봤더니 CONFIG_UIDGID_STRICT_TYPE_CHECKS 얘는
CONFIG_USER_NS 얘랑 CONFIG_NAMESPACES얘한테 의존적임
(그러니까 다 안바꿔주니까 자꾸 y로 자동으로 바껴버림, 둘다 노노 하면 is not set 으로 바껴버림)

그래서 둘다 노노 해주고 컴파일하고나니 잘된다 야호 ..

덕분에 4시간 뻘짓했네요… 컴파일만 5~6번한거같다..

SSD Trim 양날의 검

속도를 위해 SSD의 TRIM 기능을 활성화 시켰으나

데이터 복구에는 답이 없구나.

아 그는 정말 중요한 데이터였습니다..

Conclusion

SSD forensics remains different. SSDs self-destroy court evidence, making it difficult to extract deleted files and destroyed information (e.g., from formatted disks) is close to impossible. Numerous exceptions still exist, allowing forensic specialists to access destroyed evidence on SSD drives used in certain configurations.

http://articles.forensicfocus.com/2014/09/23/recovering-evidence-from-ssd-drives-in-2014-understanding-trim-garbage-collection-and-exclusions/

my vimrc

vimrc

wget "https://blog.lvu.kr/wp-content/uploads/2012/11/vimrc" -O ~/.vimrc

 

환상경님의 vimrc를 베이스로 유리한형꺼(외 다수)를 짜깁기한 나만의 버전 (2014-11-01수정)

"vim 하단에 상태 표시줄 옵션
set nu
set laststatus=2
set statusline=%<%F%h%m%r%h%w%y\ %{strftime(\"%Y/%m/%d-%H:%M\")}%=\ col:%c%V\ ascii:%b\ pos:%o\ lin:%l\,%L\ %P

"오리지널 vi와의 호환성을 없애고 vim만의 기능을 쓰게 하는 옵션
set nocp

"명령어 히스토리 옵션
set hi=1000

"백스페이스 사용
set bs=indent,eol,start

"커서의 위치를 항상 보이게 함.
set ru

"여러가지 이동 동작시 줄의 시작으로 자동 이동
set sol

"사용자 괄호 찾기를 사용한다.
set mps+=<:>

"검색어 강조 기능
set hls

"똑똑한 대소문자 구별 기능 사용
set scs

" 검색시 파일 끝에서 처음으로 되돌리기 안함
set nows

" UTF-8, euc-kr 한글문서 그냥 열기
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
    set encoding=utf-8
    set fileencodings=utf-8,cp949
endif

"탭 크기 설정 / 탭 길이 / 들여쓰기 탭 간격
set ts=4    "tabstop
set sts=0   "softtabstop
set sw=4    "shiftwidth
set noet    "탭 공백변환

"파일 형식에 따른 Syntax Highlighting 기능을 켠다
syntax on

"자동 들여쓰기를 한다.
set smartindent
set ai	    "autoindent

"C언어 자동 들여쓰기 옵션
set cindent

"붙여넣기시 들여쓰기 여부 선택 Ins키로 paste상태와 nopaste상태 전환
set pastetoggle=<Ins>

"vim Colorscheme
set bg=dark
"color desert
"color motus

"폴딩 옵션 설정
" 폴더 설정이 되어 있는 파일을 열었을때 폴더 되어 있는 레벨을 설정한다.
" 기본값 0이고 모두 폴딩된다.
set fdl=1

" 소스파일이 폴딩 되어 있을때 폴딩범위를 보여주는 컬럼의 수를 설정한다.
set fdc=1

" 닫는 괄호")", 브라켓"}"을 입력시 매칭되는 여는 괄호, 브라켓에 잠시
" 커서가 위치했다가 다시 제자리로 돌아 온다.
set showmatch

"vi 폴딩을 위한 설정 자세한 사용법은 아래 링크 참조(참고:vim editor – foldmethod)
set fdm=marker 


" 지난번 편집했던 곳으로 Jump
au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\   exe "norm g`\"" |
\ endif


"gVim 설정

"폰트 설정
if has("gui_running")
"   set guifont=DejaVu\ Sans\ Mono\ 11
"   set guifont=monospace\ 11
"   set guifont=DejaVu\ LGC\ Sans\ Mono\ 12
    set guifont=Monaco\ 9
"   set guifont=나눔고딕코딩\ 11 
"   set guifont=Monaco\ 10 
"   set guifont=monospace\ 10
"   set gfn=Fixedsys:h12:cHANGEUL
"   set gfn=굴림체:h9:cHANGEUL
endif

"gVim에서 마우스 작동 설정
if has("gui_running")
    " 마우스 모델을 popup 으로 함.
    set mousem=popup

endif

"스크롤바를 표시하지 않는다
if has("gui_running")
    set go-=l
    set go-=L
    set go-=r
    set go-=R
    set go-=b
endif

"툴바를 보이지 않게 한다.
if has("gui_running")
    set go-=T
endif

"gVim 화면 크기 설정
if has("gui_running")
    set lines=40
    set co=80
endif

"GNU screen 상이면 현재 파일이름으로 타이틀 변경
if &term == "screen"
	set t_ts=^[k
	set t_fs=^[\

	function! ResetTitle()
		" disable vim's ability to set the title
		exec "set title t_ts= t_fs="
		" and restore it to 'bash'
		exec ":!echo -ne '\033kbash\033\\'\<CR>"
	endfunction

	au VimLeave * silent call ResetTitle()
	set title
endif


"파일 확장자에 따른 차별 옵션
filetype on
filetype plugin indent on
au FileType perl,ruby,clojure,objc,python,java,c,cpp,cs,html,css,php,php4,js,css,jsp,sh set nu

"vim-ruby Setting
compiler ruby
au FileType ruby set tabstop=2
au FileType ruby set shiftwidth=2
au FileType ruby set softtabstop=2
au FileType ruby map <F2> : !ruby %

"vimClojure Setting
let clj_highlight_builtins = 1
let clj_highlight_contrib = 1
let clj_paren_rainbow = 1
let clj_want_gorilla = 1
"let vimclojure#NailgunClient="/home/khmirage/Util/clojure/vimclojure/ng"

"Key Mapping Setting
"Whitespace Line Insert Mapping
map .j o
map .k O
map .ti i	w

"To HTML
map .th : TOhtml<CR>

"Shell Script Running
au FileType sh map <F2> : !chmod +x %
au FileType sh map <F3> : !./%

"C Compiler Mapping
au FileType c map <F2> : !gcc -W -Wall -o %< %
au FileType c map <F3> : !./%<

"C++ Compiler Mapping
au FileType cpp map <F2> : !g++ -W -Wall -o %< %
au FileType cpp map <F3> : !./%<

"Mono Compiler Mapping
au FileType cs map <F2> : !mcs %
au FileType cs map <F3> : !mono %<.exe

"Python Mapping
au FileType python map <F2> : !python %
au FileType python set tabstop=8
au FileType python set shiftwidth=4
au FileType python set softtabstop=4

"Java Compiler Mapping
au FileType java map <F2> : !javac % 
au FileType java map <F3> : !java %<
au FileType java map <F4> : !appletviewer %<

"JSP -> Firefox Launch Mapping
au FileType jsp map <F2> : !firefox http://localhost:8180/lecture/%

"Objective C Compiler Mapping
au FileType objc map <F2> : !gcc -Wall -o %< % -lobjc
au FileType objc map <F3> : !./%<

"Perl excute Mapping
au FileType perl map <F2> : !perl -w %

 

EFI

ASROCK Extreme4 보드를 사용중

BIOS 인지 EFI 인지 하여튼 업데이트후 우분투 부팅불가(?) 현상에 대하여

어찌어찌 부팅해서 -_- ( 본인은 usb를 이용한 grub로 커맨드라인 부팅함 )

efibootmgr 를 해주면 리눅스(우분투)만 쏙 빠져있다.

efibootmgr –create –gpt –disk /dev/sda –part 1 –write-signature –label “Ubuntu 12.04.1” –loader “\\EFI\ubuntu\grubx64.efi”

재부팅시 정상적으로 부팅가능하였다.

http://askubuntu.com/questions/91484/how-to-boot-ubuntu-from-efi-uefi

G5 마우스 세팅 in linux

우연찮게 https://wiki.archlinux.org/index.php/All_Mouse_Buttons_Working 이페이지를 보던중

나한테 도움되는 내용이 있어서

 

로지텍 G5 마우스의 DPI 설정 g5mouse을 해주는파일이다.

wget http://piie.net/temp/g5_hiddev.c
gcc -o g5hack g5_hiddev.c
./g5hack /dev/usb/hiddev0 3

 

신형은 소스를 수정요,  #define MOUSE_G5 0xc041 to #define MOUSE_G5 0xc049 and recompile.

 

부팅시마다 DPI 올리는 버튼 누르는게 귀찮았는데

이걸 스크립트에 작성해놓으면 히히힣

 

 

혹시몰라서 소스도 업로드 해놓음.

 

5736075305.c

 

아래는 파이썬으로 같은내용 구현한거 ㅇㅇ

g5mouse.py

/usr/sbin/g5mouse.py -n  -d 1600 -l NONE /dev/usb/hiddev0

이런식으로 rc.local 등록해두면 편함 ㅇㅇ