http://keepass.info/help/v2/setup.html#mono 의 KeePass 설명서에는 OS X에 대해서는 언급되어 있지 않지만 문제가 설명되어 있습니다.
클립 보드 :
일부 시스템에서 Mono의 클립 보드 루틴이 제대로 작동하지 않습니다. 이 경우 xsel 패키지를 설치하십시오. 경우 xsel
설치, KeePass를 ≥ 2.20 사용하는 클립 보드 작업이 유틸리티입니다.
그래서 xsel
도움이 될 것입니다. ( xsel
MacPorts ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ) 에서 구할 수 있습니다. 소스는 http://www.vergenet.net/~conrad/에서 구할 수 있습니다. 소프트웨어 / xsel / # download )
편집 : 그러나 그렇지 않습니다. 궁금 xsel
해서 Mac에서 컴파일 했습니다. 복사 / 붙여 넣기 (Portable KeePass 2.20.1로 테스트) 문제를 해결하지 못했습니다. 왜? 여기에 명시된 바와 같이 http://www.kfish.org/software/xsel/ xsel
은 X11 응용 프로그램 의 클립 보드 내용을 조작하는 도구입니다 . X11은 Linux 및 UNIX 용 그래픽 사용자 인터페이스를 제공하지만 OS X은 대신 Quartz 를 사용하며 모노도 마찬가지입니다 ( http://www.mono-project.com/WinForms#About_System.Windows.Forms 참조 ).
이 스레드 http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260에 설명 된대로 사용자 이름과 비밀번호를 클립 보드 에 복사 하는 해결 방법 이 있습니다 .
우 레카 (sic) . 2.19는 Mono를 통해 MAC에서 작업하는 복사 붙여 넣기 경로입니다! 사용자 이름을 복사하는 버튼과 암호를 복사하는 버튼이 작동합니다 !!!
위의 포스터는 이러한 버튼을 나타냅니다 (Windows에서 실행중인 것으로 표시된 휴대용 KeePass 2.20.1 (죄송합니다, 근처에 Mac 없음)).
사용자 이름을 복사하는 경우 :
비밀번호를 복사하는 경우 :
편집 :
xsel
누군가 OS X에서 필요로하는 경우를 대비하여 컴파일 방법을 공유하고 싶습니다 .
http://support.apple.com/kb/HT5293 에서 X11을 설치 하십시오 (OS X 10.8 "Mountain Lion"사용자에게만 해당).
심볼릭 링크 헤더에서 라이브러리 파일 /opt/X11/include/X11
을 /usr/local/include/X11
과에서 /opt/X11/lib
에 /usr/local/lib
(또는 당신이 심볼릭 링크 수 /usr/include
과 /usr/lib
) :
$ sudo ln -s /opt/X11/include/X11 /usr/local/include/X11
$ for lib in $(ls /opt/X11/lib/lib*); do sudo ln -sf $lib /usr/local/lib; done
그렇지 않으면 파일을 찾을 수 없거나 누락 된 파일에 대해 많은 오류가 발생합니다. 비표준 X11 디렉토리를 옵션으로 ./configure
성공하지 않고 전달하려고했습니다 .
http://www.vergenet.net/~conrad/software/xsel/#download 에서 다운로드하여 예를 들어 데스크탑으로 추출하십시오.
gcc
플러스 라이브러리 가 필요합니다 . Xcode를 설치 한 다음 Xcode> Preferences> Downloads> Components에서 명령 행 도구를 설치하십시오.
디렉토리를 변경하고 구성하고 컴파일하십시오.
$ cd xsel-1.2.0
$ ./configure --prefix /usr/local
$ make
make all-am
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused -MT xsel.o -MD -MP -MF ".deps/xsel.Tpo" -c -o xsel.o xsel.c; \
then mv -f ".deps/xsel.Tpo" ".deps/xsel.Po"; else rm -f ".deps/xsel.Tpo"; exit 1; fi
gcc -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused -o xsel xsel.o -lX11
$ make install
xsel
명령을 사용하여 MacPorts와 함께 설치할 수도 있습니다 sudo port install xsel
. 내 설정에서는 X11 라이브러리 및 헤더 파일에 대한 심볼릭 링크가 필요 했으며 컴파일하는 데 훨씬 더 오래 걸렸습니다.
Mac에서 KeePass를 사용할 때 몇 가지 경고를 공유하고 싶습니다.
KeePass 2.18 ( http://keepass2.openix.be에서 )은 대소 문자를 구분하는 HFS +에 문제가 있습니다. ( 자동으로 실패하도록 )에 소문자 'p'를 KeePass.exe
입력하십시오 . 대소 문자를 구분하지 않는 HFS +로 포맷 된 USB 플래시 드라이브를 사용하고 거기서 KeePass를 실행해야했습니다.Keepass.exe
KeePass2.18.app/Contents/MacOS/startkeepass.sh
KeePass 2.20.1을 OS X 10.8 "Mountain Lion"에서 작동시키는 데 많은 어려움이있었습니다. 오류 메시지를 제거하지 못했습니다.
System.ArgumentException: Directory does not exists
Parameter name: path
at System.IO.FileSystemWatcher..ctor (System.String path, System.String filter) [0x00000] in <filename unknown>:0
at (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:.ctor (string,string)
at KeePass.Util.IpcBroadcast.FswStartServer () [0x00000] in <filename unknown>:0
at KeePass.Util.IpcBroadcast.StartServer () [0x00000] in <filename unknown>:0
at KeePass.Forms.MainForm.OnFormLoad (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Form.OnLoad (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00000] in <filename unknown>:0
마지막으로 범인을 찾았습니다. 버전 2.20.1 상태에 대한 릴리스 정보 ( http://keepass.info/news/n121004_2.20.1.html ) :
2.20에서 2.20.1로 변경 : Unix 계열 시스템에서 KeePass는 대부분의 임시 파일을 개인 임시 디렉토리 (바람직하게는 $XDG_RUNTIME_DIR
)에 저장합니다.
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html 에 따르면 :
$XDG_RUNTIME_DIR
사용자 고유의 비 필수 런타임 파일 및 기타 파일 오브젝트 (예 : 소켓, 명명 된 파이프 등)를 저장해야하는 기준 디렉토리를 정의합니다. 디렉토리는 반드시 사용자가 소유해야합니다 ...
XDG_RUNTIME_DIR
설정되지 않았습니다. 내가 소유 한 디렉토리로 설정했고 KeePass는 매력처럼 작동했습니다.
$ echo $XDG_RUNTIME_DIR
$ mkdir ~/.mono
$ export XDG_RUNTIME_DIR=~/.mono/; mono --desktop /Volumes/USB_Flash_Drive/KeePass-2.20.1/KeePass.exe