Unix & Linux

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

2
การใช้ grep กับแฟล็ก --exclude-dir เพื่อแยกหลายไดเร็กทอรี
ฉันกำลังค้นหาแอปพลิเคชัน Ruby on Rails สำหรับคำที่ใช้grepบน OSX และฉันต้องการแยกไดเรกทอรีที่ตรงกับรูปแบบบางอย่าง ฉันใช้คำสั่งต่อไปนี้: grep -inRw -E 'direct' . --exclude-dir -E 'git|log|asset' คำสั่งนี้ไม่ได้ทำในสิ่งที่ฉันคิดว่ามันจะทำ นี่คือวิธีที่ฉันคิดว่ามันจะทำงาน: การค้นหาแบบคำนึงถึงขนาดตัวพิมพ์ n - พิมพ์หมายเลขบรรทัดที่พบรูปแบบ R - ค้นหาซ้ำ w - ฉันต้องการทั้งคำเท่านั้น - เช่นจับคู่ "โดยตรง" แต่ไม่ใช่ "ไดเรกทอรี" -E - ใช้นิพจน์ทั่วไปที่ขยายเพิ่ม 'direct' - นิพจน์ทั่วไปที่ฉันต้องการจับคู่ . - ค้นหาในไดเรกทอรีปัจจุบัน --exclude-dir -E 'git | log | asset' - …

2
บันทึกของระบบเต็มไปด้วยเซสชั่นและข้อความชิ้น
ฉันมีการติดตั้ง CentOS 7 ใหม่และสังเกตว่าไฟล์ / var / log / messages ของฉันเต็มไปด้วยข้อความเช่นนี้ Mar 6 08:40:01 myhostname systemd: Started Session 2043 of user root. Mar 6 08:40:01 myhostname systemd: Starting Session 2043 of user root. Mar 6 08:40:01 myhostname systemd: Created slice user-1001.slice. Mar 6 08:40:01 myhostname systemd: Starting user-1001.slice. Mar 6 …
16 syslog 

4
วิธีการทำมิเรอร์พูล zfs ทั้งหมดไปยังพูล zfs อื่น
ฉันมีหนึ่ง zfs pool ที่มี zvols และชุดข้อมูลหลายตัวซึ่งบางตัวยังซ้อนอยู่ ชุดข้อมูลและ zvols ทั้งหมดถูกรวบรวมเป็นระยะโดย zfs-auto-snapshot ชุดข้อมูลและ zvols ทั้งหมดมีสแน็ปช็อตที่สร้างขึ้นด้วยตนเองบางส่วน ฉันได้ติดตั้งรีโมตพูลเนื่องจากไม่มีเวลาคัดลอกเริ่มต้นบนเครือข่ายความเร็วสูงผ่าน zfs send -R ไม่สมบูรณ์ (ชุดข้อมูลบางชุดหายไปบางชุดข้อมูลมีสแนปชอตที่ล้าสมัยหรือขาดหายไป) ตอนนี้สระว่ายน้ำทางกายภาพระยะไกลผ่านการเชื่อมต่อความเร็วต่ำและฉันจำเป็นต้องซิงค์สระว่ายน้ำระยะไกลเป็นระยะกับสระว่ายน้ำในท้องถิ่นหมายถึงข้อมูลที่มีอยู่ในสระว่ายน้ำในท้องถิ่นจะต้องคัดลอกไปยังสระว่ายน้ำระยะไกล ข้อมูลที่แสดงอยู่ในรีโมตพูล ​​แต่ไม่ได้อยู่ในพูลโลคัลต้องถูกลบออกจากพูลแบบรีโมตโดยความหมายของข้อมูล 'zvols', 'datasets' หรือ 'snapshots' ถ้าฉันทำสิ่งนี้ระหว่างสองระบบไฟล์ปกติโดยใช้ rsync มันจะเป็น "-axPHAX --delete" (นั่นคือสิ่งที่ฉันทำเพื่อสำรองข้อมูลบางระบบ) ฉันจะตั้งค่างานการซิงโครไนซ์เพื่อให้พูล zvols & ชุดข้อมูลระยะไกล (รวมถึงสแน็ปช็อต) สามารถซิงค์กับ zvols ชุดข้อมูลและสแน็ปช็อตในท้องถิ่นได้อย่างไร ฉันต้องการหลีกเลี่ยงการถ่ายโอนผ่าน ssh เนื่องจากประสิทธิภาพการทำงานที่ต่ำของ ssh; ฉันต้องการ mbuffer หรือ iscsi แทน
16 zfs  replication 

3
arch linux- ข้อผิดพลาด: ไม่สามารถรับเส้นทางที่ยอมรับได้ของ 'airootfs' (การติดตั้งด้วงไปยัง USB)
ฉันพยายามติดตั้ง arch-linux เป็นครั้งแรก ทุกอย่างก็โอเคจนกระทั่งฉันพยายามติดตั้ง "grub" บูตโหลดเดอร์ไปยังไดรฟ์ USB ฉันทำงานโดยคำแนะนำของ WIKI ARCH LINUX คำสั่งทั้งสองนี้ทำงานโดยไม่มีข้อผิดพลาด: # mkdir -p /mnt/usb ; mount /dev/sdc1 /mnt/usb # grub-install --target=i386-pc --recheck --debug --boot-directory=/mnt/usb/boot /dev/sdc แต่คำสั่งถัดไปส่งคืนข้อผิดพลาด: ไม่สามารถรับเส้นทางที่ยอมรับได้ของ 'airootfs': # grub-mkconfig -o /mnt/usb/boot/grub/grub.cfg มีใครช่วยได้บ้าง (พยายามทำarch-chroot /mnt /bin/bash สิ่งนี้ไม่พบคำสั่ง)

2
ฟองน้ำจาก moreutils - ความแตกต่างในการเปลี่ยนเส้นทางของเชลล์คืออะไร ตัวอย่างที่มีประโยชน์
> brew install moreutils ==> Downloading https://homebrew.bintray.com/bottles/moreutils-0.55.yosemite.bottle.tar.gz ######################################################################## 100.0% ==> Pouring moreutils0.55.yosemite.bottle.tar.gz 🍺 /usr/local/Cellar/moreutils/0.55: 67 files, 740K ฟองน้ำอ่านอินพุตมาตรฐานและเขียนมันออกไปยังไฟล์ที่ระบุ แตกต่างจากการเปลี่ยนเส้นทางของเชลล์ฟองน้ำดูดซับอินพุตทั้งหมดก่อนที่จะเขียนไฟล์เอาต์พุต สิ่งนี้อนุญาตให้สร้างท่อที่อ่านและเขียนไปยังไฟล์เดียวกัน ฉันไม่เข้าใจ โปรดยกตัวอย่างที่มีประโยชน์ให้ฉัน การดูดซับหมายถึงอะไร

6
ติดตั้ง VM จากบรรทัดคำสั่งด้วย virt-install
ข้อจำกัดความรับผิดชอบ: ตอนนี้ฉันใช้virt-managerเพื่อสร้างและจัดการ VM ของฉันและมันช่วยชีวิตจริงๆ สามารถใช้จากระยะไกล (จากเครื่องที่สามซึ่งโดยทั่วไปคือเวิร์กสเตชันของคุณ) หากโฮสต์ไม่มีจอแสดงผลแบบกราฟิก การเกิดขึ้นของvncบทเรียนการติดตั้งที่ฉันพบทำให้ฉันคิดว่าขั้นตอน "แนะนำ" จำเป็นต้องใช้สิ่ง X ในโฮสต์แขกหรือทั้งสองอย่าง ไม่ได้อย่างแน่นอน. ความผิดพลาดของฉัน. หากคุณอยู่ในสถานการณ์เดียวกันให้คิดสองครั้งก่อนลองติดตั้ง VM จากบรรทัดคำสั่ง ฉันกำลังพยายามติดตั้ง Debian VM ในโฮสต์ Debian โดยใช้virt-installและฉันไม่รู้วิธีส่งภาพ. isiso virt-install --connect qemu:///system --virt-type kvm --name prod --ram 6144 --disk /srv/vm/prod.qcow,format=qcow2,size=10 --location=/home/jerome/debian-8.0.0-amd64-netinst.iso --network bridge=br0 --os-type linux --os-variant debianwheezy --extra-args='console=tty0 console=ttyS0,115200n8 serial' Starting install... Retrieving file info... …
16 kvm 

1
ฉันจะรันแอปพลิเคชัน GUI เป็นรูทโดยใช้ pkexec ได้อย่างไร
ฉันใช้Trisquel GNU / Linux-Libre ซึ่งมาพร้อมกับGnome3 Flashback Desktop Environment ฉันรู้ว่าฉันสามารถเรียกใช้แอปพลิเคชัน GUI เป็นรูทได้โดยsudo& gksudoแต่ฉันต้องการรู้ว่าฉันจะรันแอปพลิเคชัน GUI เป็นรูทด้วยความช่วยเหลือได้pkexecอย่างไร เมื่อฉันพยายามเรียกใช้gedit(หรือแอปพลิเคชันอื่นเช่น:) nautilusจากpkexec geditนั้นจะพร้อมท์ให้ใส่รหัสผ่านสำหรับการตรวจสอบสิทธิ์: - หลังจากป้อนรหัสผ่านแล้วจะออกโดยมีข้อผิดพลาด: - $ pkexec gedit error: XDG_RUNTIME_DIR not set in the environment. (gedit:6135): Gtk-WARNING **: cannot open display: ดังนั้นดูเหมือนว่ามีบางอย่างผิดปกติกับสภาพแวดล้อมการแสดงผล ฉันเคยลองด้วยDISPLAY=:0 pkexec geditแต่ไม่ได้ผล ข้อมูลต่อไปนี้ได้จากman pkexec: - สภาพแวดล้อมที่โปรแกรมจะเรียกใช้จะถูกตั้งค่าเป็นสภาพแวดล้อมที่ปลอดภัยและรู้จักน้อยที่สุดเพื่อหลีกเลี่ยงการฉีดรหัสผ่าน LD_LIBRARY_PATH หรือกลไกที่คล้ายกัน นอกจากนี้ตัวแปรสภาพแวดล้อม PKEXEC_UID ถูกตั้งค่าเป็น id …

5
ฉันจะทำให้ข้อความเป็นแบบอ่านรวมได้ได้อย่างไร
ไม่กี่เดือนที่ผ่านมาmeldเริ่มมีพฤติกรรมแปลก ๆ บรรทัดทั่วไปเกือบจะอ่านไม่ได้และแสดงเป็นข้อความสีเทาเข้มบนพื้นหลังสีดำ ผิดปกติพอที่จะรันมันในขณะที่รูทนั้นใช้ได้ (ด้วยkdesudo meld) แม้ว่าชุดรูปแบบจะสวยน้อยกว่า ฉันจะระบุตัวเลือกสีของข้อความสำหรับ meld ได้อย่างไร ฉันกำลังใช้: Arch Linux KDE 4.14.3 (เห็นใน 4.14.2 ด้วย) หลอมรวม 3.12.2 (เห็นใน 3.12.1) gtk3 3.14.6 (เห็นใน 3.14.5) การแก้ไขปัญหา การตั้งค่าระบบ KDE meldใช้ GTK3 ดังนั้นฉันเล่นซอกับการตั้งค่าระบบ> ลักษณะทั่วไปและพฤติกรรม> ลักษณะแอปพลิเคชัน> GTK> เลือกธีม GTK3 การเปลี่ยนแปลงนี้มีผลในรูปแบบผสม แต่ไม่มีสามตัวเลือกที่ฉันเลือกเปลี่ยนข้อความ (ตัวเลือกที่ใช้ได้คือ Default, Emacs และ oxygen-gtk; ตัวหลังถูกใช้ในภาพหน้าจอด้านบน) แก้ไขไฟล์ปรับแต่งด้วยตนเอง ฉันค้นหา~ไฟล์ด้วยgtkชื่อของพวกเขา ~/.gtkrc-2.0 ~/.gtkrc-2.0-kde4 ~/.config/gtk-2.0 …
16 configuration  kde  gtk  gtk3 

2
คำสั่ง sftp เพื่อรับ / ดาวน์โหลดไฟล์. tar.gz
ฉันคิดว่าฉันคุ้นเคยกับsftpคำสั่งในระบบปฏิบัติการยูนิกซ์และมากถึงความรู้ของฉันคำสั่งที่ใช้ในการดาวน์โหลดcompressedไฟล์จากเซิร์ฟเวอร์คือ sftp รับ filename.tar.gz แต่เมื่อฉันลองคำสั่งนี้ไฟล์จะว่างเปล่าฉันหมายความว่าขนาดไฟล์จะเป็น 0 และฉันไม่รู้ว่าทำไมมันถึงเกิดขึ้น มีคำสั่งอื่นสำหรับ.tar.gzชนิดของไฟล์โดยเฉพาะหรือไม่ ขั้นตอนในการรับไฟล์บีบอัดนี้คืออะไร ฉันใช้ขั้ว mac
16 terminal  osx  scp  sftp 

3
ฉันจะค้นหาขนาดหน่วยความจำภายในของกระบวนการใน busybox ได้อย่างไร
ฉันทำงานtopบน busybox และมันแสดงกระบวนการทั้งหมดและขนาดหน่วยความจำเสมือนของพวกเขา ฉันจะทราบได้อย่างไรว่าแต่ละกระบวนการใช้ RAM เท่าใด

1
คุณลักษณะทุบตีอยู่ที่ไหนเพื่อเปิดคำสั่งในเอกสาร $ EDITOR
ฉันได้ค้นพบเมื่อเร็ว ๆ นี้ว่าถ้าเรากดCtrl+ X Ctrl+ E, bash จะเปิดคำสั่งปัจจุบันในตัวแก้ไข (ตั้งค่า$VISUALหรือ$EDITOR) และดำเนินการเมื่อตัวแก้ไขถูกปิด แต่ดูเหมือนว่าจะไม่มีการบันทึกไว้ในmanหน้าเว็บ
16 bash  line-editor 


3
อะไรคือความแตกต่างที่แน่นอนระหว่าง“ subshell” และ“ กระบวนการลูก”
ตามนี้และนี้เป็น subshell (…)จะเริ่มต้นโดยใช้วงเล็บ ( echo "Hello" ) ตามนี้ , นี้และนี้เป็นกระบวนการที่คดเคี้ยวเมื่อคำสั่งจะถูกเริ่มต้นด้วย& echo "Hello" & ข้อกำหนด Posix ใช้คำsubshellในหน้านี้แต่ไม่ได้กำหนดและยังอยู่ในหน้าเดียวกันที่ไม่ได้กำหนด "กระบวนการเด็ก" ทั้งสองกำลังใช้fork()ฟังก์ชันเคอร์เนลใช่ไหม อะไรคือความแตกต่างที่แน่นอนในการเรียกส้อม "sub-shell" และส้อมอื่น ๆ เรียกว่า "child process"
16 bash  shell  subshell 

1
GPG ค้างเมื่อเข้าถึงกุญแจส่วนตัว
ฉันชอบที่จะเซ็นสัญญาคอมไพล์ด้วยคีย์ PGP ของฉันดังนั้นฉันค่อนข้างตกใจเมื่อฉันไปที่git commit -Sแต่แทนที่จะแจ้งให้ใช้ข้อความรหัสผ่านคีย์ PGP ของฉัน git เพิ่งเริ่มแขวน ฉันไม่ได้ทำการเปลี่ยนแปลงการตั้งค่า GPG ของฉันในเวลาหลายเดือนและได้ทำข้อตกลงไว้มากมายตั้งแต่นั้นมาโดยไม่มีปัญหา นอกจากนี้เมื่อฉันพยายามดูกุญแจส่วนตัวด้วยgpg -Kgpg จะหยุดทำงาน อย่างไรก็ตามเมื่อฉันเรียกใช้gpg -kเพื่อดูกุญแจสาธารณะของฉันมันจะส่งคืนรายการเหมือนปกติ หวังว่าใครบางคนจะมีความคิดในสิ่งที่ทำให้เกิดปัญหานี้และวิธีการแก้ไข
16 git  gpg  pgp  openpgp 

4
CentOs 7 YUM ไม่ทำงาน
ฉันกำลังพยายามทำ a yum updateและมิเรอร์ทั้งหมดล้มเหลวด้วย 404 ฉันใส่ url ลงในเบราว์เซอร์และข้อผิดพลาดถูกต้อง url ไม่มีอยู่จริง YUM กำลังมองหาแพ็คเกจที่ไม่มีอยู่ในมิเรอร์ ดูข้อความแสดงข้อผิดพลาดด้านล่าง: https://mirrors.lug.mtu.edu/epel/7/x86_64/repodata/13b91b1efe2a1db71aa132d76383fdb5311887958a910548546d58a5856e2c5d-primary.sqlite.xz: [Errno 14] HTTPS Error 404 - Not Found Trying other mirror. http://mirror.oss.ou.edu/epel/7/x86_64/repodata/13b91b1efe2a1db71aa132d76383fdb5311887958a910548546d58a5856e2c5d-primary.sqlite.xz: [Errno 14] HTTP Error 404 - Not Found Trying other mirror. https://mirror.csclub.uwaterloo.ca/fedora/epel/7/x86_64/repodata/13b91b1efe2a1db71aa132d76383fdb5311887958a910548546d58a5856e2c5d-primary.sqlite.xz: [Errno 14] HTTPS Error 404 - Not Found Trying other mirror. http://mirror.sfo12.us.leaseweb.net/epel/7/x86_64/repodata/13b91b1efe2a1db71aa132d76383fdb5311887958a910548546d58a5856e2c5d-primary.sqlite.xz: …
16 centos  yum 

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