Unix & Linux

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

3
เหตุใดผู้ใช้ทั่วไปจึงไม่สามารถลบไดรฟ์ย่อย btrfs
การใช้ระบบไฟล์ btrfs ที่สร้างโดยผู้ใช้ที่มีการติดตั้งแบบวนรอบพร้อมการอนุญาตที่ถูกต้องผู้ใช้สามารถสร้าง bvfs subvolumes ได้อย่างอิสระ: user@machine:~/btrfs/fs/snapshots$ /sbin/btrfs sub create newsubvol Create subvolume './newsubvol' อย่างไรก็ตามการพยายามลบผลลัพธ์ย่อยที่สร้างขึ้นใหม่มีข้อผิดพลาด: user@machine:~/btrfs/fs/snapshots$ /sbin/btrfs sub del newsubvol Delete subvolume '/home/user/btrfs/fs/snapshots/newsubvol' ERROR: cannot delete '/home/user/btrfs/fs/snapshots/newsubvol' แน่นอนว่าผู้ใช้รูทสามารถลบได้: root@machine:/home/user/btrfs/fs/snapshots# /sbin/btrfs sub del newsubvol Delete subvolume '/home/user/btrfs/fs/snapshots/newsubvol' พฤติกรรมที่แตกต่างระหว่างการดำเนินการสร้างและลบนี้ดูแปลกไปหน่อย มีใครบ้างไหมที่ให้แสงนี้? นี่คือลำดับของคำสั่งที่แน่นอน: user@machine:~$ dd if=/dev/zero of=btrfs_disk bs=1M count=100 100+0 records in 100+0 records …
12 btrfs 

1
วิธีรวมสคริปต์หลายบรรทัด awk ในเชลล์สคริปต์
คำถามของฉันคือความต่อเนื่องของ วิธีแยกไฟล์เพื่อแยกตัวเลข 3 หลักที่เก็บใน "หมายเลขกลุ่ม" ฉันพยายามรวมในเชลล์สคริปต์ชุดเดียวของคำสั่งที่ แยกมาตรฐานยุโรปเพื่อแยกลำดับการทดสอบ แปลงการเข้ารหัสข้อความเป็น utf8 ประมวลผลผลลัพธ์ด้วยรูทีน awk ที่ให้ไว้กับฉันในโพสต์ด้านบน บันทึกเนื้อหาในไฟล์ปลายทาง ฉันเขียนสคริปต์ด้านล่างอย่างไม่แน่นอน ผมสามารถที่จะบรรลุเท่านั้นstep 1และstep 4แต่ไม่ว่ามิได้step 2 step 3ฉันสงสัยว่าควรสร้างไฟล์ระดับกลาง (ชั่วคราว) หรือไม่ ฉันพยายามเก็บผลลัพธ์ของขั้นตอนกลางไว้ในตัวแปร แต่ไม่ประสบความสำเร็จ ความช่วยเหลือใด ๆ ก็จะเป็นประโยชน์ในเรื่องข้อผิดพลาดและวิธีที่ดีที่สุดในการทำเช่นนี้ #!/bin/bash # creating the Latex code for a test procedure awkcommand= "/usr/bin/awk ' $1 == "Group" {printf("\\section{%s %d}\n", $1, $2); next} { title …
12 shell-script  awk 

2
หมายเลขสถานีในข้อความแสดงข้อผิดพลาด ssh หมายถึงอะไร
ในตัวอย่างด้านล่างหมายเลขช่องตรงกับอะไร? เซิร์ฟเวอร์ใดอยู่ ลูกค้าคนไหน $ ssh -L1570:127.0.0.1:8899 root@thehost Password: Last login: Fri Aug 9 13:08:44 2013 from theclientip Sun Microsystems Inc. SunOS 5.10 Generic January 2005 You have new mail. # channel 2: open failed: administratively prohibited: open failed channel 3: open failed: administratively prohibited: open failed channel 2: open failed: …

2
วิธีการรับอุณหภูมิแกนของแกน Haswell i7 ใน i3status
ฉันต้องการใช้i3statusเพื่อแสดงอุณหภูมิ CPU-Core ของฉัน (Haswell i7) อย่างไรก็ตามการตั้งค่า: order += "cpu_temperature 1" #... cpu_temperature 1{ format = "T: %degree °C" } # ไม่แสดงอุณหภูมิแกนที่ถูกต้อง ตัวเลขที่มันแสดงดูเหมือนจะสอดคล้องกับค่า xsensors ที่แสดงสำหรับ temp1 ถ้าฉันเปลี่ยน 1 เป็น 2 ข้างต้นมันจะสอดคล้องกับ xsensors temp2 การลอง 3 หรือ 4 จะไม่มีผลใด ๆ อย่างไรก็ตามฉันต้องการได้อุณหภูมิแกนที่แท้จริงของทั้ง 4 คอร์ด้วยสถานะ i3 ฉันจะทำสิ่งนี้ได้อย่างไร

3
“ / etc / issue” เป็นเรื่องปกติสำหรับลีนุกซ์รุ่นอื่นหรือไม่?
ฉันพยายามสร้างระบบปฏิบัติการตรวจจับการทำงานแบบพกพาในสคริปต์ทุบตี ดังนั้นฉันแค่อยากรู้ว่าไฟล์"/etc/issue"นี้เป็นเรื่องปกติสำหรับ Linux Flavours ทั้งหมดหรือไม่
12 login  etc  portability 

2
ฉันจะขอการนำทาง vim-stlye (hjkl) สำหรับข้อมูล GNU ได้หรือไม่
เลย์เอาต์ของแป้นพิมพ์เน็ตบุ๊กของฉันหมายความว่าการใช้ปุ่มลูกศรสำหรับการนำทางนั้นค่อนข้างอึดอัดเล็กน้อย มีวิธีทำให้หน้า GNU Info ใช้hjklการนำทางแบบ vim หรือไม่? ฉันรู้ว่าฉันสามารถ info printf | less ... และใช้ j และ k เพื่อเลื่อนขึ้นและลงซึ่งดีพอที่ฉันใช้หน้าข้อมูลสำหรับการอ่านดังนั้นการนำทางไปยังอักขระที่เฉพาะเจาะจงไม่สำคัญ แต่มันจะดีถ้าฉันสามารถทำสิ่งนี้ภายในinfoแทนที่จะหันไปใช้ท่อ
12 vim  less  info 

1
แสดงประเภทของอักขระขึ้นบรรทัดใหม่ใน Emacs
ฉันจะให้ Emacs แสดงประเภทของตัวละครใหม่ได้อย่างไร? ฉันกำลังมองหาสิ่งที่คล้ายกับที่ Notepadd ทำ (ดูด้านล่าง) ฉันอ่านว่า Emacs มาพร้อมกับตัวM-x whitespace-modeนี้ แต่ดูเหมือนจะไม่แสดงประเภทของอักขระควบคุม ASCII ที่ไฟล์ใช้เพื่อแสดง linebreaks ฉันไม่มีอะไรเลยหรือ หมายเหตุ: ฉันถามคำถามนี้ในSuperUserแต่ไม่ได้รับคำตอบใน 3 เดือนขึ้นไปดังนั้นฉันหวังว่าจะลองที่นี่ตอนนี้
12 emacs 

1
รับรหัสของคีย์จากแป้นพิมพ์แบบกำหนดเอง
ฉันพยายามแปลง Minitel เป็นคอมพิวเตอร์ด้วย Raspberry Pi นี่คือมินิเทล: ดังนั้นฉันจึงบัดกรีเมทริกซ์ของแป้นพิมพ์มินิเทลไปยัง pcb คีย์บอร์ด usb เช่นนี้ ทุกอย่างใช้งานได้ฉันได้รับคีย์จากแป้นพิมพ์ที่กำหนดเอง ฉันแค่ต้องทำการแมปกุญแจใหม่อีกครั้งอย่างเหมาะสม ดังนั้นฉันจึงพยายามสร้างโปรแกรมที่จะขอให้ฉันกดaและดักรหัสคีย์ที่เกี่ยวข้องจากนั้นใช้คีย์ทั้งหมดของคีย์บอร์ดที่กำหนดเองเพื่อสร้างไฟล์ xmodmap ปัญหาเดียวที่ฉันมีคือฉันไม่สามารถหาวิธีที่ฉันจะได้รับ keycode นั้น (และเพียงแค่นั้น!) ฉันพยายามxevแต่มีข้อมูลมากเกินไปที่จะแสดงผลเพื่อกรองออก ฉันรู้ว่าฉันสามารถติดตามรหัสทั้งหมดด้วยมือ แต่ฉันจะเปลี่ยน 10 Minitels ดังนั้นฉันต้องการวิธีที่เร็วกว่า!

2
เทียบเท่ากับ "truss -T" และ "truss -U" บน Linux หรือไม่
มีเทียบเท่าของสิ่งที่-Tและ-Uตัวเลือกของtrussยูทิลิตี้ Solaris ไม่เกี่ยวกับลินุกซ์ สิ่งเหล่านี้คือการระบุการเรียกของระบบ ( -T) หรือฟังก์ชั่นห้องสมุด ( -U) ซึ่งเมื่อเรียกใช้โดยแอปพลิเคชันที่ติดตามจะทำให้เกิดการหยุด หรือกล่าวเป็นอย่างอื่นฉันต้องการให้กระบวนการใด ๆ ที่เริ่มต้นโดยแอปพลิเคชันที่ติดตามแล้วหยุดทำงาน (ราวกับถูกฆ่าโดย SIGSTOP) ทันทีที่ทำการเรียกระบบหรือการเรียกฟังก์ชั่นไลบรารีที่แชร์ straceและltraceบน Linux นั้นมีชุดฟีเจอร์มากมายของ Solaris trussแต่พวกเขาดูเหมือนจะไม่ทำเช่นนั้น ตัวอย่างเช่น truss -f -T open cmd จะเป็นเช่นstrace -f cmdนั้นยกเว้นว่าหากกระบวนการที่ดำเนินการcmdหรือลูกหลานของมันopenเรียกระบบใด ๆมันจะหยุดทันที (และฉันสามารถดำเนินการต่อในภายหลังได้ตามความสะดวกของฉัน) ในบางกรณีฉันสามารถใช้งานgdbได้catch syscallแต่ฉันกำลังมองหาวิธีแก้ปัญหาที่สามารถติดตามส้อมได้อย่างสะดวกและดำเนินการต่อสำหรับกระบวนการทางแยกทั้งหมดและทำexecveต่อไปเรื่อย ๆ ดูเหมือนว่าฉันจะเรียกคืนยูทิลิตี้บางอย่างที่ให้ฟังก์ชั่นเดียวกันแม้แต่หนึ่ง (หรือตัวเลือกสำหรับยูทิลิตี้เดียวกันนั้น) ไปยังแอปพลิเคชันขั้นตอนเดียวระหว่างบางเหตุการณ์ของ syscall บางระยะไกลเช่นนั้น แต่หน่วยความจำของฉัน ที่อยู่บน Linux

4
ฉันจะเปลี่ยนเค้าโครงแป้นพิมพ์ที่เลือกในปัจจุบันจากบรรทัดคำสั่งได้อย่างไร
ฉันมีรูปแบบแป้นพิมพ์ของฉัน (สองรูปแบบ) และสลับไปมาระหว่างรูปแบบเหล่านั้นด้วยคำสั่งต่อไปนี้: setxkbmap -layout us,ru -option -option "grp:lctrl_lshift_toggle,ctrl:nocaps" ตอนนี้ฉันต้องการเปลี่ยนเป็นusเค้าโครงโดยใช้คำสั่ง command line เป็นไปได้ไหม

2
วิธีการบังคับให้แฟนหมุนตลอดเวลา?
ฉันใช้ ArchLinux กับ HP Pavilion dv9000t ซึ่งมีปัญหาความร้อนสูงเกินไป ฉันทำทุกสิ่งที่ทำได้เพื่อให้อากาศไหลเวียนได้ดีขึ้นในแล็ปท็อปและวางแผ่นระบายความร้อนที่ดีขึ้น แต่ยังคงมีปัญหา: พัดลมหยุดหมุนเมื่ออุณหภูมิของ CPU ต่ำ (แม้ว่าอุณหภูมิของ GPU สูงซึ่งเป็นปัญหา) ฉันพบว่าฉันสามารถทำให้พัดลมทำงานโดยการเรียกใช้คำสั่งประมวลผลจำนวนมาก (เช่นyesคำสั่ง) อย่างไรก็ตามมันไม่ใช่วิธีแก้ปัญหาเพราะฉันต้องหยุดคำสั่งนี้เมื่อ CPU ร้อนเกินไปและเปิดอีกครั้งเมื่อพัดลมหยุด (เพื่อให้ GPU ไม่ร้อน) ฉันพยายามควบคุมพัดลมโดยใช้วิกินี้แต่เมื่อฉันรันpwmconfigฉันได้รับข้อผิดพลาดนี้: /usr/bin/pwmconfig: There are no pwm-capable sensor modules installed คุณรู้หรือไม่ว่าฉันจะทำอย่างไรเพื่อให้แฟน ๆ ปั่นอยู่เสมอ แก้ไข: sensors-dectectผลผลิตเป็นที่ต่อไปนี้: ~/ sudo sensors-detect # sensors-detect revision 6170 (2013-05-20 21:25:22 +0200) # System: Hewlett-Packard …
12 temperature  fan  gpu 

1
การส่งต่อ ssh-agent สำหรับ Vagrant VM
ฉันกำลังมองหาที่ตั้งค่าจรจัดสภาพแวดล้อมบนเครื่อง Mac ของฉันเพื่อที่ฉันสามารถเรียกใช้vagrant upและจากนั้นก็จะติดตั้งrbenvและrubyและทั้งหมดที่ฉันต้องการ จากนั้นฉันมีสคริปต์ Bash ที่จะดึง repos ทั้งหมดของฉันจาก GitHub สิ่งเดียวคือ vm คนจรจัดของฉันตอนนี้ต้องสร้างคีย์ ssh แล้วเชื่อมโยงกับบัญชี Github ของฉัน สิ่งนี้อาจยุ่งยาก โดยเฉพาะอย่างยิ่งเนื่องจากฉันต้องการแบ่งปันไฟล์ Vagrant ของฉันกับทุกคนที่มีสิทธิ์เข้าถึง repos ของเราเพื่อให้พวกเขาสามารถทำเช่นเดียวกัน ดังนั้นฉันคิดว่าฉันสามารถลองส่งต่อโฮสต์ของฉันไปที่ VM เพื่อให้ VM สามารถส่งต่อโฮสต์ของฉันไปที่ Github ได้ ตามบทความนี้: Githubs คำแนะนำฉันตั้งค่า ssh ของโฮสต์: Host localhost ForwardAgent yes และตั้งในไฟล์คนจรจัดของฉัน Vagrant.configure("2") do |config| config.ssh.forward_agent = true ... end และเมื่อฉันเข้าสู่ VM …

2
มีวิธีการมิเรอร์เอาท์พุท USB หรือไม่?
ฉันกำลังเขียนโปรแกรมสำหรับโครงการ มันมีไว้สำหรับระบบการอ่านอักษรเบรลล์ที่ฉันมีการเชื่อมต่อจอแสดงผลอักษรเบรลล์ผ่าน USB ที่ควบคุมโดยโปรแกรมที่เรียกว่า brltty หนึ่งในข้อกำหนดสำหรับโครงการนี้คือการมีความสามารถในการเชื่อมต่อมากกว่าหนึ่งจอแสดงผลอักษรเบรลล์แม้ว่าจะอนุญาตให้ใช้จอแสดงผลหลักเท่านั้นที่มีการควบคุมระบบ ฉันคิดว่าวิธีที่ง่ายที่สุดในการทำเช่นนี้คือแทนที่จะต้องส่งคำสั่งไปยังทุก ๆ อินสแตนซ์ของโปรแกรมของฉันฉันสามารถสะท้อนสิ่งที่ส่งออกไปยัง USB หลักไปยังพอร์ต USB แต่ละพอร์ต เป็นไปได้ไหม
12 usb  c  tty  output  mirror 

6
ทำไม“ $ ((~ 33))” ถึง -34
$ echo $(( 255 )) 255 $ echo $(( 33 )) 33 $ echo $(( ~33 )) -34 $ echo $(( ~255 )) -256 $ และเคอร์เนลของฉันคือ: $ uname -a Linux HOSTNAME 3.2.0-40-generic-pae #64-Ubuntu SMP Mon Mar 25 21:44:41 UTC 2013 i686 i686 i386 GNU/Linux คำถาม: ใช้ ~สำหรับลบหมายเลข AFAIK แต่ทำไมต้อง~33ผลิต-34และทำไมจะ~255ผลิต-256?
12 bash  shell  arithmetic 

2
การกำหนดหมายเลข wlan
Linux กำหนดตำแหน่งของอุปกรณ์เครือข่ายได้อย่างไรหรือที่ไหน? โดยเฉพาะwlan0หรือwlan1สำหรับอุปกรณ์ USB ไร้สาย ผมเสียบในไร้สาย TP USB wlan0ในขณะที่ที่ผ่านมาและได้รับมอบหมาย ฉันลบมัน สัปดาห์นี้ผมเสียบในอุปกรณ์ไร้สาย Edimax USB wlan1และมันขึ้นมาเป็น ผมหยิบมันออกมาในวันนี้เพื่อพยายามเป็นครั้งที่สอง Edimax อุปกรณ์ไร้สาย USB (ผมซื้อสอง) wlan2และตอนนี้ก็ขึ้นมา ฉันรู้ว่าเพียงพอของ Unix / Linux ที่จะรู้ว่านี้จะถูกกำหนดค่าบางและถ้าผมลบไฟล์ config ที่ไม่ได้ใช้ฉันสามารถทำให้ล่าสุด Edimax wlan0กลายเป็น แต่อย่างไร / ที่ไหน

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