Unix & Linux

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

2
ฉันสามารถค้นหาว่ากระบวนการใด (ถ้ามี) กำลังเข้าถึงไมโครโฟนอยู่หรือไม่
ฉันใช้ Debian (เทคนิค Raspbian) พยายามหาระบบสั่งงานด้วยเสียงแบบ Star-Trek ฉันได้รับมันส่วนใหญ่และทำงาน แต่เพื่อความเป็นส่วนตัวและแจ๊สที่ทั้งหมดฉันไม่ต้องการให้ไมโครโฟนของฉันบันทึกเสมอ ฉันสงสัยว่ามีวิธีการสำรวจความคิดเห็นว่ามีกระบวนการใดบ้างที่กำลังเข้าถึงไมโครโฟนอยู่หรือไม่? แนวคิดก็คือฉันจะทำให้ตัวเองเป็นตัวบ่งชี้เล็กน้อยเพื่อบอกว่าไมโครโฟนกำลังบันทึกเสียงอยู่หรือไม่ เป้าหมายสูงสุดของฉันคือการเปิดและปิดไมโครโฟนโดยใช้รีโมททีวีและมีไฟ LED สำหรับเปิดหรือปิด ฉันมีฮาร์ดแวร์ทั้งหมดที่ทำงานได้ฉันเพียงแค่ต้องจบซอฟต์แวร์ตอนนี้ ฉันเชื่อว่าตอนนี้ฉันกำหนดค่าใน ALSA บริสุทธิ์ไม่ใช่ PulseAudio แม้ว่าฉันอาจผิด

3
ฉันจะ cd ลงในไดเรกทอรีเป็น root ได้อย่างไร
สมมติว่ามีไดเรกทอรีที่ฉันไม่มีสิทธิ์เข้าถึง เห็นได้ชัดsudo cd fooว่าไม่ได้ผลเพราะcdเปลือกหอยมีอยู่ในทุก ๆ เปลือก จนถึงตอนนี้ฉันเพิ่งใช้sudo bash(ใช่ฉันรู้ว่ามีวิธีที่ดีกว่า) เพื่อรับรูทพรอมต์ จากนั้นฉันสามารถcdเข้าไปในไดเรกทอรีเพื่อแหย่ มีวิธีที่ดีกว่าในการทำเช่นนี้?
10 bash  sudo  cd-command 

2
ไม่สามารถ ssh เข้าสู่โฮสต์ระยะไกลที่มีรูท, รหัสผ่านไม่ถูกต้อง
ฉันมีโฮสต์ระยะไกลก่อนหน้านี้ฉันสามารถใช้ ssh ด้วย root และรหัสผ่าน ssh root@remote_host หรือฉันจะใช้มันก่อนโดยใช้บัญชีผู้ใช้ทั่วไป ssh esolve@remote_host แล้วsu rootใส่รหัสผ่าน แต่วันนี้ทั้งสองวิธีรหัสผ่านของฉันไม่ถูกต้องเสมอเช่น [esolve@local esolve]$ ssh root@remote_host root@remote_host's password: Permission denied, please try again. หรือ [esolve@remote_host ~]$ su root Password: su: incorrect password ข้อมูลที่เกี่ยวข้อง: ฉันสามารถใช้รหัสผ่านนี้เพื่อเข้าสู่ระบบด้วยรูทหากฉันดำเนินการภายในเครื่องระยะไกลวันนี้ ฉัน ssh เป็นคือผ่าน VPN ทำไมสิ่งนี้ถึงเกิดขึ้น ฉันจะแก้ปัญหานี้ได้อย่างไร
10 ssh  password  root  vpn  su 

4
QEMU วิธีการ ping เครือข่ายโฮสต์
ฉันพยายาม ping จากแขกมาที่เครือข่ายโฮสต์ของฉันไม่สำเร็จ qemu-system-x86_64 -hda debian_squeeze_amd64_standard.qcow2 -netdev user,id=user.0 -device e1000,netdev=user.0 ฉันพยายาม ping เครื่องสุ่ม: $ ping 10.0.2.21 Destination Host Unreachable ในแขกฉันสามารถ ping โฮสต์ 10.0.2.2 (เซิร์ฟเวอร์ DHCP) เท่านั้น
10 linux  networking  qemu 

2
ส่งผ่านข้อโต้แย้งไปยังฟังก์ชั่นตรงตามที่เป็นอยู่
ฉันมีฟังก์ชั่นต่อไปนี้: bar() { echo $1:$2; } ฉันกำลังเรียกฟังก์ชั่นนี้จากฟังก์ชั่นอื่น , foo. fooตัวเองเรียกว่าดังนี้: foo "This is" a test ฉันต้องการรับผลลัพธ์ต่อไปนี้: This is:a นั่นคือข้อโต้แย้งที่ได้รับควรจะราชสกุลเดียวกันกับที่ผมผ่านเข้าไปbarfoo จะfooต้องมีการดำเนินการอย่างไรเพื่อให้บรรลุเป้าหมายนี้? ฉันได้ลองใช้งานสองแบบต่อไปนี้ แต่ก็ไม่ได้ผล: foo() { bar $*; } - เอาท์พุท: this:is foo() { bar "$*"; } - เอาท์พุท: this is a test: คำถามของฉันคือวิธีที่ฉันสามารถรักษาข้อโต้แย้ง เป็นไปได้ทั้งหมดหรือไม่

3
rsync mkstemp ล้มเหลวอาร์กิวเมนต์ไม่ถูกต้อง (22) ด้วยการเมานต์ davfs ของ Box.com cloud
ผมติด Box.com การจัดเก็บเมฆใช้ davfs ตามคำแนะนำเหล่านี้ ฉันติดตั้งบัญชี Box.com ของฉันภายใต้ / home / me / Cloud / Box ฉันสามารถเข้าถึงระบบไฟล์ที่ติดตั้งผ่าน Dolphin และผ่านเทอร์มินัล มันค่อนข้างช้า แต่ฉันสามารถแสดงรายการ (ls) และนำทางโครงสร้างไดเรกทอรีทั้งหมดโดยไม่มีข้อผิดพลาด ต่อไปฉันพยายามเรียกใช้ rsync ดังนี้: rsync -auvz --max-size=250M --exclude '.*' /home/me/Music/ /home/me/Cloud/Box/Music ฉันก็ลอง: rsync -auv /home/me/Music/A /home/me/Cloud/Box/Music และรูปแบบอื่น ๆ ของคำสั่ง rsync คำสั่งกำลังคัดลอกเพลงของฉันจากระบบไฟล์ในเครื่อง (/ home / me / Music /) …

4
ยำติดตั้งแพคเกจโดยไม่ต้องปรับปรุงแพคเกจอื่น ๆ หรือล้มเหลว ... ?
มีวิธีบอกyumให้ติดตั้งแพคเกจหรือไม่เลือกรุ่นของแพ็คเกจที่จะพึงพอใจจากการพึ่งพาที่ติดตั้งอยู่ในปัจจุบันหรือไม่? ตัวอย่างเช่นถ้าฉันติดตั้งแพคเกจ PECL และผมในขณะนี้ได้ติดตั้งphp-5.4.11แต่รุ่นใหม่php-5.4.14สามารถใช้ได้ แทนที่จะติดตั้งแพ็คเกจใหม่ (และอัปเดตแพ็คเกจ php ทั้งหมดเป็น 5.4.14) ฉันแค่ต้องการให้เลือกแพ็คเกจรุ่นเก่าที่ฉันขอให้ติดตั้งโดยไม่ต้องอัปเดตแพ็คเกจอื่น ๆ ทั้งหมด (หรือล้มเหลวหากไม่สามารถทำได้) นี่เป็นกรณีเฉพาะที่ฉันรู้ว่าฉันสามารถแยกหรือแก้ไขแพ็คเกจ php แต่ฉันกำลังมองหาตัวเลือกทั่วไปที่จะใช้กับการติดตั้งใด ๆ สิ่งที่ต้องการ: yum install php-pecl-xxxx --no-updates
10 yum 

2
วิธีเริ่มต้นการตกแต่งหน้าต่าง KDE โดยไม่สูญเสียเซสชัน X ที่กำลังทำงานอยู่
สำหรับกราฟิกการแก้ไขรูปแบบกราฟิกพิเศษบางอย่างผมใช้โปรแกรมจาวาที่เรียกว่าImageJ นี่เป็นข้อผิดพลาดที่น่ารำคาญที่หนึ่งฟังก์ชั่นพิเศษมีแนวโน้มที่จะฆ่าการตกแต่งหน้าต่างของ KDE ถ้ามันเปิดภาพมากเกินไป ในขณะนี้ฉันแก้ปัญหานี้โดยเปลี่ยนเป็นttyและเริ่มkdmบริการใหม่ ข้อเสียของโซลูชันนี้คือฉันถูกไล่ออกจากเซสชัน X ที่กำลังทำงานอยู่ซึ่งอาจทำให้การทำงานบางอย่างสูญหายไปหากยังมีไฟล์ที่ไม่ได้บันทึกเปิดอยู่ มีวิธีอื่นในการเริ่มการตกแต่งหน้าต่างใหม่โดยไม่ต้องออกจากระบบเซสชัน X ปัจจุบันของฉันหรือไม่ ตามที่อาจมีความสำคัญ: Kubuntu 12.04 KDE 4.10 จากkubuntu-ppa/backportsrepo ปัญหาเดียวกันนี้เกิดขึ้นกับ KDE 4.8.5 ของหุ้นจาก kubuntu 12.04

4
คำสั่ง 'date + FORMAT' - เรียกว่าอะไร% a,% A,% b, ฯลฯ
คำสั่งออกผลลัพธ์เป็นวันและเวลาปัจจุบันเช่นนี้dateFri Apr 12 15:04:03 UTC 2013 ที่จะมีการส่งออกวันเวลาในรูปแบบที่กำหนดเองที่เราสามารถใช้date +FORMATตัวอย่างเช่นเช่นนี้ซึ่งจะช่วยให้สิ่งที่ต้องการdate "+%Y-%m-%dT%H:%M:%S%:z"2013-04-12T15:04:37+00:00 แต่ผมต้องการที่จะรู้ว่า%Y, %m, %d, %H, %M, %Sฯลฯ จะเรียกว่า (เช่นคำศัพท์) นอกจากนี้สิ่งที่Tเรียกว่ามันแตกต่างจากส่วนที่เหลือ?
10 date  terminology 

4
ค้นหาไดเรกทอรีที่ไม่มีไดเรกทอรีย่อย
ฉันกำลังเขียนสคริปต์คือ ksh จำเป็นต้องค้นหาชื่อไดเรกทอรีทั้งหมดภายใต้ไดเรกทอรีปัจจุบันซึ่งมีเฉพาะไฟล์เท่านั้นไม่ใช่ไดเรกทอรีย่อย ฉันรู้ว่าฉันสามารถใช้ls -alRและแยกวิเคราะห์เอาต์พุตแบบซ้ำ ๆ สำหรับตัวอักษรตัวแรกในฟิลด์แรก ( dสำหรับไดเรกทอรี) ฉันคิดว่าawkเป็นวิธีที่ดีที่สุดในการแยกวิเคราะห์และค้นหา ตัวอย่างเช่นls -alเอาต์พุตแบบง่ายในไดเร็กทอรีปัจจุบัน: drwxr-xr-x 22 af staff 748 18 Mar 22:21 . drwxr-xr-x 5 root admin 170 17 Mar 18:03 .. -rw------- 1 af staff 3 17 Mar 16:37 .CFUserTextEncoding drwxr-xr-x 5 af staff 170 17 Mar 17:12 Public drwxr-xr-x 9 …
10 shell  find  directory  ls  ksh 

3
cd ไปยังไดเรกทอรีและดำเนินการคำสั่งมากมาย
ฉันมีสคริปต์ต่อไปนี้ #!/bin/bash mount /dev/sda6 /mnt/gentoo set +e cd /mnt/gentoo && mount -t proc none /mnt/gentoo/proc \ && mount --rbind /dev /mnt/gentoo/dev \ && mount --rbind /sys /mnt/gentoo/sys \ && chroot /mnt/gentoo /bin/bash \ && source /etc/profile \ && export PS1="(chroot)$PS1" สิ่งที่ฉันพยายามทำให้สำเร็จที่นี่คือการเปลี่ยนไดเรกทอรี/mnt/gentooและดำเนินการคำสั่งบางอย่าง การทำงานนี้ตกลงครั้งแรกเมื่อไม่มีการติดตั้งพา ธ แต่ถ้าฉันเรียกใช้หลังจากติดตั้งเรียบร้อยแล้วในบางเส้นทางจะไม่ดำเนินการต่อและหยุดเมื่อเกิดความล้มเหลวครั้งแรก ฉันต้องการให้คำสั่งทั้งหมดถูกเรียกใช้แม้ว่าการเมาต์จะล้มเหลวเนื่องจากข้อผิดพลาด 'เมาท์แล้ว' ฉันจะทำสิ่งนี้ได้อย่างไร นอกจากนี้ยังมีวิธีที่ดีกว่าการรวมคำสั่งเหล่านี้ทั้งหมดเข้าด้วยกันในหนึ่งบรรทัด?
10 bash 

3
เป็นไปได้หรือไม่ที่จะปิดการใช้งานการอนุญาตของไฟล์ในระบบไฟล์ ext3 หรือ ext4?
เป็นไปได้หรือไม่ที่จะปิดการใช้งานการอนุญาตของไฟล์ในระบบไฟล์ ext3 / 4? เพียงแค่สงสัยว่าเป็นไปได้ที่จะปิดการใช้งานหรือเพิกเฉยต่อการอนุญาตไฟล์ในระบบไฟล์ ext3 หรือ ext4 อย่างสมบูรณ์ บางทีตัวเลือกการติดตั้ง? ฉันไม่ได้กังวลเกี่ยวกับผลกระทบด้านความปลอดภัยเนื่องจากฉันจะทำสิ่งนี้เพื่อทดสอบและใช้สื่อแบบถอดได้

3
ปิดใช้งานการป้องกันสแต็กบน Ubuntu สำหรับบัฟเฟอร์โอเวอร์โฟลว์โดยไม่มีแฟล็กคอมไพเลอร์ C
ฉันต้องการลองใช้รหัสเชลล์และฉันต้องการปิดใช้งานการป้องกัน linux ฉันรู้ว่าฉันสามารถคอมไพล์โดยใช้ค่าสถานะ แต่ฉันรู้ว่ามีวิธีอื่นอยู่แล้วในการปิดใช้งานการป้องกันเหล่านี้โดยทั่วไปฉันจำไม่ได้ คุณสามารถช่วยฉันได้ไหม?

3
Bash script; การเพิ่มประสิทธิภาพความเร็วการประมวลผล
ฉันสงสัยว่ามีแนวทางทั่วไปในการเพิ่มประสิทธิภาพสคริปต์ Bash หรือไม่ ตัวอย่างเช่นสะดวกในการเขียนลูปมากกว่าบรรทัดคำสั่ง แต่มันเร็วกว่าในการประมวลผลสำหรับระบบหรือไม่ ตัวอย่าง: for i in a b c; do echo $i; done echo a echo b echo c บางครั้งผู้คนนำเสนอวิธีแก้ไขปัญหาต่าง ๆ สำหรับปัญหาเดียวกัน ตัวอย่างเช่นsed, cut, awkและechoมีความสามารถทั้งหมดที่จะตัดตัวเลขจากสตริง ฉันสงสัยว่าถ้าคุณสามารถบอกได้ว่ายิ่งมีจำนวนรหัสน้อยเท่าไหร่ก็ยิ่งเร็วเท่านั้นหากคุณใช้: คำสั่งเดียวกันเช่น STRING=abc.def echo ${STRING} | sed 's/.def//g' echo ${STRING} | sed '$s/....$//' คำสั่งต่าง ๆ เช่น STRING=abc.def echo ${STRING} | cut -d …

3
ปุ่ม Delete ไม่ทำงานในบรรทัดคำสั่ง
** หมายเหตุ: ฉันถามคำถามเดียวกันนี้กับ SuperUser แต่ไม่ได้รับคำตอบใด ๆ ตอนนี้ฉันรู้แล้วว่านี่เป็นฟอรัมที่เหมาะสมกว่าสำหรับคำถามนี้โดยเฉพาะ * ในเชลล์ ksh ปุ่ม Delete ไม่ทำงานอย่างเหมาะสมในบรรทัดคำสั่ง ฉันได้รับ ~ เมื่อฉันกด Delete ฉันจะทำอย่างไร: ผูกฟังก์ชันของ"ลบอักขระที่เคอร์เซอร์" กับปุ่มลบคีย์บอร์ดหรือไม่ (การควบคุม -D ทำงานเหมือนที่ฉันคาดหวังว่าปุ่มลบจะทำงานได้และความพยายามในการใช้นามแฝงนั้นไม่ประสบความสำเร็จและไร้เดียงสา) ผูกฟังก์ชันการทำงานของ " ย้ายไปที่บรรทัดแรก"กับปุ่มแป้นพิมพ์หน้าแรกหรือไม่ (การควบคุม A ทำได้ในตอนนี้ แต่ฉันต้องการให้ Home ทำ) ผูกฟังก์ชันการทำงานของ " ย้ายไปยังจุดสิ้นสุดของบรรทัด " ไปยังปุ่มแป้นพิมพ์สิ้นสุดหรือไม่ (การควบคุม E ทำสิ่งนี้ในตอนนี้ แต่ฉันต้องการให้จบ) อัปเดตสุดท้าย (?) ฉันสะดุดสิ่งที่ใช้งานได้ แต่ฉันไม่เข้าใจว่าทำไม งานนี้: bind '^[[3'=prefix-2 bind '^[[3~'=delete-char-forward …

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