Unix & Linux

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

5
ค้นหาอุปกรณ์ / dev / root ใดที่แสดงถึงใน Linux?
บน linux จะมี/dev/rootโหนดอุปกรณ์ /dev/sdaXนี้จะเป็นอุปกรณ์ป้องกันเช่นเดียวกับโหนดอุปกรณ์อื่นเช่น ฉัน/dev/rootจะแก้ไขโหนดอุปกรณ์ 'ของจริง' ในสถานการณ์นี้เพื่อให้ฉันสามารถแสดงชื่ออุปกรณ์ที่สมเหตุสมผลได้อย่างไร /proc/mountsตัวอย่างเช่นผมอาจจะพบกับสถานการณ์นี้เมื่อแยก ฉันกำลังมองหาวิธีแก้ปัญหาที่สามารถใช้งานได้จากสคริปต์ shell / python แต่ไม่ใช่ C
17 linux  proc  devices 

3
ดูการเปลี่ยนเส้นทาง STDOUT ของกระบวนการทำงาน
ถ้าฉันเริ่มต้นแอพด้วยคำสั่งนี้: /path/to/my/command >> /var/log/command.log และคำสั่งจะไม่ส่งคืนมีวิธีอื่นจากพรอมต์อื่นหรือไม่เพื่อดูว่าการเปลี่ยนเส้นทาง STDOUT ถูกตั้งค่าเป็นอะไร ฉันกำลังมองหาบางอย่างเช่น cat /proc/PID/redirects หรือ ps -??? | grep PID แต่วิธีการใด ๆ ที่จะทำ

4
killall ให้ฉัน "ไม่พบกระบวนการ" นอกจาก ps
ใครสามารถอธิบายให้ฉันความแตกต่างระหว่างkillและkillall? เหตุใดจึงไม่killallเห็นสิ่งที่psแสดง # ps aux |grep db2 root 1123 0.0 0.8 841300 33956 pts/1 Sl 11:48 0:00 db2wdog db2inst1 1125 0.0 3.5 2879496 143616 pts/1 Sl 11:48 0:02 db2sysc root 1126 0.0 0.6 579156 27840 pts/1 S 11:48 0:00 db2ckpwd root 1127 0.0 0.6 579156 27828 pts/1 S 11:48 0:00 …
17 linux  process  kill  ps 

5
ฉันจะดูเว็บแคมของฉันดึงข้อมูลใน linux ได้อย่างไร
ในหน้าต่างฉันสามารถเปิด "คอมพิวเตอร์ของฉัน" และคลิกที่ไอคอน "เว็บแคม" เพื่อรับฟีดจากเว็บแคมของฉัน ฉันสามารถถ่ายภาพฟีดนั้นได้ ฉันสามารถทำเช่นเดียวกันใน Ubuntu ได้หรือไม่ โดยไม่ต้องติดตั้งแอปพลิเคชันพิเศษเช่น Photobooth
17 linux  ubuntu  video 

2
ssh และการเข้ารหัสอักขระ
เมื่อฉันsshเข้าสู่ VPS ของฉันฉันได้irssiทำงานในหน้าจอ เมื่อมีคนส่งอักขระยูนิโค้ด (เช่น©หรือ€) irssiแสดงขยะเมื่อฉันใช้ผ่านหน้าจอในsshเซสชัน หากฉันเชื่อมต่อกับสิ่งนั้นirssiโดยใช้โมดูลพร็อกซีของ irssi จาก irssi ที่ทำงานบนเครื่องคอมพิวเตอร์ของฉันมันจะแสดงขึ้นอย่างถูกต้อง ในทำนองเดียวกันถ้าฉันใช้ ghci บน VPS (นอกจอ) และป้อนหนึ่งในตัวละครเหล่านั้นมันก็จะล่ม ดังนั้นเห็นได้ชัดว่ามีปัญหาการเข้ารหัสตัวอักษรของการเรียงลำดับบางอย่างกับการเชื่อมต่อของฉันกับ VPS ของฉันทั้งใน ssh หรือการตั้งค่าระบบ ฉันจะทราบได้อย่างไรว่าเกิดอะไรขึ้นและแก้ไขได้อย่างไร รายละเอียด: ระบบไคลเอนต์ Arch Linux x64 การเข้ารหัส UTF-8 ระบบ VPS เซิร์ฟเวอร์ Ubuntu 10.04 ใช้การเข้ารหัสที่ไม่รู้จัก ฉันจะหาสิ่งนี้ได้อย่างไร (ฉันต้องดูใน /etc/rc.conf เพื่อหา Arch)

1
การดีบักสคริปต์ความแตกต่างระหว่าง -x ถึง set -euxo pipefail คืออะไร
วิธีหลักที่ฉันรู้ว่าการดีบักสคริปต์คือการเพิ่ม-xไปที่ shabang ( #!/bin/bash -x) เมื่อเร็ว ๆ นี้ฉันได้พบกับวิธีการใหม่เพิ่มset -euxo pipefailสิทธิใต้ shabang เช่นเดียวกับใน: #!/bin/bash set -euxo pipefail อะไรคือข้อแตกต่างที่สำคัญระหว่างสองวิธีในการดีบัก มีบางครั้งที่คุณอยากได้คนที่เหนือกว่าคนอื่นหรือไม่? ในฐานะน้องใหม่หลังจากอ่านที่นี่ฉันไม่สามารถแยกข้อสรุปเช่นนั้นได้

3
DRPM คืออะไรและแตกต่างจาก RPM อย่างไร
ทำการอัพเดทในกล่อง CentOS 7 ของฉันและฉันสังเกตเห็นว่ามี DRPM จำนวนหนึ่งติดตั้งอยู่ หลังจากทำการค้นหาใน google ไม่มีคำตอบสำหรับคำถามนี้ดังนั้นฉันคิดว่ามันจะเหมาะที่จะถาม ฉันสงสัยว่า DRPM คืออะไร แตกต่างจากแพ็คเกจ RPM อย่างไร
17 centos  rpm 

3
นักเทียบท่าจะแทนที่ไฟล์ /etc/resolv.conf ของฉันภายในคอนเทนเนอร์
ฉันต้องการตั้งค่าresin/rpi-raspbian:jessieคอนเทนเนอร์ของฉันเป็น/etc/resolv.conf: nameserver 208.67.222.222 nameserver 208.67.220.220 My Dockerfile มีบรรทัดต่อไปนี้: ADD resolv.conf /etc/resolv.conf ไฟล์ที่เพิ่มนี้มีเนมเซิร์ฟเวอร์ที่ถูกต้อง โฮสต์ของนักเทียบท่าของฉัน/etc/resolv.confมีข้อมูลที่ถูกต้อง ฉันใช้ภาชนะเช่นนี้: docker run -itd --cap-add=NET_ADMIN --device /dev/net/tun \ -v /home/pi/share/ovpn:/ovpn \ --privileged --network=internet_disabled --name vpn-client \ --dns=208.67.222.222 \ openvpn-client_nat-gateway /bin/bash แม้ทั้งหมดนี้คอนเทนเนอร์จะให้ผลลัพธ์นี้: root@642b0f4716ba:/# cat /etc/resolv.conf nameserver 127.0.0.11 options ndots:0 เป็นเพียงหลังจากที่ฉันเปลี่ยน resolv.conf ด้วยตนเองจากภายในคอนเทนเนอร์ (หรือกับนักเทียบท่า exec) ที่มันดูถูกต้อง ฉันควรหลีกเลี่ยงการแก้ไขด้วยคำสั่ง exec ใครมีความคิดว่าเกิดอะไรขึ้นที่นี่
17 docker 

1
เหตุใดคำสั่ง `รีเซ็ต 'จึงรวมการหน่วงเวลาไว้
resetคำสั่งรวมถึงความล่าช้าระหว่างการล้างหน้าจอและกลับ xterm-256colorนี่คือแม้ในประเภทอาคารใหม่ล่าสุด ทำไม? man resetไม่ได้พูดถึงความล่าช้าเพียงการพิมพ์สตริงพิเศษ (ไม่ได้กล่าวถึงการล้างหน้าจอเช่นกันฉันถือว่านี่รวมอยู่ในสตริงการกำหนดค่าเริ่มต้นของเทอร์มินัล) ฉันสังเกตเห็นผลลัพธ์ต่อไปนี้ในstrace -f reset: nanosleep({tv_sec=1, tv_nsec=0}, 0x7ffe1964f100) = 0 ioctl(2, SNDCTL_TMR_STOP or TCSETSW, {B38400 opost isig icanon echo ...}) = 0
17 terminal 

3
เซสชัน tmux ใหม่ไม่ได้มาไฟล์ bashrc
สรุป เมื่อฉันสร้างเซสชั่น tmux ใหม่พรอมต์ของฉันจะดึงจากการกำหนดค่า bash เริ่มต้นและฉันต้องเรียกใช้ด้วยตนเองที่source ~/.bashrcกำหนดเอง การวิเคราะห์ ฉันใช้เครื่อง RHEL 7 ฉันเริ่มสังเกตเห็นพฤติกรรมนี้หลังจากที่ทุบตีอัปเดตไปพักหนึ่ง แต่ยังไม่ได้ไปถามคำถามจนถึงตอนนี้ ตัวอย่างเช่นฉันปรับแต่งการแจ้งเตือนของฉันให้มีลักษณะดังนี้: [user@hostname ~]$ เมื่อใดก็ตามที่ฉันเริ่มต้นเซสชั่น tmux ใหม่มันใช้สิ่งที่ดูเหมือนจะเป็นค่าเริ่มต้นทุบตี: -sh-4.2$ การดำเนินการอย่างรวดเร็วของการsource ~/.bashrcแก้ไขปัญหาเสมอ แต่ก็น่ารำคาญที่ฉันต้องทำเช่นนี้ทุกครั้งที่ฉันต้องการแก้ไขสิ่งเล็ก ๆ มีความคิดเห็นเกี่ยวกับวิธีการใช้ tmux ในการทำเช่นนี้อีกครั้งโดยอัตโนมัติหรือไม่? หากต้องการข้อมูลเพิ่มเติมใด ๆ ฉันยินดีที่จะให้ tmux.conf สำหรับการอ้างอิงฉันมีtmux.confไฟล์ของฉันด้านล่างแม้ว่ามันจะไม่ค่อยเป็นสิ่งที่คุณจะเรียกว่ากำหนดเองได้ setw -g mode-keys vi # reload tmux.conf bind r source-file ~/.tmux.conf \; display-message " ✱ ~/.tmux.conf is reloaded"
17 bash  tmux 

2
/ dev / {udp, tcp} เป็นมาตรฐานหรือมีอยู่ทุกที่หรือไม่?
ฉันได้เรียนรู้เมื่อเร็ว ๆ นี้เกี่ยวกับ/dev/udpและ/dev/tcpหลอกอุปกรณ์ที่นี่ พวกมันจำเพาะเจาะจงกับ GNU / Linux ดิสทริบิวชันหรือฉันสามารถหามันในระบบยูนิกซ์อื่น ๆ ได้หรือไม่? พวกเขามีมาตรฐานในบางวิธี? จนถึงตอนนี้ฉันสามารถใช้พวกมันสำเร็จบน OS X, Arch Linux และ CentOS
17 devices  tcp  udp  portability 

2
ฉันจะรับ xargs เพื่อแสดงบรรทัดคำสั่งที่สร้างโดยไม่ต้องรันได้อย่างไร
คำสั่ง linux จำนวนพอสมควรมีตัวเลือกการรันแบบแห้งซึ่งจะแสดงให้คุณเห็นว่าพวกเขากำลังทำอะไรโดยไม่ทำ ฉันไม่เห็นอะไรเลยในหน้า man ของ xargs ที่ทำสิ่งนั้นและไม่มีวิธีที่ชัดเจนในการลอกเลียนแบบ (กรณีการใช้งานเฉพาะของฉันคือการแก้ไขปัญหาท่อยาว แต่ฉันแน่ใจว่ามีคนอื่น ๆ ) ฉันพลาดอะไรไปรึเปล่า?
17 xargs 


4
คำนำหน้าและสตริงต่อท้ายไปยังแต่ละบรรทัดออกจากคำสั่ง
ฉันพบปัญหาขณะพยายามเขียนสคริปต์ Bash เมื่อgrepผลลัพธ์มันจะส่งคืน (ปกติ) หลายบรรทัด ฉันต้องการคำนำหน้าและต่อท้ายสตริงกับแต่ละบรรทัดเอาต์พุตเหล่านี้ ฉันยังต้องการที่จะทราบว่าฉันท่อlsเข้าgrepเช่น: ls | grep

15
Bash script: แบ่งคำในแต่ละตัวอักษร
ฉันจะแยกตัวอักษรของคำด้วยตัวอักษรแต่ละตัวในบรรทัดแยกกันได้อย่างไร ตัวอย่างเช่นเมื่อ"StackOver" ฉันต้องการที่จะเห็น S t a c k O v e r ฉันใหม่ในการทุบตีดังนั้นฉันไม่มีเงื่อนงำที่จะเริ่ม

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