Unix & Linux

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


5
จะดาวน์โหลดแพ็คเกจไม่ได้ติดตั้งด้วยคำสั่ง apt-get?
sudo apt-get install pppoe จะดาวน์โหลดpppoeแพ็คเกจและติดตั้ง เป็นไปได้หรือไม่ที่จะดาวน์โหลดpppoeแพ็คเกจและไม่ติดตั้งด้วยapt-getคำสั่ง? wget http://ftp.us.debian.org/debian/pool/main/p/ppp/ppp_2.4.7-1+4_amd64.deb ppp_2.4.7-1+4_amd64.deb อยู่ในไดเรกทอรีปัจจุบันทันที cd /tmp sudo apt-get install -d ppp Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: ppp 0 upgraded, 1 newly installed, 0 to remove and 95 not upgraded. Need to …
32 apt  download 

7
มีการโต้แย้งหลายครั้งใน shebang
ฉันสงสัยว่ามีวิธีทั่วไปในการส่งตัวเลือกหลายตัวไปยังโปรแกรมที่เรียกใช้งานได้ผ่านทางสาย shebang ( #!) ผมใช้ NixOS และส่วนแรกของ shebang ในสคริปต์ใด ๆ /usr/bin/envที่ฉันเขียนมักจะ ปัญหาที่ฉันพบคือทุกสิ่งที่เกิดขึ้นหลังจากนั้นถูกตีความว่าเป็นไฟล์หรือไดเรกทอรีเดียวโดยระบบ ตัวอย่างเช่นสมมติว่าฉันต้องการเขียนสคริปต์ที่จะดำเนินการโดยbashในโหมด posix วิธีที่ไร้เดียงสาของการเขียน Shebang จะเป็น: #!/usr/bin/env bash --posix แต่พยายามที่จะรันสคริปต์ผลลัพธ์จะสร้างข้อผิดพลาดต่อไปนี้: /usr/bin/env: ‘bash --posix’: No such file or directory ฉันทราบเกี่ยวกับโพสต์นี้แต่ฉันสงสัยว่ามีวิธีการทั่วไปที่สะอาดกว่าหรือไม่ แก้ไข : ฉันรู้ว่าสำหรับสคริปต์Guileมีวิธีการบรรลุสิ่งที่ฉันต้องการบันทึกไว้ในส่วน 4.3.4ของคู่มือ: #!/usr/bin/env sh exec guile -l fact -e '(@ (fac) main)' -s "$0" "$@" !# เคล็ดลับที่นี่ก็คือบรรทัดที่สอง (เริ่มต้นด้วยexec) …

2
วิธีแสดง daemons ที่ใช้งานอยู่ทั้งหมด
จากคำถามของฉันเป็นที่ชัดเจนว่าฉันไม่สามารถตัดสินใจคุณสมบัติของ daemon ได้อย่างง่ายดายฉันได้อ่านบทความต่าง ๆ และจากฟอรัมต่าง ๆ ที่service --status-allสามารถใช้คำสั่งเพื่อแสดงรายการ daemons ทั้งหมดในระบบของฉัน แต่ฉันไม่คิดว่าคำสั่งนั้นแสดงรายการ daemons ทั้งหมดเพราะNetworkManagerdaemon ที่กำลังทำงานอยู่ในUbuntu 14.04ระบบของฉันไม่ได้อยู่ในรายการคำสั่ง มีคำสั่งให้แสดงรายการ daemons ที่กำลังทำงานอยู่หรืออย่างอื่นมีวิธีหา daemons จากfilesystemตัวเองบ้างไหม?
32 services  daemon 

5
การเพิ่มไฟล์ที่คลายซิปลงในโฟลเดอร์ซิป
new folder.zipฉันพยายามที่จะเพิ่มไฟล์ซิปที่มีอยู่แล้วซิปโฟลเดอร์พูด เป็นไปได้ไหมที่จะใช้งานzip -r new folder.zipหลังจากเพิ่มไฟล์ที่คลายซิปไปแล้ว? คำสั่งนี้จะบีบอัดโฟลเดอร์หรือไม่ มีทางเลือกอื่นในการทำเช่นนี้หรือไม่?
32 zip  mv 

2
จะกำหนดค่า Centos 7 firewallD ให้อนุญาตให้นักเทียบท่าคอนเทนเนอร์เข้าถึงพอร์ตเครือข่ายของโฮสต์ได้อย่างไร
ฉันติดตั้ง docker ไว้บน CentOS 7 และฉันใช้งาน firewallD จากในคอนเทนเนอร์ของฉันไปที่โฮสต์ (ค่าเริ่มต้น 172.17.42.1) เปิดไฟร์วอลล์ container# nc -v 172.17.42.1 4243 nc: connect to 172.17.42.1 port 4243 (tcp) failed: No route to host ด้วยการปิดไฟร์วอลล์ container# nc -v 172.17.42.1 4243 Connection to 172.17.42.1 4243 port [tcp/*] succeeded! ฉันอ่านเอกสารเกี่ยวกับไฟร์วอลและฉันไม่เข้าใจอย่างถ่องแท้ มีวิธีให้ทุกอย่างในคอนเทนเนอร์นักเทียบท่า (ฉันเดาบนอะแดปเตอร์ docker0) ไม่ จำกัด การเข้าถึงโฮสต์หรือไม่

5
แสดงรายการคำสั่งทั้งหมดที่เชลล์รู้
ฉันจะพิมพ์อะไรที่เปลือกของฉัน (ซึ่งเกิดขึ้นbash) ที่จะแสดงรายการคำสั่งทั้งหมดที่ได้รับการยอมรับ? นอกจากนี้สิ่งนี้แตกต่างกันตามเชลล์หรือไม่ หรือว่าเชลล์ทั้งหมดมีแค่ "ไดเรกทอรี" ของคำสั่งที่พวกมันรู้จัก? ประการที่สองคำถามที่แตกต่างกัน แต่ฉันจะลบล้างคำถามเหล่านั้นได้อย่างไร ในคำอื่น ๆ วิธีการที่ฉันสามารถเขียนของตัวเองviewคำสั่งเพื่อแทนที่หนึ่งที่มีอยู่ในระบบ Ubuntu vimของฉันซึ่งดูเหมือนจะเป็นเพียงแค่โหลด
32 shell  command 


3
บริการแปลก ๆ ที่มีชื่อว่า“ Carbon” ทำงานทุกวันและครอบครอง CPU 100%
ในช่วงสองสามสัปดาห์ที่ผ่านมามีกิจกรรมแปลก ๆ ในเซิร์ฟเวอร์ทดสอบ Ubuntu ของฉัน โปรดตรวจสอบภาพหน้าจอด้านล่างจาก htop ทุกวันบริการแปลก ๆ นี้ (ซึ่งดูเหมือนว่าบริการการขุด cryptocurrency) กำลังทำงานและรับ CPU 100% เซิร์ฟเวอร์ของฉันสามารถเข้าถึงได้ผ่านทางคีย์ ssh เท่านั้นและการลงชื่อเข้าใช้รหัสผ่านถูกปิดใช้งาน ฉันพยายามค้นหาไฟล์ที่มีชื่อนี้ แต่หาไม่พบ คุณช่วยฉันด้วยปัญหาด้านล่างได้ไหม จะค้นหาตำแหน่งกระบวนการจากรหัสกระบวนการได้อย่างไร ฉันจะลบสิ่งนี้ได้อย่างไร มีความคิดใดบ้างที่สิ่งนี้อาจเข้าสู่เซิร์ฟเวอร์ของฉัน เซิร์ฟเวอร์รันการทดสอบส่วนใหญ่ของการปรับใช้ Django เป็นหลัก

3
ข้อแตกต่างระหว่าง ping localhost กับ ping 127.0.0.1 คืออะไร?
หลังจากดำเนินการต่อไปนี้เพื่อปิดการตอบ ping: # sysctl net.ipv4.icmp_echo_ignore_all=1 # sysctl -p ฉันได้รับผลลัพธ์ที่แตกต่างจากการ ping localhost เทียบกับ 127.0.0.1 # ping -c 3 localhost PING localhost(localhost (::1)) 56 data bytes 64 bytes from localhost (::1): icmp_seq=1 ttl=64 time=0.029 ms 64 bytes from localhost (::1): icmp_seq=2 ttl=64 time=0.035 ms 64 bytes from localhost (::1): icmp_seq=3 ttl=64 time=0.101 …
31 ping  sysctl 

2
ทำไมไดเร็กตอรี่ / home, / usr, / var, ฯลฯ ล้วนมีหมายเลขไอโหนดเดียวกัน (2)?
ฉันพบว่าภายใต้ไดเรกทอรีรากของฉันมีบางไดเรกทอรีที่มีหมายเลขไอโหนดเดียวกัน: $ ls -aid */ .*/ 2 home/ 2 tmp/ 2 usr/ 2 var/ 2 ./ 2 ../ 1 sys/ 1 proc/ ฉันรู้เพียงว่าชื่อไดเรกทอรีนั้นถูกเก็บไว้ในไดเรกทอรีหลักและข้อมูลของพวกเขาจะถูกเก็บไว้ใน inode ของไดเรกทอรีเอง ฉันสับสนที่นี่ นี่คือสิ่งที่ฉันคิดว่าเมื่อฉันติดตามชื่อพา ธ / home / user1 ก่อนอื่นฉันจะเข้าสู่ inode 2 ซึ่งเป็นไดเรกทอรีรูทซึ่งมีรายการไดเรกทอรี จากนั้นฉันก็พบชื่อบ้านที่จับคู่กับ inode 2 ดังนั้นฉันกลับไปที่ดิสก์เพื่อค้นหา inode 2? และฉันจะได้รับชื่อผู้ใช้ 1 ที่นี่?

2
ความแตกต่างระหว่าง kill, pkill และ killall คืออะไร
ผมคุ้นเคยกับkillคำสั่งและส่วนใหญ่ของเวลาที่เราเพียงแค่ใช้ฆ่า -9 จะฆ่ากระบวนการที่เข้มแข็งมีสัญญาณอื่น ๆ killอีกมากมายที่สามารถนำมาใช้กับ แต่ฉันสงสัยว่าอะไรคือกรณีการใช้งานpkillและkillallหากมีคำสั่ง kill อยู่แล้ว ทำpkillและkillallใช้killคำสั่งในการนำไปปฏิบัติหรือไม่? ฉันหมายความว่าพวกเขาเป็นเพียงแค่ห่อหุ้มkillหรือพวกเขามีการใช้งานของตัวเอง? ฉันต้องการทราบว่าpgrepคำสั่งรับรหัสกระบวนการจากชื่อกระบวนการ คำสั่งทั้งหมดเหล่านี้ใช้การเรียกระบบพื้นฐานเดียวกันหรือไม่? มีมุมมองที่แตกต่างจากประสิทธิภาพการทำงานใดบ้างเร็วกว่ากัน?

1
เหตุใดไฟล์ที่เรียกทำงานได้ในเช่น / usr / sbin สามารถเขียนได้โดย root?
คุณช่วยอธิบายได้ไหมว่าทำไมไฟล์คอมไพล์ไบนารี (ตัวอย่างเช่น/usr/sbin) มีสิทธิ์ในการเขียนสำหรับrootผู้ใช้ สำหรับฉันมันถูกรวบรวม หมายความว่าการเขียนโดยตรงนั้นไม่มีประโยชน์และอาจทำให้ไฟล์มีปัญหาด้านความปลอดภัยบางประการ สคริปต์ (เช่นbashไฟล์) อาจเขียนได้เพราะมันเป็นไฟล์ข้อความโดยทั่วไป แต่ทำไมมันจึงเป็นแบบเดียวกันสำหรับไฟล์ที่คอมไพล์โดยที่ไม่จำเป็นต้องเขียนจริง ๆ เท่าที่ฉันรู้ ขอบคุณล่วงหน้าสำหรับความคิดเห็นของคุณ

4
วิธีย้ายหน้าต่างไปยังพื้นที่ทำงานอื่นใน Xfce
ทางลัดสำหรับ "ย้ายหน้าต่างไปยังพื้นที่ทำงานที่อื่น" ใน Xfce ควรจะเป็นCtrl+ Alt+ Shift+ ←/ →/ /↑ ↓แต่มันไม่ทำงานไม่มีทางลัดเช่นนั้น ทำไมฉันถึงขาดอะไรเลย?

3
`/ tmp / .X11-unix /` คืออะไร?
ฉันถามคำถามเดียวกันกับ Google และไม่ชอบผลลัพธ์ที่ได้ คือ/tmp/.X11-unix/อะไร
31 x11 

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