Unix & Linux

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

2
จุดประสงค์ของแพตช์ของเคอร์เนล linux คืออะไร?
สำหรับ Linux kernel แต่ละรุ่นจะมีไฟล์แพตช์ให้ดาวน์โหลด ตัวอย่างเช่นlinux-3.12.22มีpatch-3.12.22 ที่สอดคล้องกัน จุดประสงค์ของการแก้ไขคืออะไร? หากต้องการแก้ไขเคอร์เนลที่สอดคล้องกันเสมอก่อนที่จะรวบรวมหรือนำเวอร์ชันเคอร์เนลรุ่นเก่ามาอัพเดทกับเคอร์เนลที่แพทช์ตรงกัน (3.12.22 ในกรณีนี้)

2
Cron job ลบไฟล์ที่เก่ากว่า 3 วัน
ฉันต้องลบไฟล์ที่เก่ากว่า 3 วันด้วยงาน cron ใน 3 ไดเรกทอรีที่แตกต่างกัน (ทั้ง 3 ไดเรกทอรีนี้เป็นรายการย่อยของไดเรกทอรีหลัก/a/b/c/1& /a/b/c/2& /a/b/c/3) สามารถทำได้ด้วยหนึ่งบรรทัดใน crontab หรือไม่

3
ดำเนินการบรรทัดคำสั่งด้วยหนึ่ง sudo
ตัวอย่างเช่นถ้าฉันต้องการสร้างไฟล์และป้อนข้อความในหนึ่งบรรทัดฉันสามารถเปลี่ยนเส้นทางผลลัพธ์ไปยังไฟล์ด้วยการใช้>โอเปอเรเตอร์: echo "something" > /path/foobar แต่ถ้าฉันไม่มีสิทธิ์เข้าถึงโฟลเดอร์/path/และต้องการสิทธิ์ sudo ฉันจะทำคำสั่งนี้ให้เหมือนกับผู้ใช้ปกติที่มีสิทธิ์ sudo ได้อย่างไร ฉันเหนื่อย sudo echo "something" > /path/foobar แต่นั่นไม่ได้ผลเพราะ sudo นับeditแต่เท่านั้น แต่ไม่ใช่สำหรับส่วนที่ถูกต้อง ของ> แน่นอนว่าฉันสามารถรูทก่อนด้วยsudo suหรือใช้teeแทน: echo "something" | sudo tee /path/foobar แต่ฉันต้องการหาวิธีแก้ปัญหาที่ฉันสามารถทำงานกับบรรทัดสุดท้ายแทนผ่าน sudo !! ไม่มีทางที่จะ "รีไซเคิล" บรรทัดสุดท้ายและเพิ่มsudoข้างหน้าใช่ไหม

5
สคริปต์ทุบตี [x $ 1 = x]
ฉันกำลังอ่านสคริปต์ทุบตีฉันไม่เข้าใจว่าเกิดอะไรขึ้น #!/bin/sh [ x$1 = x ] เกิดอะไรขึ้นกับบรรทัดที่สองและ[ x$1 = x ] หมายถึงอะไร
21 bash  shell 

3
เหตุใด fstab จึงใช้ UUID แทนชื่อระบบไฟล์จริง
ตัวอย่างเช่นนี่คือบรรทัดแรกของฉัน/etc/fstab: UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a / ext4 errors=remount-ro 0 1 และนี่คือผลลัพธ์ของdf -hคำสั่ง (การรายงานพื้นที่ว่างในดิสก์): honey@bunny:~$ df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/vda ext4 30832636 4884200 24359188 17% / none tmpfs 4 0 4 0% /sys/fs/cgroup udev devtmpfs 498172 12 498160 1% /dev tmpfs tmpfs 101796 320 101476 1% /run none …

5
ไม่สามารถเปลี่ยนเส้นทางการค้นหา DNS IP และพอร์ตได้
ฉันได้ค้นพบว่า ISP ของฉัน (verizon) กำลังสกัดกั้นการรับส่งข้อมูล DNS ทั้งหมดบนพอร์ต 53 ใช้ iptables ฉันต้องการเปลี่ยนเส้นทางการค้นหา DNS ทั้งหมดไปยัง IP และพอร์ตเฉพาะ (5353) ความพยายามใด ๆ ที่ทำให้คอมพิวเตอร์ของฉันเชื่อมต่อกับคอมพิวเตอร์เครื่องอื่นที่พอร์ต 53 ควรถูกเปลี่ยนเส้นทางไปที่ 23.226.230.72/5353 เพื่อตรวจสอบเซิร์ฟเวอร์ DNS และพอร์ตที่ฉันพยายามจะใช้ฉันได้รันคำสั่งนี้ ~$ dig +short serverfault.com @23.226.230.72 -p5353 198.252.206.16 นี่เป็นกฎ iptables ที่ฉันพยายามใช้ iptables -t nat -A OUTPUT -p udp -m udp --dport 53 -j DNAT --to-destination 23.226.230.72:5353 …
21 iptables  dns 

7
เทอร์มินัล Arch Linux ไม่เริ่มทำงาน
ฉันเพิ่งติดตั้ง Arch Linux ตามวิดีโอสอนจากyoutubeเป็นครั้งแรก อย่างไรก็ตามเมื่อฉันลองใช้เทอร์มินัล GNOME มันจะไม่เริ่มทำงาน มันจะบอกว่า Terminal ที่ด้านบนของหน้าจอของฉันสองสามวินาทีและจะมีสัญลักษณ์โหลด แต่หลังจากสองสามวินาทีพวกเขาทั้งสองหายไปและไม่มีเทอร์มินัลจะปรากฏขึ้น เนื่องจากฉันไม่สามารถโหลดหรือเริ่มต้นเทอร์มินัลฉันไม่สามารถทำอะไรได้เลย (ฉันไม่สามารถตอบคำถามเพื่อลงทะเบียนในฟอรัม Arch Linux) ผมทำอะไรผิดหรือเปล่า?

3
การปิดระบบที่สง่างามใน ArchLinux
ฉันกำลังพยายามที่จะปิด / รีบูตที่สง่างามใน ArchLinux ด้วย GNOME Shell ตอนนี้เมื่อฉันขอปิดมันทันทีปิดโดยไม่ต้องให้เวลาโปรแกรมเปิดเพื่อปิด / บันทึกไฟล์ที่เปิดอย่างสง่างาม เป็นผลให้เมื่อใดก็ตามที่ฉันรีสตาร์ท Chrome (เช่น) มันจะบอกฉันว่าเซสชั่นไม่ได้ปิดอย่างถูกต้อง ฯลฯ โดยการอ่านบนเว็บฉันได้เรียนรู้ว่า systemd ในขณะที่ปิดกระบวนการมันก็ส่งSIGTERMตามด้วยSIGKILLถ้ากระบวนการไม่ปิด ด้วยการหมดเวลาที่กำหนด อย่างไรก็ตามฉันสังเกตเห็นว่าในระบบของฉันSIGKILLจะถูกส่งทันทีหลังจากSIGTERMและฉันเดาว่านี่เป็นสาเหตุของการยกเลิกโปรแกรมที่ไม่สง่างาม ฉันได้พบเอกสารบางอย่างซึ่ง (ถ้าฉันอ่านอย่างถูกต้อง) ระบุว่าการหมดเวลาก่อนที่จะส่งSIGKILLสามารถตั้งค่าได้โดยTimeoutStopSec=ตัวเลือก นอกจากนี้การส่งSIGKILLอาจถูกปิดใช้งานโดยSendSIGKILL=ตัวเลือก แต่ฉันไม่สามารถหาตำแหน่งที่จะกำหนดค่าตัวเลือกเหล่านั้น ... จะมีไฟล์การกำหนดค่าการปิดระบบ / รีบูตที่ฉันสามารถตั้งค่าตัวเลือกเหล่านั้น แก้ไข: ฉันทำการทดสอบและพบสิ่งที่น่าสนใจสองอย่าง: ถ้าฉันปิดโครเมี่ยมด้วยตนเองเช่นนี้killall -SIGTERM chromeมันจะไม่บ่นว่ามันไม่ได้ปิดอย่างถูกต้องในครั้งต่อไปที่ฉันเริ่มมันอีกครั้ง ถ้าฉันปิดมันแบบนี้แทนkillall -SIGKILL chromeมันจะบ่น นี่บอกฉันว่า chrome กำลังจัดการ SIGTERM อย่างถูกต้อง ดูผลลัพธ์ของโพรซีเดอร์การปิดของฉัน systemd พิมพ์Sending SIGTERM...ตามมาทันทีSending SIGKILL... ตามความคิดเห็นด้านล่าง systemd จัดการกระบวนการของมันเท่านั้น …

2
เคอร์เนล BSD เคอร์เนล Linux [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันอยากรู้ในแง่เทคนิค; ความแตกต่างระหว่างBSD KernelและLinux Kernelคืออะไร ใน Linux เราสามารถดาวน์โหลดเคอร์เนลแหล่งที่มาแล้วpatchมันและmakeและmake modulesมัน แม้จะมีเครื่องมือในการแก้ไขเคอร์เนลconfigเช่นmenuconfig, xconfigและ ... แต่ฉันไม่สามารถหาทุ่งกว้างใหญ่ขนาดนั้นบน BSD ได้ ก่อนอื่นฉันสามารถดาวน์โหลดได้BSD kernelหรือไม่ ฉันจะกำหนดค่าได้อย่างไร และ ... ดังนั้นสิ่งที่ฉันขอคือ: (โดยไม่อ้างอิงถึงบรรพบุรุษและนิรุกติศาสตร์) คือKernelในแต่ละกรณี (ใน) ขึ้นอยู่กับการจัดจำหน่ายหรือไม่? วิธีกำหนดค่าแต่ละรายการKernelและเครื่องมือสำหรับงาน แต่ละงานสามารถแก้ไขได้หรือไม่ ความพร้อมใช้งานของkernelขอบเขตการกระจายภายนอก ( Kernel Sources) รสชาติที่Kernelsมีในแต่ละกรณี ( X??BSD/ Linux) ถูกใจXEN/Vmware/GEN?

3
จะแตกไฟล์จาก uImage ได้อย่างไร?
Buildroot กำลังสร้างภาพสำหรับอุปกรณ์ฝังตัวที่ควรจะทำงาน มันใช้งานได้ดีมาก ในภาพเหล่านั้นรูทส์รวมอยู่ด้วย เนื่องจากการวิจัยบางอย่างฉันต้องการตรวจสอบไฟล์ที่สร้างขึ้น (เช่นโหมดการบีบอัดที่กำหนดโดย Buildroot ถูกนำไปใช้และตอนนี้จะถูกตรวจสอบหากพวกเขาทำอย่างถูกต้อง) แต่ฉันไม่พบสิ่งที่มีประโยชน์ในเน็ต เท่าที่ฉันทราบความแตกต่างระหว่าง uImage และ zImage เป็นเพียงส่วนหัวเล็กดังนั้น u-boot จึงสามารถอ่านไฟล์ไบนารีนั้นได้ แต่ฉันไม่สามารถเปิดทั้ง uImage และ zImage ได้ ทุกคนสามารถให้คำแนะนำเกี่ยวกับวิธีการแตกภาพเหล่านั้น (u / z) ภาพบนโฮสต์ได้หรือไม่?

1
มิ้นต์ 16 อบเชยเพิ่มขนาดหน้าต่างให้เต็ม
ฉันใช้ Linux Mint 16 Petra cinnamon ปัญหาที่ฉันมีคือเมื่อฉันลากหน้าต่างไปที่ขอบด้านบนของหน้าจอหน้าต่างจะขยายไปที่ครึ่งบนของหน้าจอแทนที่จะเป็นหน้าจอทั้งหมดเหมือนกับเมื่อฉันกดปุ่มขยายใหญ่สุด (ปุ่มบวกที่ด้านบน) ด้านขวาของหน้าจอ) นี่คือสิ่งที่ฉันได้รับ นี่คือสิ่งที่ฉันต้องการจะเกิดขึ้น

3
มีไฟล์สำหรับแต่ละซ็อกเก็ตหรือไม่?
"ทุกอย่างเป็นไฟล์" ใน UNIX World ประโยคข้างต้นมีชื่อเสียง เมื่อฉันวิ่งecho "hello programmer" >> /dev/tty1ฉันสามารถดูสตริงที่กำหนดบนTeleType 1 , .... ไฟล์แต่ละไฟล์คืออะไรและที่ไหนsocket? สมมติว่าเพื่อนของฉันเชื่อมต่อกับพีซีของฉันและ IP คือh.h.h.hฉันจะเข้าถึงไฟล์ที่เกี่ยวข้องได้อย่างไร มันเป็นไปได้?
21 files  kernel  socket 

4
ตรวจจับโดยอัตโนมัติเมื่อฉันพิมพ์“ vi” แต่หมายถึง“ cd”?
ประมาณ 5 ครั้งต่อวันฉันพิมพ์ "vi" เมื่อฉันหมายถึง "cd" และท้ายที่สุดเปิดไดเรกทอรีใน vi มันทำให้ฉันถั่ว ดูเหมือนว่าควรมีวิธีการตรวจสอบเมื่อฉันพิมพ์ใน "vi + directory" และเปลี่ยนเป็น "cd + directory" โดยอัตโนมัติ คิด?
21 bash  shell  alias  cd-command 

3
ค้นหาไดเรกทอรี 50 อันดับแรกที่มีไฟล์ / ไดเรกทอรีมากที่สุดในระดับแรกหรือไม่
ฉันfindจะใช้เพื่อสร้างรายการไดเรกทอรีที่มีจำนวนไฟล์มากที่สุดได้อย่างไร ฉันต้องการรายชื่อจากจากมากไปน้อย ฉันเพียงต้องการเช่นรายการที่จะไป 1 /ระดับลึกและฉันมักจะใช้คำสั่งนี้จากด้านบนของระบบแฟ้มของฉันคือ
21 files  find 

4
วิธีการเปลี่ยนการเข้ารหัสจากข้อความที่ไม่ใช่ ASCII-Extended Extended ASCII, ด้วยตัวต่อบรรทัด CRLF เป็น UTF-8
ฉันมีไฟล์ txt: $ file -i x.txt x.txt: text/plain; charset=unknown-8bit $ file x.txt x.txt: Non-ISO extended-ASCII text, with CRLF line terminators และมีอักขระบางตัวที่เข้ารหัสไม่ถูกต้อง: trwa³y, sta³y, usuwaæ ฉันจะเปลี่ยนการเข้ารหัสของไฟล์นี้เป็น UTF-8 ได้อย่างไร ฉันได้ลองวิธีต่อไปนี้แล้ว: $ iconv -f ASCII -t UTF-8 x.txt puiconv: illegal input sequence at position 4 บางทีฉันควรใช้extended ASCII( high ASCII) แต่หาไม่พบในiconvรายการเข้ารหัสของ

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