สิ่งที่อาจแก้ไขการติดตั้ง KeePass ที่จะไม่คัดลอกหรือวางบน OS X


8

KeePass จะไม่คัดลอกและวางปล่อยให้ทำสำเนาอัตโนมัติเพียงอย่างเดียว

ผมได้ติดตั้ง KeePass 2.18 แพคเกจจาก Mac http://keepass2.openix.be/ ฉันไม่สามารถหาแพ็คเกจ Mac ล่าสุดสำหรับ KeePass ได้ดังนั้นฉันจึงแทนที่ไฟล์ทั้งหมดของแพ็คเกจนั้นด้วยไฟล์เหล่านั้นจาก Portable KeePass 2.20.1 (แพ็คเกจซิป) นั่นคือจากหน้าhttp://keepass.info/download.htmlเชื่อมโยงไปยังซิปจริง: http://downloads.sourceforge.net/keepass/KeePass-2.20.1.zip ดังนั้นฉันจึงใช้งาน KeePass 2.20.1 ได้สำเร็จ

ฉันกำลังใช้งาน Mono version 2.10.9

ฉันใช้ OS X 10.7.5 บน MacBook Pro

ฉันไม่อยากจะเชื่อเลยว่าเว็บไซต์ของ KeePass ใช้ความเข้ากันได้กับ Mac เมื่อไม่ได้คัดลอก / วาง นั่นคือฟังก์ชั่นหลักที่ขาดหายไป การค้นหาเปิดเผยว่ามีคนอื่นมีปัญหานี้ตั้งแต่ 2.18 แต่ไม่มีวิธีแก้ไขไม่มีรายงานข้อผิดพลาด

มีใครสามารถแก้ไขปัญหานี้ได้บ้าง


คุณเคยลอง KeyPass ด้วยMono 3.0หรือไม่ ฉันไม่ได้ลอง แต่อาจทำงานได้ดีขึ้น
เก่า Pro

คำตอบ:


7

เอกสาร KeePass ในhttp://keepass.info/help/v2/setup.html#monoแม้ว่าจะไม่ได้กล่าวถึง 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 / # ดาวน์โหลด )

แก้ไข : แต่มันไม่ได้ ฉันอยากรู้อยากเห็นดังนั้นฉันรวบรวมxselบน Mac ของฉัน มันไม่ได้แก้ปัญหาด้วยการคัดลอก / วาง (ทดสอบด้วย Portable KeePass 2.20.1) อย่างที่ฉันกลัวฉันต้องบอกว่า ทำไม? เพราะตามที่ระบุไว้ที่นี่http://www.kfish.org/software/xsel/ xselเป็นเครื่องมือที่จัดการเนื้อหาคลิปบอร์ดของแอปพลิเคชั่นX11 X11 มีส่วนต่อประสานกราฟิกกับผู้ใช้สำหรับ Linux และ UNIX แต่ OS X ใช้ควอตซ์แทนและ Mono ทำตามที่ฉันรับรู้ (ดูhttp://www.mono-project.com/WinForms#About_System.Windows.Forms )

มีวิธีแก้ปัญหาสำหรับการคัดลอกชื่อผู้ใช้และรหัสผ่านไปยังคลิปบอร์ดดังอธิบายในหัวข้อนี้http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :

Ureka (sic) 2.19 ของคุณอยู่บนเส้นทางที่จะคัดลอกแปะทำงานบน MAC ผ่านทาง Mono! ปุ่มของคุณเพื่อคัดลอกชื่อผู้ใช้และปุ่มของคุณเพื่อคัดลอกรหัสผ่านใช้งานได้ในขณะนี้ !!!

โปสเตอร์ด้านบนอ้างถึงปุ่มเหล่านี้ (พกพา KeePass 2.20.1 ที่แสดงบน Windows (ขออภัยไม่มี Mac ใกล้เคียง)):

สำหรับการคัดลอกชื่อผู้ใช้:

ป้อนคำอธิบายรูปภาพที่นี่

สำหรับการคัดลอกรหัสผ่าน:

ป้อนคำอธิบายรูปภาพที่นี่

แก้ไข :

ฉันต้องการแบ่งปันวิธีรวบรวมxselในกรณีที่มีคนต้องการมันใน OS X:

  1. ติดตั้ง X11 จากhttp://support.apple.com/kb/HT5293 (ใช้ได้กับผู้ใช้ OS X 10.8 "Mountain Lion" เท่านั้น)

  2. Symlink ส่วนหัวและไฟล์ไลบรารีจาก/opt/X11/include/X11ไปยัง/usr/local/include/X11และจาก/opt/X11/libไปยัง/usr/local/lib(หรือคุณสามารถ symlink ไปยัง/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ไม่ประสบความสำเร็จ

  3. ดาวน์โหลดจากhttp://www.vergenet.net/~conrad/software/xsel/#downloadและแยกตัวอย่างเช่นไปยังเดสก์ท็อปของคุณ

  4. คุณต้องมีgccห้องสมุด ติดตั้ง Xcode แล้วติดตั้งเครื่องมือบรรทัดคำสั่งจาก Xcode> การกำหนดค่าตามความชอบ> ดาวน์โหลด> ส่วนประกอบ

  5. เปลี่ยนไดเรกทอรีกำหนดค่าและรวบรวม:

    $ 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ใช้คำสั่ง ในการตั้งค่าของฉันมันยังต้อง symlinks สำหรับห้องสมุด X11 และไฟล์ส่วนหัวและส่วนที่จำเป็นมากอีกต่อไปเพื่อรวบรวม

ฉันต้องการแบ่งปัน caveats บางอย่างเมื่อใช้ KeePass บน Mac:

  1. KeePass 2.18 (จากhttp://keepass2.openix.be ) มีปัญหากับ HFS ​​+ KeePass.exeถูกพิมพ์Keepass.exe(สังเกตเห็นตัวพิมพ์เล็ก 'p') ในKeePass2.18.app/Contents/MacOS/startkeepass.sh(เพื่อไม่ให้เสียงเงียบ) ฉันต้องใช้แฟลชไดรฟ์ USB ที่ฟอร์แมตด้วยตัวพิมพ์เล็กและเล็กและเรียกใช้ KeePass จากตรงนั้น

  2. ฉันมีปัญหามากมายในการทำให้ 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
    

ป้อนคำอธิบายรูปภาพที่นี่


การติดตั้ง xsel: รุ่งโรจน์อย่างน้อยก็หามัน แต่ไม่พบ pkg ที่ติดตั้งได้และมันจะไม่รวบรวมสำหรับฉัน ต้องเพิ่ม gcc ในเส้นทางของฉัน (อย่างน้อย) ดังนั้นทางออกสำหรับฉันคือลิงค์สุดท้าย .... แต่ขอให้ฉันบอกให้ชัดเจนเกี่ยวกับส่วนที่ใช้งานได้: ติดตั้ง 2.18 pkg, คัดลอก 2.20.1 ไปแล้ว, จากนั้นกดปุ่ม (และเฉพาะปุ่มเท่านั้น, ไม่ใช่ ปุ่มลัด ctrl-C ctrl-V) ใช้งานได้ ปุ่ม ... นั่นคือสิ่งที่ฉันพลาดเมื่อฉันอ่านลิงค์นั้น (ก่อนที่ฉันจะถามคำถามนี้)
minnow

ความคิดเห็นสามารถแก้ไขได้เพียง 5 นาที ระคายเคืองมาก ต่อไป: ก่อนที่จะมีการยิงตำรวจแม็คทางลัด (ที่ไม่ทำงาน) นั้นแน่นอนว่า Command-C และ Command-V ประเภทอัตโนมัติทั่วโลก: ฉันไม่ได้ลอง XDOTOOL ฉันไม่มีทางลัดไม่มีแบบอัตโนมัติ แต่ฉันมีปุ่ม ดีพอสำหรับตอนนี้ ปุ่ม! ทำไมฉันถึงต้องผิดหวัง II มีปุ่มแน่นอน ฉันหมายถึงนั่นคือปุ่ม! "(la la Cruise ใน Rain Man: ฉันได้พุ่มกุหลาบ )
min

@minnow: ในที่สุดฉันก็สามารถทดสอบxselกับ KeePass และเดาว่า ... ไม่มันไม่ทำงานดังนั้นตอนนี้การใช้ปุ่มเป็นความเป็นไปได้เพียงอย่างเดียวใน OS X ที่จะคัดลอกชื่อผู้ใช้และรหัสผ่าน ฉันได้เพิ่มไปยังคำตอบ ฉันสังเกตเห็นว่า Softpedia ลิงก์ไปยังxselซอร์สโค้ดดังนั้นฉันจึงลบบิตนั้นออกจากคำตอบของฉัน
Jaume

เห็นได้ชัดว่าปุ่มมีอยู่และทำงานในรุ่น 2.24 ที่ฉันใช้อยู่ในปัจจุบัน ไม่ทราบว่าปุ่มแถบเครื่องมือสามารถทำได้แตกต่างจากเมนูตามบริบท ขอบคุณสำหรับการแบ่งปันคำตอบ!
Mike

1
สิ่งต่าง ๆ น่าจะเปลี่ยนไปนับตั้งแต่คำตอบนี้ถูกโพสต์ ฉันใช้งาน XQuartz และxselติดตั้งผ่าน MacPorts ปุ่มเหล่านั้นทำงานได้ดีโดยไม่ต้องทำการคอมไพล์เอง มันคงจะดีถ้าการใช้แป้นพิมพ์ลัดใช้งานได้ดียิ่งขึ้นไปอีกเพื่อให้ได้ autotype แต่มันอาจจะเป็นความฝันที่ไพเราะสำหรับตอนนี้
ด่านโจนส์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.