Unix & Linux

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

1
ปุ่ม“ ฆ่ากระบวนการที่ใหญ่ที่สุด”
แล็ปท็อปนี้มี SSD ดังนั้นฉันจึงตัดสินใจไม่เปลี่ยน วิธีนี้ใช้งานได้ดีในกรณีส่วนใหญ่ แต่บางครั้ง RAM ก็ค่อนข้างสั้นและคอมพิวเตอร์ก็ซบเซาและมีแนวโน้มที่จะแข็งตัว มีวิธีการใช้ปุ่ม "ฆ่ากระบวนการที่ใหญ่ที่สุด" ที่ตรงไปยังเคอร์เนลในกรณีที่ฉันสังเกตเห็นการตรึงเร็วพอ? หรือเพราะเป็นคอมพิวเตอร์ฮิวริสติกเมื่อมันเริ่มแข็งตัวและถ่ายทำกระบวนการที่ใหญ่ที่สุดก็จะใช้ได้เช่นกัน
14 process 

3
ฉันจะทราบได้อย่างไรว่ากระบวนการใดกำลังใช้งานเว็บแคม V4L2 ของฉัน
ฉันพยายามเรียกใช้สิ่งต่อไปนี้: $ vlc -I dummy v4l2:///dev/video0 --video-filter scene --no-audio --scene-path webcam.png --scene-prefix image_prefix --scene-format png vlc://quit --run-time=1 VLC media player 2.0.7 Twoflower (revision 2.0.6-54-g7dd7e4d) [0x1f4a1c8] dummy interface: using the dummy interface module... [0x7fc19c001238] v4l2 demux error: VIDIOC_STREAMON failed libv4l2: error setting pixformat: Device or resource busy libv4l2: error setting pixformat: …
14 devices  camera  vlc  v4l 

7
การตั้งค่าเพื่อแก้ไข vsftpd“ 500 OOPS คืออะไร: ไม่สามารถเปลี่ยนไดเรกทอรี” ข้อผิดพลาด?
คำถามของฉันคือการตั้งค่าใดที่ฉันจำเป็นต้องเปลี่ยนและ / หรือคำสั่งเพื่อให้สามารถเข้าสู่ระบบ vsftpd ของฉันได้ ฉันได้รับข้อผิดพลาดนี้เมื่อฉันเข้าสู่ระบบโดยใช้ ftp แทน sftp: Name (localhost:dbadmin): dbadmin 331 Please specify the password. Password: 500 OOPS: cannot change directory:/home/dbadmin Login failed. ftp> สิ่งนี้ทำงานเมื่อเข้าสู่ระบบโดยใช้sftp@แต่เซิร์ฟเวอร์ของฉันอยู่หลังไฟร์วอลล์และฉันต้องสามารถเข้าสู่ระบบโดยใช้ ftp เช่นเดียวกับ sftp ฉันได้ดูโพสต์ค่อนข้างน้อยเกี่ยวกับข้อผิดพลาด "OOPS" แต่จนถึงขณะนี้ยังไม่มีโชคเข้าสู่ระบบ นี่คือข้อมูลบางอย่างเกี่ยวกับระบบและการตั้งค่าของฉัน: ฉันใช้ CentOS 6.4 iptables และ ip6tables หยุดและปิดการใช้งาน โฮมไดเร็กตอรี่ของฉันมีการป้องกัน 700 และฉันลอง 750 แล้วเพื่อดูว่ามันสร้างความแตกต่างได้ไหม มันไม่ได้ นี่คือสายที่ใช้งานอยู่ /etc/vsftpd/vsftpd.conf anonymous_enable=NO …

5
vimrc - วิธีการปิดกั้นความคิดเห็น?
ฉันไม่ต้องการแสดงความคิดเห็นบรรทัดข้อความในไฟล์ข้อความหรือรหัส ฉันกำลังมองหาการแทรกความคิดเห็นบล็อกในไฟล์. vimrc เมื่อต้องการแทรกข้อคิดเห็นบรรทัดเดียว"ถูกใช้ตัวอย่างเช่น: " remove spaces and tabs as well at the end of line automatically while saving autocmd BufWritePre * :%s/\s\+$//e ตอนนี้ฉันมีการตั้งค่า / การตั้งค่า / ปลั๊กอินจำนวนมากในช่วงหลายปีที่ผ่านมาหลังจากเรียกดูผ่านอินเทอร์เน็ตเพื่อเพิ่มคุณสมบัติเจ๋ง ๆ ฉันต้องการเพิ่มบล็อกความคิดเห็นขนาดใหญ่ลงในไฟล์. vimrc ของฉัน การเพิ่ม"ในแต่ละบรรทัดเป็นตัวเลือก แต่ฉันกำลังมองหาไวยากรณ์ความคิดเห็นบล็อก คล้ายกับ/**/ใน C. //เหมือน" /* */กันกับ_ ____ใช่ไหม? การค้นหา Unix.SE ดังนั้นและ googling ไม่ได้ช่วยอะไรมาก

7
xargs และ vi -“ อินพุตไม่ได้มาจากเทอร์มินัล”
ฉันมีphp.iniไฟล์ประมาณ 10 ไฟล์ในระบบของฉันตั้งอยู่ทั่วทุกที่และฉันต้องการเรียกดูไฟล์เหล่านั้นอย่างรวดเร็ว ฉันลองคำสั่งนี้: locate php.ini | xargs vi แต่viเตือนฉันInput is not from a terminalแล้วคอนโซลก็เริ่มแปลกจริง ๆ - หลังจากนั้นฉันต้องกด:q!เพื่อออกจากviนั้นตัดการเชื่อมต่อจากเซสชัน ssh และเชื่อมต่อใหม่เพื่อให้คอนโซลทำงานได้ตามปกติอีกครั้ง ฉันคิดว่าฉันเข้าใจว่าเกิดอะไรขึ้นที่นี่ - โดยทั่วไปคำสั่งยังไม่เสร็จเมื่อviเริ่มต้นดังนั้นคำสั่งอาจไม่เสร็จและviไม่คิดว่าเทอร์มินัลอยู่ในโหมดปกติ ฉันไม่รู้ว่าจะแก้ไขอย่างไร ฉันค้นหา Google และยัง unix.stackexchange.com ด้วยโชคไม่ดี

3
gvfs คืออะไรและเพราะเหตุใดฉันจึงต้องการมันในระบบของฉัน
gvfs ทำอะไรให้ฉันบนเครื่อง Kubuntu ของฉันและทำไม / usr / lib / gvfs / gvfs-gdu-volume-monitor ที่กินเวลา CPU มาก? BTW: ฉันอ่านhttps://en.wikipedia.org/wiki/GVFSและยังไม่รู้ว่ามีอะไรในตัวฉันโดยเฉพาะใน KDE / Kubuntu lsofแสดงให้เห็นว่าฉันว่าthunderbird, firefoxและpidginมีห้องสมุด gvfs เปิด แต่สำหรับสิ่งที่ฟังก์ชั่น?
14 kubuntu  gvfs 

2
เครื่องหมายทับ (/) หลังชื่อไดเร็กทอรีบนคำสั่งเชลล์
ฉันมีคำถามเล็กน้อยที่นี่ ถ้าผมมีสองไฟล์พูดfileaและfileb, mv filea filebจะ ลบ fileb เปลี่ยนชื่อfileaเป็นfileb แล้วถ้าฉันมีสองไดเรกทอรีพูดdiraและdirb, mv dira dirbจะ ย้ายdiraเข้าไปdirb(มันจะกลายเป็นdirb/dira) สังเกตว่าในทั้งสองกรณีไม่มีการบอกกล่าวหรือข้อความแล้วนี่มันค่อนข้างจะขัดแย้งกับฉัน ฉันคิดว่าmv dira dirbควรเขียนทับdirbเนื้อหาของdira(หรือรวมสองไดเรกทอรีภายใต้ชื่อไดเรกทอรีdirb) ฉันจำได้ว่าอ่านบางที่ว่าชื่อไดเรกทอรีที่มีเครื่องหมายทับ (เหมือนdira/) ถือว่าเป็นไดเรกทอรีและชื่อที่ไม่มีเครื่องหมายทับ (เหมือนdira) จะถือว่าเป็นไฟล์ (ไปยังขอบเขตที่แน่นอน) ตอนนี้ฉันต้องการทำให้เชลล์ (zsh และอาจทุบตี) เคารพเครื่องหมายของไดเรกทอรีโดยใช้เครื่องหมายทับ มีตัวเลือกเทอร์มินัลที่ทำให้ฉันสามารถบังคับใช้ได้หรือไม่? เพื่อชี้แจงนี่คือพฤติกรรมที่ฉันต้องการ: mv dira dirbผลลัพธ์dirbจะถูกเขียนทับด้วยเนื้อหาของdira mv dira dirb/ผลลัพธ์ในdiraการถูกย้ายเข้าdirb(ในdirb/dira) มีใครคิดแบบเดียวกับฉัน หรือฉันแค่แปลก ๆ ?

6
มี Linux distros รุ่นล่าสุดที่เข้าถึงได้หรือไม่?
ฉันกำลังมองหาดิสทริบิวเตอร์ของลีนุกซ์ที่สามารถเข้าถึงได้โดยคนที่ตาบอดโดยสิ้นเชิง ฉันรับทราบถึง Vinux และ Sonar GNU แต่อดีตนั้นหยุดนิ่งและจะหยุดการทำงานชั่วคราว อะไรคือสิ่งที่ทั้งสองเป็นปัจจุบันและไม่น่าจะหายไป? การค้นหานี้ยังได้รับความพึงพอใจจากผู้จำหน่ายหลักอย่าง Debian หรือ Ubuntu รวมถึงแอพพลิเคชั่นนี้ (เช่น Orca และ Lynx); เพียงตั้งชื่อ distro และแอปใด

3
echo หรือ print / dev / stdin / dev / stdout / dev / stderr
ฉันต้องการพิมพ์ค่าของ / dev / stdin, / dev / stdout และ / dev / stderr นี่คือสคริปต์ง่าย ๆ ของฉัน: #!/bin/bash echo your stdin is : $(</dev/stdin) echo your stdout is : $(</dev/stdout) echo your stderr is : $(</dev/stderr) ฉันใช้ท่อต่อไปนี้: [root@localhost home]# ls | ./myscript.sh [root@localhost home]# testerr | ./myscript.sh เพียง แต่$(</dev/stdin)ดูเหมือนว่าจะทำงานผมยังได้พบกับคนอื่น ๆ …

4
วนซ้ำผ่านโฟลเดอร์และไฟล์รายการ
ฉันมีโฟลเดอร์ชื่อ 'ตัวอย่าง' และมันมี 3 ไฟล์อยู่ในนั้น ฉันต้องการเขียนเชลล์สคริปต์ซึ่งจะอ่านไฟล์เหล่านี้ภายในโฟลเดอร์ตัวอย่างและโพสต์ไปยังไซต์ HTTP โดยใช้ curl ฉันเขียนสิ่งต่อไปนี้เพื่อแสดงรายการไฟล์ภายในโฟลเดอร์: for dir in sample/*; do echo $dir; done แต่มันให้ผลลัพธ์ต่อไปนี้กับฉัน: sample/log sample/clk sample/demo มันกำลังแนบโฟลเดอร์แม่ในนั้น ฉันต้องการผลลัพธ์ดังนี้ (ไม่มีชื่อโฟลเดอร์หลัก) log clk demo ฉันจะทำสิ่งนี้ได้อย่างไร

7
ไม่สามารถถอนการติดตั้ง Gnome Shell Extension
Gnome Shell 3.18.5 แจ้งให้ฉันทราบว่ามีส่วนขยายที่จำเป็นต้องได้รับการอัปเดต ฉันไปที่https://extensions.gnome.org/local/จาก Firefox อัปเดตส่วนขยาย Firefox และตอนนี้ฉันต้องการถอนการติดตั้งส่วนขยาย Gnome บางส่วนเช่นตัวอย่างต่อไปนี้ เมนูไดรฟ์ที่ถอดออกได้โดย ส่วนขยายระบบfmuellner เมนูสถานะสำหรับการเข้าถึงและถอดอุปกรณ์ที่ถอดออกได้ เมื่อวางเมาส์บนส่วนขยายระบบฉันอ่านคำแนะนำเครื่องมือต่อไปนี้ ควรถอนการติดตั้งส่วนขยายระบบโดยใช้ตัวจัดการแพ็กเกจ ดูหน้าเกี่ยวกับรายละเอียด เกี่ยวกับหน้าพูดว่า: ส่วนขยายระบบคืออะไร จะถอนการติดตั้งได้อย่างไร? ติดตั้งส่วนขยายระบบไปยังตำแหน่งทั่วทั้งระบบ (โดยปกติคือ / usr / share / gnome-shell / extensions) ส่วนขยายดังกล่าวอาจถูกใช้โดยผู้ใช้พีซีเครื่องใดก็ได้ แต่สามารถถอนการติดตั้งโดยผู้ดูแลระบบเท่านั้น (รูท) หากต้องการถอนการติดตั้งส่วนขยายระบบให้ใช้ตัวจัดการแพ็คเกจของ distro หรือสอบถามผู้ดูแลระบบของคุณ ฉันดูผ่าน Synaptic แต่ไม่เห็นส่วนขยายนี้ ฉันจะลบออกได้อย่างไร นี่คือส่วนขยายที่ฉันต้องการลบ เมนูแอพพลิเคชั่น ตัวบ่งชี้สถานะสถานที่ เมนูไดรฟ์ที่ถอดออกได้ ตัวบ่งชี้พื้นที่ทำงาน Pomodoro

1
Rsync รวมเฉพาะไฟล์บางประเภทเท่านั้นยกเว้นบางไดเรกทอรี
ฉันต้องการซิงค์ไฟล์บางประเภทเท่านั้น (เช่น.py) และฉันต้องการแยกไฟล์ในบางไดเรกทอรี (เช่นvenv) นี่คือสิ่งที่ฉันได้ลอง: rsync -avz --include='*/' --exclude='venv/' --include='*.py' --exclude='*' /tmp/src/ /tmp/dest/ แต่มันไม่ทำงาน ฉันกำลังคิดถึงอะไร ฉันทำตามคำตอบของคำถามนี้ด้วยแต่ก็ไม่ได้ช่วยอะไร
14 rsync  file-copy 

3
Ctrl-Backspace และ Ctrl-Delete ใน bash
วางบน Debian 8.3 stty werase '^H' หรือบน Arch Linux 2/2016 stty werase '^?' ใน.bashrc(ตัวอย่าง) ทำให้Ctrl- Backspaceลบคำสุดท้ายในสถานี ก็ยังไม่ได้เป็นลักษณะการทำงานเช่นเดียวกับในโปรแกรม GUI ที่ทันสมัย (เช่น Firefox): มันลบสุดท้ายช่องว่างคำ -separated และไม่คำสุดท้ายคั่นด้วยช่องว่างหรือ. : , ; " ' & / ( )ตัวอักษรเช่น มันเป็นไปได้ที่จะทำให้Ctrl- Backspaceประพฤติตนอยู่ในขั้วคล้ายกับโปรแกรม GUI สมัยใหม่? นอกจากนี้ยังมีวิธีใดที่จะทำให้Ctrl- Deleteลบคำก่อนเคอร์เซอร์ทันทีหรือไม่


4
เก็บรหัสทางออกเมื่อวางกับ SIGINT และคล้ายกันหรือไม่
หากฉันใช้trapเช่นอธิบายไว้ในhttp://linuxcommand.org/wss0160.php#trapเพื่อจับ ctrl-c (หรือคล้ายกัน) และการล้างข้อมูลก่อนออกจากนั้นฉันจะเปลี่ยนรหัสออกที่ส่งคืน ตอนนี้อาจจะไม่สร้างความแตกต่างในโลกแห่งความเป็นจริง (เช่นเพราะรหัสออกไม่ได้พกพาและด้านบนของที่ไม่โปร่งใสตลอดเวลาตามที่กล่าวไว้ในรหัสทางออกเริ่มต้นเมื่อกระบวนการสิ้นสุดลง? ) แต่ฉันสงสัยว่ามี จริงๆแล้วไม่มีวิธีในการป้องกันและส่งคืนรหัสข้อผิดพลาดเริ่มต้นสำหรับสคริปต์ที่ถูกขัดจังหวะแทนหรือไม่ ตัวอย่าง (เป็น bash แต่คำถามของฉันไม่ควรพิจารณาเฉพาะ bash): #!/bin/bash trap 'echo EXIT;' EXIT read -p 'If you ctrl-c me now my return code will be the default for SIGTERM. ' _ trap 'echo SIGINT; exit 1;' INT read -p 'If you ctrl-c me now …

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