Unix & Linux

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

4
มีวิธีที่เร็วที่สุดในการปิดระบบหรือไม่
หรือshutdown -h nowเร็วที่สุดเท่าที่จะทำได้? ฉันมองหา syscall หรือคล้ายกันที่จะอนุญาตให้ข้ามสิ่งต่าง ๆ มากมายที่ทำไว้ก่อนที่จะปิดเครื่อง ที่ดีที่สุดฉันต้องการแก้ปัญหาที่เกี่ยวข้องกับเคอร์เนลการไม่รู้ในinit-middleware (เช่นsystemdหรือupstart) ความเสี่ยงที่เกี่ยวข้องกับการฆ่าโดยตรงบริการทั้งหมดเช่นถ้วย / apache / pulseaudio ฯลฯ ... ฉันจะไม่สนใจ .... หมายเหตุ: โซลูชันควรเป็นซอฟต์แวร์รอง การกดปุ่มที่อุปกรณ์ไม่ใช่สิ่งที่ฉันค้นหา

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

5
โซลูชัน Linux สำหรับโรงเรียน?
โรงเรียนที่ฉันทำงานอยู่ในฐานะผู้ดูแลระบบขอให้อัปเกรดระบบ ขณะนี้เรากำลังใช้การกระจาย Linux ที่แนะนำโดยรัฐบาลที่เรียกว่า SuliXerver - มันยอดเยี่ยม แต่ฟังก์ชั่นการดูแลระบบส่วนใหญ่ถูกปิดใช้งานและถูกควบคุมโดย บริษัท ที่จัดการ distro เนื่องจากมีปัญหาสำคัญเกี่ยวกับเรื่องนี้ที่ บริษัท นี้เพิกเฉยคณะกรรมการโรงเรียนจึงตัดสินใจเปลี่ยนไปใช้วิธีอื่น เนื่องจากงบประมาณของเรามี จำกัด โซลูชั่น Windows จึงไม่เป็นที่ต้องการ สิ่งนี้ทำให้เรามีซอฟต์แวร์โอเพ่นซอร์สและฟรี ฉันกำลังมองหา distros ที่มุ่งเน้นการศึกษา แต่สิ่งที่เป็นก็คือไม่มีสิ่งใด (ตามที่ฉันเห็น) ระดับความสะดวกสบายสำหรับผู้ใช้ปลายทางอย่างที่ SuliXerver ทำ - ส่วนใหญ่เป็นเว็บอินเตอร์เฟสแบบรวมซึ่งในขณะที่ถูก จำกัด มีคุณสมบัติที่จำเป็นทั้งหมด (การจัดการผู้ใช้การควบคุมการเข้าถึงเครือข่ายผู้ใช้อีเมล ฯลฯ ) ฉันยังไม่แน่ใจเกี่ยวกับตัวเลือกที่ดีที่สุด สิ่งที่ฉันเคยตรวจสอบแล้ว: Debian Edu / Skolelinux - เป็นตัวเลือกที่ดีที่สุดสำหรับเรา รองรับส่วนใหญ่ของสิ่งที่เราต้องการได้รับการสนับสนุน แต่ถูก จำกัด เมื่อมันมาถึงการปรับเปลี่ยนค่าเริ่มต้นที่มีการโหลดไว้ด้วย - แผนการ LDAP, …

2
จะหยุดทุบตีแก้ไขประวัติเมื่อฉันนำมาใช้ใหม่และแก้ไขรายการได้อย่างไร
อินสแตนซ์ของการทุบตีบางอย่างเปลี่ยนประวัติคำสั่งเมื่อคุณใช้ซ้ำและแก้ไขคำสั่งก่อนหน้า ฉันค้นหาและค้นหา แต่ไม่พบสิ่งใดที่บอกว่าจะป้องกันคำสั่งในประวัติจากการแก้ไขเมื่อพวกเขาถูกนำมาใช้ซ้ำและแก้ไขได้ มีคำถามเช่นนี้แต่ดูเหมือนว่าจะพูดถึงวิธีรับมือกับประวัติศาสตร์ที่ถูกแก้ไข ฉันเพิ่งเจออินสแตนซ์ของ bash ที่แก้ไขประวัติเมื่อคุณใช้คำสั่งซ้ำ - bash shell ก่อนหน้านี้ทั้งหมดที่ฉันเคยใช้มี (เท่าที่ฉันสังเกตเห็น) ได้รับการกำหนดค่าไม่ให้เปลี่ยนประวัติเมื่อคุณใช้ซ้ำ และแก้ไขคำสั่ง (บางทีฉันแค่ไม่ได้ให้ความสนใจอย่างถูกต้องกับประวัติเชลล์ของฉันในช่วง 15 ปีที่ผ่านมาหรือมากกว่านั้น ... ) ดังนั้นนั่นอาจเป็นคำถามที่ดีที่สุด: ฉันสามารถบอกทุบตีไม่เคยแก้ไขประวัติ - และถ้าเป็นเช่นนั้นได้อย่างไร

3
เปิดไฟล์ข้อความและปล่อยให้มันอัปเดตตัวเอง
ฉันจะเปิดไฟล์ข้อความและอนุญาตให้อัปเดตตัวเองได้อย่างไร คล้ายกับวิธีการtopทำงาน ฉันต้องการเปิดไฟล์บันทึกและดูมันอัปเดตตัวเองได้ทันที ฉันเพิ่งลอง: $ tail error.log แต่เพิ่งรู้ว่ามันแสดงให้คุณเห็นบรรทัดในล็อกไฟล์ ฉันใช้ RHEL 5.10
20 files  monitoring  tail 

4
ซึ่งใช้กันอย่างแพร่หลาย: chmod 777 หรือ chmod a + rwx [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา จากสองตัวเลือกในการเปลี่ยนการอนุญาต: chmod 777 file.txt chmod a+rwx file.txt ฉันกำลังเขียนเอกสารที่รายละเอียดที่ผู้ใช้จำเป็นต้องเปลี่ยนการอนุญาตไฟล์ของไฟล์บางไฟล์ ฉันต้องการให้รายละเอียดเป็นวิธีที่ใช้กันโดยทั่วไปในการเปลี่ยนการอนุญาตของไฟล์ ปัจจุบันมีการพูดว่า: - Set permissions on file.txt as per the example below: - chmod 777 /tmp/file.txt นี่เป็นเพียงตัวอย่างและจะไม่เปลี่ยนไฟล์ให้มีสิทธิ์อย่างเต็มที่สำหรับทุกคน

2
(/ etc / sysconfig / iptables)“ ไม่แนะนำให้ปรับแต่งไฟล์นี้ด้วยตนเอง” เพราะเหตุใด
การแก้ไขไฟล์นี้โดยตรง /etc/sysconfig/iptables สามารถช่วยฉันปวดหัวมากเวลามากและ ... และยังอยู่ด้านบนสุดของไฟล์มันบอกว่า .. Manual customization of this file is not recommended. นี่คือ '/ etc / sysconfig / iptables' ที่เพิ่งมาพร้อมกับคลาวด์เซิร์ฟเวอร์ centos ใหม่ 6.4 # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] …

3
ตำแหน่ง Java จาก / usr / bin / java
ฉันพยายามค้นหาตำแหน่ง java ของฉันภายในระบบ Linux และได้รับสิ่งนี้ [980@b449 ~]$ which java /usr/bin/java [980@b449 ~]$ readlink -f $(which java) /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java ความแตกต่างระหว่าง 2 คำสั่งคืออะไร?
20 symlink  java 

2
“ การทดสอบเวทมนต์” หมายถึงอะไรสำหรับคำสั่งไฟล์?
ฉันกำลังอ่านเกี่ยวกับfileคำสั่งและฉันเจอสิ่งที่ฉันไม่ค่อยเข้าใจ: ไฟล์ถูกออกแบบมาเพื่อกำหนดประเภทของไฟล์ที่ถูกสอบถาม .... ไฟล์ทำสิ่งนี้ได้สำเร็จโดยทำการทดสอบสามชุดกับไฟล์ดังกล่าว: การทดสอบระบบไฟล์ การทดสอบเวทมนตร์ การทดสอบภาษา อะไรคือความมหัศจรรย์ทดสอบ?

5
ไม่สามารถดึงข้อมูลเมตาของที่เก็บ EPEL
การติดตั้ง Nginx บน Scientific Linux ตามเอกสารนี้ล้มเหลว: [vagrant@localhost ~]$ sudo su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epe l/6/x86_64/epel-release-6-8.noarch.rpm' Retrieving http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch .rpm warning: /var/tmp/rpm-tmp.gdSOR9: Header V3 RSA/SHA256 Signature, key ID 0608b89 5: NOKEY Preparing... ########################################### [100%] 1:epel-release ########################################### [100%] [vagrant@localhost ~]$ sudo yum install nginx Loaded plugins: security Error: Cannot retrieve repository metadata (repomd.xml) …

3
Awk พิมพ์ความกว้างและปัดเศษขึ้น
ฉันจำเป็นต้องprintfออกจำนวน แต่มีความกว้างที่กำหนดและโค้งมน (กับ awk!) %10s ฉันมีสิ่งนี้และอย่างใดฉันต้องเชื่อมต่อ%dแต่ทุกอย่างที่ฉันทำจบลงด้วย parametres มากเกินไปสำหรับ awk (เพราะฉันมีคอลัมน์เพิ่มเติม)
20 scripting  awk  printf 

4
ความสำคัญของผู้ใช้และเจ้าของกลุ่มในการอนุญาตให้ใช้ไฟล์
ฉันเพิ่งพบสิ่งที่ไม่คาดคิด (สำหรับฉัน) เกี่ยวกับการอนุญาตไฟล์บน Linux (Arch Linux) โดยทั่วไปฉันมี: userX ใน groupX fileX userX:groupX ---rwx---- สิ่งที่ฉันปริศนา: ฉันไม่สามารถดำเนินการใด ๆ ( rwx) fileXบน ถูกต้องหรือไม่ ใครช่วยได้โปรดยืนยันว่านี่เป็นพฤติกรรมที่คาดหวัง การกระทำเดียวที่ฉันสามารถดำเนินการอยู่mvและrmเพราะฉันมีสิทธิ์ในการเขียนในไดเรกทอรีแม่ สิ่งคือฉันคิดเสมอว่าการอนุญาตเหล่านี้ล้มเหลวซึ่งกันและกันโดยเริ่มจากการใช้งานทั่วไปมากที่สุด (อื่น ๆ -> กลุ่ม -> ผู้ใช้) กล่าวอีกนัยหนึ่งว่าo=rwxใครสนใจว่ากลุ่มและผู้ใช้มีความตั้งใจอย่างไร เห็นได้ชัดว่านี่ไม่ใช่กรณี แต่มันก็ไม่สมเหตุสมผลสำหรับฉัน ดูเหมือนว่าใช้ง่าย สิ่งเดียวที่วิธีนี้ดูเหมือนจะมีประโยชน์คือการแยกบุคคล / กลุ่มที่เฉพาะเจาะจงออกไปได้อย่างง่ายดายซึ่งดูเหมือนจะไม่เป็นวิธีที่ชาญฉลาดที่จะใช้มัน นอกจากนี้เจ้าของ (และกลุ่ม?) ควรจะchmodใช่ไหมล่ะ? มีความคิดในเรื่องนี้ไหม?

1
แปลงบรรทัดใหม่เป็นตัวคั่น null เมื่อใช้ tail
ฉันจะเปลี่ยนผลลัพธ์จากtailการใช้บรรทัดที่สิ้นสุดด้วย null แทนการขึ้นบรรทัดใหม่ได้อย่างไร คำถามของฉันคล้ายกับคำถามนี้: จะทำอย่างไร "หัว" และ "หาง" บนอินพุตที่มีการคั่นด้วย null ในทุบตี? แต่สิ่งที่ฉันต้องการทำมีดังนี้: tail -f myFile.txt | xargs -i0 myCmd {} "arg1" "arg2" ฉันไม่ได้ใช้findและใช้ไม่ได้-print0 ทั้งหมดนี้เพื่อหลีกเลี่ยงข้อผิดพลาดที่เกิดขึ้นใน xargs: xargs: unmatched double quote; by default quotes are special to xargs unless you use the -0 option

11
Error Vim E138: ไม่สามารถเขียนไฟล์ viminfo $ HOME / .viminfo!
ฉันเกรงว่าฉันจะเจอสิ่งที่ค่อนข้างแปลก เมื่อฉันเปิดไฟล์ตามปกติvim README.txtทุกอย่างเรียบร้อยดี แต่เมื่อsudo vim README.txtไฟล์แสดงผลว่างเปล่าและทำให้ฉันมีE138: Can't write viminfo file $HOME/.viminfo!ข้อผิดพลาดเมื่อพยายามที่จะออก ฉันสงสัยว่า.viminfoไฟล์เสียหายดังนั้นฉันจึงลบมัน ปัญหานี้ยังคงอยู่ ใครช่วยได้บ้าง
20 permissions  vim  sudo  root 

1
คอมไพล์ด้วย zsh: ชื่อไฟล์ที่มีช่องว่างไม่ได้รับการหลบหนีอย่างเหมาะสม
เสร็จสิ้น Git: ฉันมีปัญหากับการเติมข้อความอัตโนมัติของชื่อคอมไพล์ในระบบของฉัน ฉันใช้zsh(5.0.5) กับgit(1.9.3) ใน OS X (10.9.3) ทั้งสองzshและgitได้รับการติดตั้งผ่าน homebrew (เอาท์พุทเวอร์ชั่นเต็มอยู่ที่ด้านล่างของโพสต์) gitความสมบูรณ์ของชื่อไฟล์ไม่ได้เป็นการแทรกช่องว่างอย่างที่ฉันคาดไว้ เมื่อฉันพิมพ์ชื่อไฟล์ด้วยช่องว่างในชื่อเชลล์จะแทรกชื่อไฟล์โดยไม่ต้องเว้นช่องว่าง zshความสมบูรณ์ในตัวของมันไม่ได้ทำอย่างนี้ แต่gitทำอย่างนั้น นี่คือตัวอย่างของสิ่งที่ฉันเห็น ฉันมีที่เก็บซึ่งมีไฟล์ไม่กี่ไฟล์และมีช่องว่างในชื่อ % ls -la test test four - latest.txt test three.txt test two เชลล์แบ็กสแลชเชลล์จะหนีชื่อไฟล์ตามที่คาดไว้เมื่อฉันใช้การเติมข้อมูลด้วยแท็บเพื่อใส่ชื่อไฟล์ % echo "testing" >> test<tab> การเติมข้อความอัตโนมัติให้กับสิ่งนี้หลังจากกดปุ่มแท็บสามครั้ง % echo "testing" >> test\ four\ -\ latest.txt ––– file test test\ four\ …
20 zsh  autocomplete  git 

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