Unix & Linux

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

1
ฉันจะใช้ inotify หรือตั้งชื่อ pipes ผ่าน SSHFS ได้อย่างไร
ด้วยsshfsความมหัศจรรย์ฉันสามารถติดตั้ง dir บ้านของฉันจากเซิร์ฟเวอร์ระยะไกลด้วย sshfs user@server:/home/user ~/remote ในแง่ดีฉันคิดว่าฉันตั้งค่าโลคัลinotify-hook on ~/remote/logFile(ในsshfsmount) ดังนั้นโปรแกรมโลคัลสามารถตอบสนองต่อการเปลี่ยนแปลงบันทึกระยะไกล cd ~/remote touch logFile # create remote file inotifywait logFile & # set up local inotify-hook ssh user@server -x touch /home/user/logFile # touch file from remote ไม่มีอะไรเกิดขึ้น inotifywaitจะเงียบถ้าฉันtouchไฟล์ในเครื่อง การเขียนไปป์ที่มีชื่อล้มเหลวในทำนองเดียวกัน ทำไมนี้ ฉันจะเชื่อมช่องว่างนี้ได้อย่างไร ฉันสามารถเรียกใช้inotifywaitจากระยะไกลแฮ็คอัพระบบไฟล์ให้เปลี่ยนกลยุทธ์การทำให้เป็นอนุกรมและรักษาการเชื่อมต่อกับโลคัล แต่โดยทั่วไปแล้วฉันใช้ SSHFSอีกครั้ง และมันก็ฆ่าสิ่งที่เป็นนามธรรมอย่างสมบูรณ์
12 sshfs  inotify  fifo 

3
ฉันสามารถเร่งความเร็วการวางเป็นกลุ่มได้หรือไม่
ฉันคัดลอกส่วนหนึ่งของ HTML ออกจากหน้าเว็บและต้องการบันทึกไว้ในไฟล์ สำหรับการที่ฉันเริ่มvim เซสชั่นใหม่ในหน้าต่างเทอร์มินัลโดยมีชื่อไฟล์ (ใหม่) ที่ระบุใน commandline กดiเพื่อเข้าโหมดแทรกจากนั้นCtrlShift+ Vและรอขณะที่[-- INSERT --]แสดงที่ด้านล่างและรอ ... เนื่องจากvimไม่ตอบสนองหลังจากผ่านไปหลายวินาทีฉันจึงเปิด 'ตัวแก้ไขข้อความ' จากเมนูแอปพลิเคชัน→ Accessoiries วางข้อความ (ซึ่งปรากฏขึ้นภายในเสี้ยววินาทีที่บันทึกไว้ภายใต้ชื่อใหม่ปิดและฆ่าเซสชัน Vim ที่ ยังไม่เสร็จภายใน 1.5 นาทีต่อมาปริมาณของข้อความคือ 186K ใน 3200 บรรทัดไม่มากเกินไปที่ฉันจะพูดและไม่ยาวเกินไป มีวิธีในการเพิ่มความเร็วของการแทรกเหล่านี้ในvimและ / หรือมีคำอธิบายว่าทำไมจึงช้าเมื่อเทียบกับการใช้ตัวแก้ไขข้อความที่น่ากลัวและวางเมาส์? (% CPU ตามที่topไม่ได้สูงกว่า 5% แม้ว่าฉันจะมีโปรเซสเซอร์บางตัวฟรีในระบบดังนั้นมันอาจเป็นปัญหาของ I / O ที่ถูกผูกไว้ซึ่งไม่มีอยู่เมื่ออ่านข้อความเดียวกันจากไฟล์) ข้อมูลรุ่น: Ubuntu 12.04 Vim: 7.3 พร้อมแพตช์ตามที่จัดทำโดย Ubuntu 12.04 bash: 4.2.25 …
12 vim  clipboard 

1
พฤติกรรมที่แน่นอนของคำสั่งคือ: การเปลี่ยนแปลงที่อยู่ ip?
ฉันเล่นซอกับ IPv6 และอายุการใช้งานที่อยู่ ฉันพบว่าvalid_lftคุณลักษณะนี้จะทำให้ที่อยู่ v6 หายไปโดยอัตโนมัติหากใช้อย่างถูกต้อง เพื่อยืดอายุการใช้งานของที่อยู่ฉันต้องการ ip addr change 1:2:3:4::1/112 dev eth0 valid_lft 86000 การใช้ip addr changeไม่ปรากฏในมนุษย์หน้าเว็บใด ๆ ฉันมีการเข้าถึง (เดอูบุนตูและออนไลน์ ) และยังไม่ได้อยู่ในเอกสารที่เป็นทางการ ฉันพบในบทความที่อ้างถึงอีเมลจาก 2009 ถึงรายการส่งเมล ipv6-ops จากสิ่งที่ฉันสามารถระบุได้ว่าเล่นไปรอบ ๆ ฉันคิดว่าสามารถใช้ip addr changeแทนได้เสมอip addr addเพราะถ้าไม่มีที่อยู่ipจะเพิ่มที่อยู่เพียงแค่ip addr addใช้ นั่นคือถูกต้องหรือไม่ใครสามารถอธิบายสิ่งที่ถูกต้องip addr changeและมันแตกต่างจากip addr addอะไร

2
ข้อผิดพลาด“ ไม่มีเป้าหมาย” โดยใช้ Make
ฉันเรียนรู้วิธีใช้makeและสร้างไฟล์ดังนั้นฉันจึงเขียนไฟล์เล็ก ๆ นี้: %.markdown: %.html pandoc -o $< $@ แต่เมื่อฉันวิ่งmakeสิ่งที่ฉันได้รับคือmake: *** No targets. Stop.สิ่งที่เกิดขึ้น?
12 make 

2
แพคเกจไบนารีคืออะไร? สร้างได้อย่างไร?
ฉันต้องการรับรายละเอียดเกี่ยวกับแพคเกจไบนารีและเรียกใช้บน linux ฉันใช้งานฐาน Debian (Ubuntu / Linux เหรียญกษาปณ์) Linux os วิธีการสร้างแพ็คเกจไบนารีจากแหล่งที่มา? และฉันสามารถดาวน์โหลดแพ็คเกจไบนารีโดยตรงสำหรับแอปพลิเคชัน (เช่น firefox ฯลฯ ) และเกม (เช่น boswars เป็นต้น) ได้หรือไม่ ฉันเรียกใช้แพ็คเกจโดยตรงซึ่งอยู่ในรูปแบบ "xyz.linux.run" แพ็คเกจเหล่านี้คืออะไร พวกเขาเป็นอิสระจากการพึ่งพา? หรือมันเป็นแพคเกจไบนารีที่สร้างไว้ล่วงหน้า? วิธีการสร้างพวกเขาซึ่งสามารถทำงานบนระบบปฏิบัติการ linux โดย "xyz.linux.run" โดยตรงบน linux ความแตกต่างระหว่างแพคเกจไบนารีและแพคเกจ deb คืออะไร?

1
ไม่สามารถโหลดโมดูล: ไม่เห็นด้วยเกี่ยวกับรุ่นของสัญลักษณ์ module_layout
ทำตามบทช่วยสอนนี้เพื่อเขียนไดรเวอร์แรกของฉัน Makefile คือ: # Makefile – makefile of our first driver # if KERNELRELEASE is defined, we've been invoked from the # kernel build system and can use its language. ifneq (${KERNELRELEASE},) obj-m := ofd.o # Otherwise we were called directly from the command line. # Invoke the kernel build …


2
เรื่องราวของคำแนะนำไฟล์คำสั่งคืออะไร
ในขณะที่ฉันกำลังอ่านfile(1)ฉันสังเกตเห็นสิ่งนี้ในหน้าคน (เน้นที่เหมือง): เมื่อเพิ่มคำจำกัดความท้องถิ่นลงใน / etc / magic ตรวจสอบให้แน่ใจว่าได้เก็บคำหลักเหล่านี้ไว้ ผู้ใช้ขึ้นอยู่กับการรู้ว่าไฟล์ที่อ่านได้ทั้งหมดในไดเรกทอรีมีคำว่า "text" พิมพ์ อย่าทำอย่างที่ Berkeley ทำและเปลี่ยน "shell command text" เป็น "shell script" เรื่องราวเบื้องหลังประโยคนี้คืออะไร ฉันเดาว่าBerkeleyหมายถึงBSD (Berkeley software distribution)แต่ Google ไม่ได้ให้ข้อมูลเพียงพอเกี่ยวกับเรื่องนี้ ลิงก์ไปที่file(1) http://man7.org/linux/man-pages/man1/file.1.html บางขุดรอบ ๆ แสดงให้เห็นว่าคำสั่งนี้ถูกบันทึกอยู่ใน 27 ปีที่ผ่านมาการเชื่อมโยง Don't do as one computer vendor did \- change ``shell commands text'' to ``shell script''. และต่อมาเปลี่ยนเป็นลิงก์คำสั่งปัจจุบัน …

2
เหตุใด BASH จึงพิมพ์“ bash: cd: write error: Success”
วันนี้ฉันสังเกตเห็นหลายครั้ง หากฉันพิมพ์cd ../Directoryเพื่อเปลี่ยนเป็นไดเร็กทอรีอื่นจะพิมพ์ "bash: cd: write error: Success" ฉันไม่สามารถกำหนดคำสั่งก่อนหน้านี้ที่เกี่ยวข้องกับสิ่งนี้ได้ typeset -f พิมพ์อะไร alias พิมพ์อะไร type -a cd พิมพ์ "cd เป็นเชลล์ในตัว" echo $CDPATH พิมพ์บรรทัดว่าง $BASH_VERSION พิมพ์ "bash: 4.2.37 (1) -release: ไม่พบคำสั่ง" ฉันสังเกตแค่ 2-3 ครั้งเท่านั้น ไดเร็กทอรีเริ่มต้นและไดเร็กทอรีเป้าหมายเหมือนกันในทั้งสองสถานการณ์ ฉันเปลี่ยนไดเรกทอรีในลักษณะนี้หลายครั้ง แต่ไม่พบข้อผิดพลาดเสมอ สิ่งที่อาจทำให้เกิดสิ่งนี้
12 bash 

5
ย้ายไฟล์ตามรายการในไฟล์ (พร้อมช่องว่างนำหน้า)
ฉันมีไฟล์ที่มีชื่อไฟล์ ตัวอย่างเช่น: /tmp/list.txt (ขึ้นอยู่กับช่องว่างที่จุดเริ่มต้นของแต่ละบรรทัด): /tmp/file.log /app/nir/home.txt /etc/config.cust ฉันต้องการใช้หนึ่งบรรทัดเพื่อย้ายไฟล์ทั้งหมดที่ระบุไว้/tmp/list.txtไปยัง/app/dest ดังนั้นควรเป็นดังนี้: cat /tmp/list.txt | xargs mv /app/dest/

1
จะเพิ่ม Debian Universe ใน etc / apt / sources.list ได้อย่างไร?
ใน /etc/apt/sources.list ฉันเพิ่มuniverseไป deb http://http.debian.net/debian wheezy main contrib non-free universe เมื่อฉันได้aptitude updateบันทึกบ่นเกี่ยวกับ: W: Failed to fetch http://http.debian.net/debian/dists/wheezy/Release: Unable to find expected entry 'universe/binary-i386/Packages' in Release file (Wrong sources.list entry or malformed file) ฉันควรใส่ใจกับข้อผิดพลาดหรือไม่? ฉันได้เพิ่ม Debian Universe อย่างถูกต้องหรือไม่?
12 debian  apt 

3
ตำแหน่งของ dhclient.conf
ฉันต้องการตรวจสอบการตั้งค่า DHCP ของไคลเอ็นต์ซึ่งฉันคาดว่าจะอยู่ในไฟล์ /etc/dhcp/dhclient.confแต่ไม่มีไฟล์ดังกล่าว ไฟล์นี้อยู่ในตำแหน่งใดของ RHEL 6 บน 64 บิต?
12 rhel  dhcp 

5
ใช้ $ หรือเปล่า ในคำสั่ง if
function foo { (cd $FOOBAR; <some command> if [$? -ne 0] then echo "Nope!" else echo "OK!" fi ) } ฉันพยายามเขียนฟังก์ชั่นแบบเดียวกับข้างบนและวางไว้ในไฟล์. bashrc ของฉัน หลังจากที่ฉันส่งไฟล์และเรียกใช้ฉันจะได้รับ: เวลาทั้งหมด: 51 วินาที -bash: [1: ไม่พบคำสั่ง ตกลง! มีใครช่วยฉันเข้าใจสิ่งที่ฉันทำผิดหรือเปล่า?
12 bash  scripting 


3
ส่งคำสั่งหลายคำเพื่อรวม
flock -x -w 5 ~/counter.txt 'COUNTER=$(cat ~/counter.txt); echo $((COUNTER + 1)) > ~/counter.txt' ฉันจะส่งคำสั่งหลายคำสั่งให้flockเหมือนในตัวอย่างด้านบนได้อย่างไร เท่าที่ฉันเข้าใจflockใช้แฟล็กที่แตกต่างกัน (-x สำหรับเอกสิทธิ์, -w สำหรับการหมดเวลา) จากนั้นไฟล์ที่จะล็อกและจากนั้นคำสั่งให้เรียกใช้ ฉันไม่แน่ใจว่าฉันจะส่งคำสั่งสองคำไปยังฟังก์ชันนี้ได้อย่างไร (ตั้งค่าตัวแปรด้วยเนื้อหาของไฟล์ที่ล็อคแล้วเพิ่มไฟล์นี้) เป้าหมายของฉันที่นี่คือการสร้างส่วนเพิ่มขึ้นเล็กน้อยสำหรับไฟล์โดยการล็อคทุกครั้งที่สคริปต์พยายามเข้าถึงcounter.txtไฟล์

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