Unix & Linux

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

3
วิธี distro / shell-agnostic ที่ดีที่สุดในการตั้งค่าตัวแปรสภาพแวดล้อมคืออะไร
คำถามบอกว่ามันทั้งหมด ปัจจุบันฉันใช้ Arch Linux และ zsh แต่ฉันต้องการวิธีแก้ปัญหาที่ (อย่างน้อยที่สุด) ใช้งานได้ทั้งบน VT และใน xterms และ (หวังว่าควรเป็นอย่างยิ่ง) จะยังคงทำงานต่อไปถ้าฉันเปลี่ยน distros หรือ shell ฉันได้ยินว่าคำตอบของคำถามนี้แตกต่างกันอย่างมากในเอกสารของ distros ที่แตกต่างกัน Ubuntu บอกว่า "ใช้. pam_environment" ฉันคิดว่าใน Arch สิ่งที่พวกเขาแนะนำขึ้นอยู่กับเปลือกของคุณ ขณะนี้ฉันใส่ทุกอย่างใน. profileและถ้าเชลล์ไม่ได้แหล่งที่มาด้วยเหตุผลบางอย่าง (เช่นทุบตีถ้า. bash_profile มีอยู่) ฉันจะแทนที่ด้วยการจัดหามันด้วยตนเอง แต่ดูเหมือนว่าจะต้องมีวิธีที่ดีกว่า

5
ทำไม cp --reflink = auto ไม่ใช่พฤติกรรมเริ่มต้น
เหตุใดจึงcp --reflink=autoไม่ใช่พฤติกรรมเริ่มต้น มันอาจก่อให้เกิดอันตรายใด ๆ ที่จะเปิดใช้งานหรือไม่ เป็นไปได้หรือไม่ที่จะเปิดใช้งานในเวลาคอมไพล์ดังนั้นจึงถูกใช้ทั่วทั้งระบบไม่ใช่เฉพาะในเชลล์แบบโต้ตอบ?
31 btrfs  coreutils 

4
จะเกิดอะไรขึ้นถ้าคุณแก้ไขสคริปต์ระหว่างการดำเนินการ
ฉันมีคำถามทั่วไปซึ่งอาจเป็นผลมาจากความเข้าใจผิดว่ากระบวนการจัดการใน Linux อย่างไร สำหรับวัตถุประสงค์ของฉันฉันจะกำหนด 'สคริปต์' เป็นตัวอย่างของรหัสทุบตีบันทึกไว้ในไฟล์ข้อความที่มีสิทธิ์ดำเนินการเปิดใช้งานสำหรับผู้ใช้ปัจจุบัน ฉันมีชุดของสคริปต์ที่โทรหากันตามกัน ฉันจะเรียกพวกเขาว่าสคริปต์ A, B และ C. Script A ดำเนินการชุดคำสั่งแล้วหยุดชั่วคราวจากนั้นจะเรียกใช้สคริปต์ B จากนั้นหยุดสคริปต์แล้วเรียกใช้สคริปต์ C ในคำอื่น ๆ ซีรีส์ ขั้นตอนเป็นดังนี้: เรียกใช้สคริปต์ A: ชุดคำสั่ง หยุด เรียกใช้สคริปต์ B หยุด เรียกใช้สคริปต์ C ฉันรู้จากประสบการณ์ว่าถ้าฉันเรียกใช้สคริปต์ A จนกระทั่งหยุดการทำงานชั่วคราวจากนั้นทำการแก้ไขในสคริปต์ B การแก้ไขเหล่านั้นจะสะท้อนให้เห็นในการทำงานของรหัสเมื่อฉันอนุญาตให้ทำงานต่อ ในทำนองเดียวกันถ้าฉันทำการแก้ไขสคริปต์ C ในขณะที่สคริปต์ A ยังคงหยุดชั่วคราวแล้วอนุญาตให้ดำเนินการต่อหลังจากบันทึกการเปลี่ยนแปลงการเปลี่ยนแปลงเหล่านั้นจะสะท้อนให้เห็นในการเรียกใช้โค้ด ต่อไปนี้เป็นคำถามจริงมีวิธีแก้ไขสคริปต์ A ในขณะที่ยังทำงานอยู่หรือไม่ หรือการแก้ไขเป็นไปไม่ได้เมื่อเริ่มดำเนินการ?

7
ทำไมการกระจายส่วนใหญ่ถึงเชน UEFI และด้วง
การกระจายส่วนใหญ่จะติดตั้งบูทโหลดเดอร์เพิ่มเติมบนระบบ UEFI UEFI นั้นเป็นบูตโหลดเดอร์มันมีเมนูให้เลือกระบบปฏิบัติการที่แตกต่างกันหรือแต่ละเมล็ด นอกจากนี้การตั้งค่า UEFI สามารถจะเปลี่ยนแปลงได้ด้วยเครื่องมือ userspace efibootmgrเช่น เคอร์เนลตั้งแต่ 3.3 รองรับ EFI_STUB ซึ่งหมายความว่าเคอร์เนลสามารถโหลดได้โดยตรงจาก UEFI เหตุผลการกระจายการตัดสินใจที่จะใช้บูตโหลดเดอร์เพิ่มเติมคืออะไร? บทเรียนส่วนใหญ่บน Linux / UEFI มุ่งเน้นไปที่วิธีการตั้งค่าบูตโหลดเดอร์เพิ่มเติมเป็นหลัก (rEFInd, grub2, ELILO และอื่น ๆ ) แทนการบูท Linux ด้วย EFI_STUB สิ่งเดียวที่ขาดหายไปในการกระจายคือการสนับสนุน เนื่องจากดิสทริบิวชันส่วนใหญ่เชื่อมโยงบูตโหลดเดอร์ตัวที่สองเคอร์เนลจะไม่ถูกเพิ่มลงในเมนูการบู๊ต UEFI และจะไม่คัดลอกไปยังพาร์ติชันระบบ EFI มีสคริปต์สามบทที่เพียงพอที่จะใช้เวทมนตร์ทั้งหมด หนึ่งซึ่งคัดลอก initramfs ไปยัง ESP อันที่สองคัดลอกเคอร์เนลไปที่ ESP และสร้างรายการใหม่ในเมนูการบู๊ต UEFI สคริปต์ที่สามลบเคอร์เนลเก่าและ initramfs ออกจาก ESP และลบรายการเมนูการบูต …
31 boot  grub2  boot-loader  uefi 

13
ฉันจะได้รับการแจ้งเตือนเมื่อแบตเตอรี่ใกล้จะตายใน Linux Mint ได้อย่างไร
สิ่งนี้เกิดขึ้นกับฉันมากกว่าที่ฉันต้องการยอมรับ แต่บางครั้งฉันไม่ได้สังเกตว่ากำลังไฟเหลือน้อยเพราะมันจะปรากฏในแถบสถานะของฉันเท่านั้นจากนั้นคอมพิวเตอร์ก็หยุดทำงาน ฉันต้องการการแจ้งเตือนครั้งใหญ่ที่เตือนฉันก่อนสิ่งนี้จะเกิดขึ้น มีวิธีใดบ้างที่จะเตือนฉัน อูบุนตูมีป๊อปอัพที่ดีที่บอกคุณว่ากำลังเหลือน้อย

4
“ openssl dgst -sha1” สร้างสิ่งที่ไม่เกี่ยวข้อง“ (stdin) =” คำนำหน้าและขึ้นบรรทัดใหม่
หากคุณรันคำสั่งนี้บน Unix ของคุณ echo -n "foo" | openssl dgst -sha1 คุณจะได้รับผลลัพธ์นี้: (stdin)= 0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33 (ตามด้วยการขึ้นบรรทัดใหม่) ฉันจะบังคับให้ openssl ไม่แสดง(stdin)=คำนำหน้าและหลีกเลี่ยงการขึ้นบรรทัดใหม่ได้อย่างไร
31 openssl  stdin 

3
ไม่รวมคำสั่งบางส่วนจากการถูกเก็บไว้ในประวัติทุบตี
มีวิธีที่จะไม่รวมคำสั่งเช่นใด ๆrm -rf, svn revertจากการได้รับการจัดเก็บไว้ในประวัติศาสตร์ทุบตี? ที่จริงแล้วฉันผิดพลาดออกหลายครั้งถึงแม้ว่าฉันจะไม่ได้ตั้งใจก็ตามเพราะฉันทำสิ่งต่าง ๆ ได้อย่างรวดเร็วและเกิดขึ้น ดังนั้นผลลัพธ์ในการสูญเสียงานมากมายที่ฉันได้ทำจนถึง

2
ทำไมเวลาจริงถึงต่ำกว่าเวลาของผู้ใช้
timeฉันมีสคริปต์การแปลงไฟล์วิดีโอและฉันใช้มันที่เซิร์ฟเวอร์จากข้อมูลการทดสอบและการวัดเวลาของตนโดย ในผลที่ฉันเห็น: real 2m48.326s user 6m57.498s sys 0m3.120s เหตุใดเวลาจริงจึงต่ำกว่าเวลาของผู้ใช้มาก สิ่งนี้มีการเชื่อมต่อกับมัลติเธรดหรือไม่? หรืออะไรอีก แก้ไข:และฉันคิดว่าสคริปต์ทำงานประมาณ 2m48s
31 time 

5
วิธีดึงไฟล์จากเซิร์ฟเวอร์โดยใช้ scp?
ฉันอยู่บนเครื่อง A และต้องการดึงไฟล์จากเครื่อง B A$ scp <myuserid>@hostB:<path of file in B> . มันบอกว่า: scp: <path of file in B>: No such file or directory แต่บนเครื่อง B ไฟล์นี้มีอยู่ในเส้นทางนี้ เกิดอะไรขึ้น?
31 scp 

5
ฉันจะวาง (เขียนทับ) ด้วยเสียงเรียกเข้าได้อย่างไร?
ในvimฉันใช้yyและpตลอดเวลาที่จะดึงและวางสาย อย่างไรก็ตามหากฉันต้องการแทนที่หนึ่งบรรทัดหลายแห่งในไฟล์ฉันไม่สามารถใช้ได้yy p dd pเพราะdd ลบบรรทัดไปยังคลิปบอร์ด / ลงทะเบียน ในขณะที่ฉันควรจะรู้วิธีใช้รีจิสเตอร์ดีกว่า แต่ฉันรู้สึกว่าอาจมีวิธีpที่จะแทนที่บรรทัดปัจจุบันได้
31 vim  vi 

4
อ่าน / เขียนไปยังพอร์ตอนุกรมที่ไม่มีรูท?
ฉันกำลังเขียนแอปพลิเคชันเพื่ออ่าน / เขียนไปยัง / จากพอร์ตอนุกรมใน Fedora14 และมันใช้งานได้ดีเมื่อฉันเรียกใช้ในฐานะรูท แต่เมื่อฉันเรียกใช้ในฐานะผู้ใช้ทั่วไปฉันไม่สามารถรับสิทธิ์ที่จำเป็นในการเข้าถึงอุปกรณ์ (/ dev / ttySx) นั่นเป็นเรื่องเส็งเคร็งเพราะตอนนี้ฉันไม่สามารถดีบักสิ่งที่แช่งด้วย Eclipse ได้ ฉันลองใช้ Eclipse ด้วย sudo แต่มันขัดกับพื้นที่ทำงานของฉันและฉันไม่สามารถแม้แต่เปิดโครงการ ดังนั้นฉันต้องการทราบว่าเป็นไปได้หรือไม่ที่จะลดข้อกำหนดการเข้าถึงเพื่อเขียนลงใน / dev / ttySx เพื่อให้ผู้ใช้ทั่วไปสามารถเข้าถึงได้ เป็นไปได้ไหม

3
จะ จำกัด ผู้ใช้ SSH ให้อนุญาต SSH-tunneling ได้อย่างไร?
ฉันสามารถ จำกัด ผู้ใช้บนเซิร์ฟเวอร์ SSH เพื่อให้พวกเขาเพียงสิทธิพิเศษสำหรับSSH อุโมงค์ ? ie ดังนั้นพวกเขาไม่สามารถเรียกใช้คำสั่งแม้ว่าพวกเขาจะเข้าสู่ระบบผ่านทาง SSH เซิร์ฟเวอร์ Linux ของฉันคือ Ubuntu 11.04 และ OpenWrt

4
ค้นหากระบวนการที่กำลังเขียนลงฮาร์ดไดรฟ์
สำหรับ Lenovo T400 และ Ubuntu ไฟสำหรับเขียนฮาร์ดไดรฟ์ยังคงกะพริบอยู่ ฉันสงสัยว่าใน Linux เป็นไปได้หรือไม่ที่กระบวนการจะทำ I / O กับฮาร์ดไดรฟ์? เช่นเดียวโดยtopคุณสามารถค้นหาสิ่งที่กระบวนการกำลังใช้ซีพียูและหน่วยความจำมากที่สุด
31 linux  process  io 

5
มีวิธีการค้นหากฎ iptables ที่รับผิดชอบในการวางแพ็กเก็ตหรือไม่?
ฉันมีระบบที่มาพร้อมกับไฟร์วอลล์แล้ว ไฟร์วอลล์ประกอบด้วยกฎ iptables มากกว่า 1,000 กฎ หนึ่งในกฎเหล่านี้คือการทิ้งแพ็กเก็ตที่ฉันไม่ต้องการให้ทิ้ง (ฉันรู้สิ่งนี้เพราะฉันiptables-saveตามมาด้วยiptables -Fและแอปพลิเคชันเริ่มทำงาน) มีกฎมากเกินไปในการเรียงลำดับด้วยตนเอง ฉันสามารถทำบางสิ่งบางอย่างเพื่อแสดงให้ฉันเห็นกฎข้อใดที่วางแพ็กเก็ตได้หรือไม่?

5
ฉันจะได้รับ base64 ที่เข้ารหัส shaX บน cli ได้อย่างไร?
sha1sumเอาต์พุตรูปแบบที่เข้ารหัส hex ของ sha จริง ฉันอยากจะเห็นตัวแปรที่เข้ารหัส base64 อาจมีคำสั่งบางอย่างที่ส่งออกเวอร์ชันไบนารีที่ฉันสามารถไพพ์ได้เช่น: echo -n "message" | <some command> | base64หรือถ้ามันส่งออกโดยตรงนั้นก็ใช้ได้เช่นกัน

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