Unix & Linux

คำถาม & คำตอบสำหรับผู้ใช้ Linux, FreeBSD และระบบปฏิบัติการ Un * x อื่น ๆ

1
2 การตรวจสอบความถูกต้องของปัจจัยใน SSH โดยใช้กุญแจสาธารณะและ PAM
ฉันกำลังพยายามติดตั้ง 2 Factor Authentication ฉันต้องการให้ผู้ใช้ลงชื่อเข้าใช้สำเร็จหาก: พับลิกคีย์ส่วนตัว / สาธารณะตรงกัน (วิธีการรับรองความถูกต้อง: publickey) หรือรหัสผ่านถูกต้อง วิธีการรับรองความถูกต้อง pam ของฉันสำเร็จแล้ว วิธีการรับรองความถูกต้องที่สองคือไฟล์ PAM ดังนั้นผมจึงวางมันลงไป/usr/lib/pam/และเพิ่มในauth required my_pam_module.so จนถึงตอนนี้ฉันสามารถเข้าสู่ระบบโดยใช้ (publickey method) หรือ (รหัสผ่านและสิ่งใดก็ตามที่ฉันต้องการโมดูล pam) ดังนั้นผมจึงเพิ่มในและตอนนี้ฉันต้องมีคีย์สาธารณะใช้รหัสผ่านและ "สิ่งที่ถูกต้องตามฉัน pam โมดูล"/etc/pam.d/sshdAuthenticationMethods publickey,keyboard-interactive/etc/sshd_config ฉันต้องเปลี่ยนบรรทัดใดเพื่อให้บรรลุสิ่งที่ฉันอธิบายไว้ข้างต้น ฉันใช้ Mac OS X Mavericks (10.9) หากคุณไม่คุ้นเคยกับ Mac ก็สามารถช่วยคุณได้ในระบบ Linux

4
วิธีฆ่า windows ที่เปิดอยู่ทั้งหมด
ฉันต้องการปิดหน้าต่างทั้งหมดที่ปรากฏบนเดสก์ท็อปของฉัน ฉันคิดว่าจะทำสิ่งนี้ผ่านpkillแต่ฉันสามารถจัดการฆ่าพวกมันทีละคนซึ่งไม่ใช่สิ่งที่ฉันต้องการ เป้าหมายสุดท้ายคือการนำสคริปต์นี้ไปใช้เพื่อเรียกใช้คีออสก์มันจะตรวจสอบว่าซอฟต์แวร์คีออสก์กำลังทำงานอยู่หรือไม่ (ฉันคิดส่วนนี้ออกมา) และหากไม่เป็นเช่นนั้นมันจะฆ่าหน้าต่างที่เปิดอยู่ ซอฟต์แวร์คีออสก์
9 x11  kill  logout  kiosk 

7
นับจำนวนบรรทัดทั้งหมดก่อน / หลังการจับคู่รูปแบบ
ฉันมีรายการที่อยู่ IP จำนวนมากซึ่งไม่ได้เรียงตามลำดับ ฉันต้องการค้นหาจำนวนที่อยู่ IP ที่มีอยู่ก่อน / หลังที่อยู่ IP ที่เฉพาะเจาะจง ฉันจะบรรลุสิ่งนี้ได้อย่างไร

5
ห้ามเว้นวรรครอบ ๆ เครื่องหมาย = เมื่อใด
ฉันรู้ว่าใน ~ / .bashrc เราต้องไม่เว้นช่องว่างรอบ=เครื่องหมายในการมอบหมาย: $ tail -n2 ~/.bashrc alias a="echo 'You hit a!'" alias b = "echo 'You hit b!'" $ a You hit a! $ b b: command not found ฉันกำลังตรวจสอบไฟล์ MySQL config /etc/my.cnfและฉันพบสิ่งนี้: tmpdir=/mnt/ramdisk key_buffer_size = 1024M innodb_buffer_pool_size = 512M query_cache_size=16M ฉันจะตรวจสอบว่าช่องว่างรอบ=สัญญาณไม่ได้เป็นปัญหาได้อย่างไร โปรดทราบว่าคำถามนี้ไม่ได้เฉพาะเจาะจงกับ/etc/my.cnfไฟล์ แต่ใช้กับไฟล์ * NIX config …

1
การแปลงไฟล์. docx เป็นข้อความธรรมดาและเก็บรักษาตัวแบ่งบรรทัดเพื่อรักษาการอ้างอิงหมายเลขบรรทัดไปยังเอกสารต้นทาง: วิธีการ & นัย?
ฉันกำลังส่งออกเนื้อหาMS Wordเป็นข้อความธรรมดาเพื่อใช้กับโปรแกรมอรรถประโยชน์ข้อความและไฟล์ ฉันมีข้อ จำกัด ที่คุณสมบัติการกำหนดหมายเลขบรรทัดถูกเปิดใช้งานในซอฟต์แวร์ MS และการอ้างอิงใด ๆ กับหมายเลขบรรทัดในผลลัพธ์สุดท้ายจะต้องตรงกับการกำหนดหมายเลขนั้น ดังนั้นป้อน "หมายเลขบรรทัด": ( Poe, EA ) เห็นได้ชัดว่าสำหรับWord การเรียงลำดับหมายเลขนั้นไม่ทำให้บรรทัดใหม่ขึ้นบรรทัดใหม่แต่จะแบ่ง "บรรทัด" หลังจากระยะห่างที่ถูกต้อง (หรือบางอย่าง) สคริปต์เช่นdocx2txtนี้ไม่ได้พิจารณาถึงสิ่งนี้ตามค่าเริ่มต้นแล้วจะมีการขึ้นบรรทัดใหม่ที่บรรทัดใหม่ ดังนั้นหากฉันใช้grep -nกับการกำหนดหมายเลขบรรทัดจะไม่ตรงกับคุณลักษณะหมายเลขบรรทัดซอร์สดังที่แสดงด้านบน ยังไม่ชัดเจนจากเอกสารว่าฉันจะต้องแก้ไขสคริปต์ Perl เพื่อแปลงไฟล์แบบที่ฉันต้องการในกรณีนี้: our $config_newLine = "\n"; # Alternative is "\r\n". our $config_lineWidth = 80; # Line width, used for short line justification. ฉันพยายามทำหน้าที่แทน\nสำหรับ\r\nแต่ที่ดูเหมือนจะไม่ทำงานสำหรับฉัน ดังนั้นฉันจึงหันไปใช้การส่งออกเอกสารโดยตรงจากWordด้วยการตั้งค่าต่อไปนี้ (บันทึกเป็นข้อความธรรมดาบน v.2013,64 …

2
เร็วเกินไปที่จะลองใช้ LibreSSL หรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันได้ติดตามการพัฒนาและการเปิดตัวLibreSSL ล่าสุดและบังเอิญฉันมีเว็บเซิร์ฟเวอร์ FreeBSD ใหม่ที่ฉันได้กำหนดค่าสำหรับโครงการส่วนตัว / งานอดิเรกของฉันเมื่อเร็ว ๆ นี้ ฉันยังคงค่อนข้าง n00bish เกี่ยวกับดูแลระบบและสิ่ง Unix หนักแม้ว่า ฉันเห็นว่ามีsecurity/libresslพอร์ตแล้ว ถ้าฉันเป็นมนุษย์เพียงดูแลระบบติดตั้งฉันจะสามารถกำหนดค่า Nginx ให้ใช้งานได้โดยไม่ต้องเครียดมากกว่าการใช้ OpenSSL (เนื่องจากเคยตั้งค่าไว้สองสามครั้งในอดีต)? แล้วพอร์ตอื่น ๆ ที่คาดว่าจะมี OpenSSL ล่ะ? ตัวอย่างเช่นเมื่อฉันไปกำหนดค่าdatabases/mariadb55-serverฉันจะได้รับตัวเลือกให้ใช้ OpenSSL แต่ไม่ใช่ LibreSSL หากฉันติดตั้ง LibreSSL ไลบรารีของมันจะถูกมองเห็นและใช้เป็น OpenSSL หรือฉันต้องรอให้พอร์ต MariaDB ได้รับการปรับปรุงเพื่อรองรับ LibreSSL อย่างชัดเจนหรือไม่ ฉันเดาคำถามที่กว้างขึ้นว่า LibreSSL กับ OpenSSL สามารถใช้แทนกันได้อย่างไรจากมุมมองของผู้ดูแลระบบมือสมัครเล่น ณ …

1
สร้าง manpage ที่อยู่หลาย executables
ฉันกำลังบรรจุแอปพลิเคชันที่มีกลุ่มโปรแกรมเรียกใช้ที่ยอมรับข้อโต้แย้งเดียวกันโดยประมาณ ฉันต้องการเขียน (และจัดเตรียม) manpage เดียวที่มีคำอธิบายทั่วไปและรายการอาร์กิวเมนต์ ในระยะสั้นฉันต้องการที่ man execFoo man execBar ชี้ไปที่หน้าเดียวกัน ฉันรู้วิธีสร้างสองสิ่งที่เหมือนกันexecFoo.1และexecBar.1ดูเหมือนว่าจะไม่ดี เนื่องจากฉันวางแผนที่จะปล่อยแพ็คเกจนี้สำหรับ Debian โซลูชันที่พึ่งพาห่วงโซ่บรรจุภัณฑ์ Debian (เช่นdh_installmake) ก็จะใช้ได้เช่นกัน
9 debian  man 

2
หยุดงานเครื่องพิมพ์จากเครื่องเทอร์มินัล
ฉันทำงานกับ CentO รุ่นเก่า (5.0) ที่ไม่ใช่เครื่องของฉัน เมื่อเร็ว ๆ นี้ด้วยเหตุผลบางอย่างฉันมีปัญหาในการพิมพ์ งานหยุดพักในคิวและฉันไม่สามารถยกเลิกได้จากไอคอนแถบ ฉันได้ลองด้วยคำสั่งเทอร์มินัล ( cancel -aขอรหัสผ่านซึ่งฉันไม่มีlpq -aและสิ่งอื่น ๆ ที่ฉันไม่รู้ความหมาย) แต่งานยังค้างอยู่ที่ไอคอนเครื่องพิมพ์ คุณมีข้อเสนอแนะใด? ภาพอธิบายถึงสถานการณ์ของฉันและวิธีที่คำตอบแรกไม่สามารถแก้ไขได้ cronycrustเป็นชื่อของเครื่องพิมพ์อื่นในขณะที่การใช้งานหนึ่งที่ฉันเป็น

2
เป็นไปได้ไหมที่จะใช้ตัวแปรพารามิเตอร์เชลล์ ($ 1, …, $ @) โดยตรงใน CLI
บางครั้งมีความจำเป็นต้องจำลองและตรวจสอบตัวแปรข้างต้นในตัวอย่างเล็ก ๆ จากนั้นสามารถคัดลอกไปยังสคริปต์บางรายการได้ทันที ฉันพยายามที่จะแก้ปัญหาโดยใช้ตัวอย่างง่ายๆด้วยวิธีต่อไปนี้: (find $1) /tmp sh -c '(find $1) /tmp' sh -c "find $1" /tmp echo '(find $1) /tmp' | sh และด้วยชุดค่าผสมอื่น ๆ ทดลองโดยการเพิ่มคำสั่งล่าม shebang #!/bin/sh -xแต่ไม่ได้ผลลัพธ์ที่ต้องการ ฉันสามารถทำสิ่งนี้ได้ง่ายๆ

2
ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ RDS TSG ภายนอกจากที่บ้าน
เรามี บริษัท TSDS (เซิร์ฟเวอร์เดสก์ท็อประยะไกล) เซิร์ฟเวอร์ TSG (Terminal Services Gateway) ซึ่งช่วยให้พนักงานสามารถเชื่อมต่อกับเซสชัน RDS จากที่บ้านเพื่อให้พวกเขาสามารถเห็นเดสก์ทอป RDS ที่ทำงานได้จากที่บ้าน ใช้งานได้ดีกับคอมพิวเตอร์ที่บ้านโดยใช้ windows 7 ด้วยการตั้งค่าต่อไปนี้: อย่างไรก็ตามผู้ใช้บางคนมี Linux ที่บ้านและพยายามใช้ freerdp 1.2.0 ฉันได้ทดสอบสิ่งนี้บนแล็ปท็อปที่เชื่อมต่อกับ LAN ภายใน บริษัท โดยใช้คำสั่งต่อไปนี้และทำงานได้ดี: $ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /u:administrator /p: อย่างไรก็ตามหากฉันพยายามใช้คำสั่งนั้นบนแล็ปท็อปซึ่งไม่ได้ใช้การเชื่อมต่อ LAN ของ บริษัท เช่นการเชื่อมต่อภายในบ้านฉันจะได้รับสิ่งนี้: freerdp_set_last_error 0x2000C Error: protocol security negotiation or connection …

7
สคริปต์ที่ปรึกษากฎ iptables
มีเซิร์ฟเวอร์ที่ไม่มีการป้องกันiptables :ACCEPT all.. อาจมีแอปพลิเคชันที่กำหนดเองบนเซิร์ฟเวอร์นี้ หากเราจำเป็นต้องทำให้เซิร์ฟเวอร์นี้แข็ง (ปฏิเสธทั้งหมดและอนุญาตเฉพาะสิ่งที่แอปพลิเคชันต้องการ) ด้วยกฎ iptables ที่เข้มงวดเราต้องค้นหาด้วยตนเองว่าแอปใดที่ใช้ซึ่งdst/src port/protocolแล้วเราต้องเขียนกฎ iptables สำหรับ พวกเขา .. คำถาม : มีสคริปต์ใดบ้างที่สามารถช่วยรวบรวมข้อมูลเหล่านี้จากเครื่องที่กำลังทำงานอยู่ได้? (จากบันทึกหรือไม่) - และสร้างกฎ iptables โดยอัตโนมัติหรือไม่ เหมือนมีในaudit2allow SELinuxเพียงเพื่อiptables! เครื่องไม่สามารถหยุดทำงานได้! ตัวอย่าง: สคริปต์ "MAGIC" ควรรันสัปดาห์ / เดือนบนเครื่องรวบรวมข้อมูลจากนั้นหลังจากสัปดาห์ / เดือนสคริปต์จะสามารถสร้างไฟล์กฎ iptables ที่เราสามารถใช้ได้ หลายคนอาจได้รับในสถานการณ์เช่นนี้ (วิธีทำให้เซิร์ฟเวอร์แข็งขึ้นเกี่ยวกับ iptables) และมันจะดีมากถ้ามีสคริปต์ / โซลูชันที่สามารถทำได้: \

3
กำลังอ่านรายการแพ็กเกจ ... เกิดข้อผิดพลาด!
เมื่อฉันเรียกใช้sudo apt-get updateฉันได้รับข้อผิดพลาดนี้: Reading package lists... Error! E: Unable to parse package file /var/lib/dpkg/status (1) E: The package lists or status file could not be parsed or opened. แต่ละบรรทัดพูดว่าอย่างไรและจะแก้ไขได้อย่างไร ฉันใช้ Linux Mint 17 Qiana Cinnamon ใน VMWare Workstation 10.0.2
9 apt 

4
วันที่สร้างบัญชีท้องถิ่น
เพื่อวัตถุประสงค์ในการปฏิบัติตามข้อกำหนดมีความจำเป็นต้องดึงข้อมูลเกี่ยวกับวันที่สร้างบัญชีผู้ใช้ (ผู้ใช้และไม่ใช่ผู้ใช้) บนเครื่อง UNIX มีวิธีใดบ้าง (แม้ว่าจะไม่ใช่วิธีที่เชื่อถือได้หรือแม่นยำที่สุด) ในการเก็บรวบรวมข้อมูลประเภทนั้น? เช่นเป็นทางเลือกฉันไปค้นหาhomeวันที่สร้างไดเรกทอรี (สำหรับบัญชีผู้ใช้) แต่ฉันค้นพบว่าไม่มีการประทับเวลาของระบบที่เข้ากันได้กับ POSIX สำหรับการสร้างไฟล์
9 files  users  date  accounts 

1
การค้นหางาน cron ที่ถูกกำหนดเวลาให้ทำงานในวันที่ / เวลา X ในอนาคต
มีวิธี "คิวรี" crontab เพื่อค้นหางาน cron ที่ทำงานในบางวัน / เวลาโดยพลการหรือในช่วงเวลาที่กำหนดหรือไม่ ตัวอย่างเช่นกำหนดว่าจะให้ทำงานช่วงใดบ้างระหว่างเวลา 14:00 น. ถึง 16:00 น. ในวันนี้จะทำงานในวันเสาร์หน้าเวลา 10.00 น. หรือทำงานทุกวันอาทิตย์ มีการกำหนดเวลางานจำนวนมากดังนั้นการอ่าน crontabs ทั้งหมดด้วยมือจึงไม่ใช่ตัวเลือกจริงๆ
9 cron 

1
การติดตั้ง Multiseat X พร้อมการ์ดกราฟิกหัวคู่แบบเดี่ยว
ฉันกำลังพิจารณาที่จะลองติดตั้งระบบมัลติซีต ดูเหมือนว่ามันจะตรงไปตรงมาถ้าฉันมีการ์ดกราฟิกสองอันหรือถ้าฉันไม่ต้องการการเร่งความเร็วด้วย OpenGL แบบฮาร์ดแวร์ เป็นไปได้หรือไม่ที่จะติดตั้งระบบหลายที่นั่งด้วยการ์ดกราฟิกแบบสองหัวเดียว?
9 xorg  multiseat 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.