Unix & Linux

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

2
ในคำสั่ง `sudo find` ฉันจะแน่ใจได้อย่างไรว่าคำสั่ง` -exec` ถูกรันเหมือนผู้ใช้ปกติ?
ฉันกำลังพยายามทำให้คำสั่งต่อไปนี้ทำงานในลักษณะที่process_pathsสคริปต์ไม่ได้ทำงานภายใต้สิทธิ์ระดับสูง มีวิธีทำเช่นนี้หรือไม่? sudo find /path/ -exec process_paths '{}' \+ ที่นี่/path/มีไฟล์บางไฟล์ที่ไม่มีสิทธิ์อ่านสำหรับผู้ใช้ปกติ สคริปต์process_pathsเพียงต้องการเส้นทาง
10 find  sudo  su 

1
ใน Debian แพคเกจใดรับผิดชอบการสร้าง / etc / default / grub
มีแพ็คเกจมากมายที่มีด้วงในชื่อและเป็นส่วนหนึ่งของด้วง (The Grand Unified Boot Loader) สิ่งที่ติดตั้งบนระบบของฉันคือ - ด้วงทั่วไป ด้วงนกอีมู ด้วงพีซี ด้วง-PC-bin ด้วง-theme-Starfield grub2 grub2 ทั่วไป grub2-splashimages ฉันก่อนดูมันเพื่อดูว่ามันเป็นไฟล์ที่เชื่อมโยงหรือไฟล์ปกติ - [$] ll -h /etc/default/grub -rw-r--r-- 1 root root 1.2K 2017-01-22 14:16 /etc/default/grub ฉันดู แต่ไม่สามารถหาอะไรที่จะบอกฉันว่าไฟล์นี้มาจากไหน? [$] dpkg -S /etc/default/grub dpkg-query: no path found matching pattern /etc/default/grub หรือ [$] dpkg-query -W /etc/default/grub dpkg-query: …

2
การจับคู่อักขระพิเศษด้วยนิพจน์ปกติ
พูดว่าง่ายมากถ้าฉันต้องการค้นหาบางอย่างที่มีตัวอักษรและตัวพิมพ์เล็ก Produc_text | grep -E '[0-9a-z]' วงเล็บมีประโยชน์ในการจับคู่ชุดอักขระ แต่สิ่งที่เกี่ยวกับสิ่งที่ค่อนข้างพิเศษ? ถ้าผมต้องการที่จะใช้วงเล็บตรงกับใด ๆของตัวละครแต่อย่างใดอย่างหนึ่งต่อไปนี้: วงเล็บปิด]เส้นประ (หรือยัติภังค์) "-" ทั้งทับ/และ\, เครื่องหมาย^, :ลำไส้ใหญ่ มันจะเป็นแบบนี้ (ฉันรู้ว่ามันใช้ไม่ได้)? [^] - / \ ^:]

1
ฉันจะเมาท์พาร์ติชัน LVM ได้อย่างไร
ฉันพยายามอัปเดต Java และฉันใช้ดาวเพื่อให้แน่ใจว่าลบออกอย่างสมบูรณ์โดยไม่ทราบว่ามันจะเลอะทุกอย่าง ฉันใช้ apt-get remove java* สิ่งนี้อยู่ใน Ubuntu 16.0 หรือเซิร์ฟเวอร์บางอย่าง ตอนนี้ฉันมี sysrcd หรือ System Rescue CD บนเซิร์ฟเวอร์และฉันพยายามเอาไฟล์เก่าของฉันกลับไปวางไว้บนเซิร์ฟเวอร์ใหม่และโหลดเซิร์ฟเวอร์ sysrcd กลับไปที่ Ubuntu อย่างไรก็ตามฉันไม่สามารถหาวิธีใช้ระบบเมานต์ได้ ฉันพยายามวิ่ง fdisk -l และฉันได้รับ Disk /dev/sda: 223.6 GiB, 240057409536 bytes, 468862128 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 …
10 ubuntu  lvm 

2
การมอบหมายเป็นเหมือนคำสั่งที่มีสถานะการออกยกเว้นเมื่อมีการทดแทนคำสั่ง?
ดูตัวอย่างต่อไปนี้และผลลัพธ์ใน POSIX เชลล์: false;echo $?หรือfalse || echo 1:1 false;foo="bar";echo $?หรือfoo="bar" && echo 0:0 foo=$(false);echo $?หรือfoo=$(false) || echo 1:1 foo=$(true);echo $?หรือfoo=$(true) && echo 0:0 ตามที่ระบุไว้โดยคำตอบที่ได้รับการโหวตสูงสุดที่/programming/6834487/what-is-the-variable-in-shell-scripting : $? ถูกใช้เพื่อค้นหาค่าส่งคืนของคำสั่งที่เรียกใช้งานครั้งสุดท้าย นี่อาจเป็นความเข้าใจผิดเล็กน้อยในกรณีนี้ดังนั้นขอนิยาม POSIX ซึ่งอ้างถึงในโพสต์จากกระทู้นั้น: ? ขยายเป็นสถานะทางออกทศนิยมของไปป์ไลน์ล่าสุด (ดูที่ Pipelines) ดังนั้นดูเหมือนว่าการมอบหมายตัวเองนับเป็นคำสั่ง (หรือมากกว่าส่วนท่อ) ที่มีค่าศูนย์ทางออก แต่จะใช้ก่อนที่ด้านขวาของการมอบหมาย (เช่นการทดแทนคำสั่งเรียกในตัวอย่างของฉันที่นี่) ฉันเห็นว่าพฤติกรรมนี้เหมาะสมจากมุมมองเชิงปฏิบัติ แต่ดูเหมือนว่าฉันค่อนข้างผิดปกติที่งานมอบหมายจะนับตามลำดับนั้น อาจจะชัดเจนมากกว่านี้ทำไมมันแปลกสำหรับฉันลองสมมติว่าการบ้านเป็นหน้าที่: ASSIGNMENT( VARIABLE, VALUE ) แล้วfoo="bar"จะเป็น ASSIGNMENT( "foo", "bar" …

2
สิ่งที่ใกล้เคียงที่สุดกับ Red Hat Enterprise Linux 7?
ขณะนี้ฉันกำลังศึกษาเพื่อRHCSAและต้องการฝึกปฏิบัติในระบบ (vm) ที่ใกล้เคียงที่สุดกับ RHEL 7 ฉันรู้เกี่ยวกับรุ่นพัฒนาฟรีแต่ตามภาคผนวก 1 ( เอกสารแนบ 1C) การใช้งานที่ฉันตั้งใจไว้ไม่ได้ มีคุณสมบัติฉันสำหรับสำเนาฟรี ฉันใช้ Ubuntu เพื่อจุดประสงค์ส่วนตัวและฉันไม่คุ้นเคยกับความแตกต่างเล็กน้อยในระบบปฏิบัติการ RHEL ฉันตระหนักถึง CentOS, Fedora, Scientific Linux และ Oracle Linux แต่คำถามของฉันคือจุดประสงค์ในการฝึกฝนการสอบ RHCSA - ข้อใดเหมาะกับ RHEL 7 มากที่สุดเมื่อพิจารณางานต่อไปนี้ ผู้ดูแลระบบที่ผ่านการรับรอง Red Hat® (RHCSA) สามารถทำงานต่อไปนี้ได้: ทำความเข้าใจและใช้เครื่องมือที่จำเป็นสำหรับการจัดการไฟล์ไดเรกทอรีสภาพแวดล้อมบรรทัดคำสั่งและเอกสารประกอบ ดำเนินการระบบที่กำลังทำงานรวมถึงการบูตในระดับการทำงานที่แตกต่างกันการระบุกระบวนการการเริ่มต้นและการหยุดเครื่องเสมือนและการควบคุมบริการต่างๆ กำหนดค่าหน่วยเก็บข้อมูลโลคัลโดยใช้พาร์ติชันและโลจิคัลวอลุ่ม สร้างและกำหนดค่าระบบไฟล์และคุณลักษณะระบบไฟล์เช่นการอนุญาตการเข้ารหัสรายการควบคุมการเข้าถึงและระบบไฟล์เครือข่าย ปรับใช้กำหนดค่าและบำรุงรักษาระบบรวมถึงการติดตั้งซอฟต์แวร์อัพเดตและบริการหลัก จัดการผู้ใช้และกลุ่มรวมถึงการใช้ไดเรกทอรีส่วนกลางสำหรับการตรวจสอบ จัดการความปลอดภัยรวมถึงไฟร์วอลล์พื้นฐานและการกำหนดค่า SELinux ผู้ใช้รายอื่นถามคำถามที่คล้ายกันย้อนกลับไปในปี 2012 แต่เป็นรุ่นก่อนหน้าของ RHEL (และสามารถเปลี่ยนแปลงได้มากในเวลานั้น)

2
มีตัวเลือกอื่นนอกเหนือจาก ifupdown สำหรับผู้ใช้ทั่วไป / sys-admin อย่างไร
เมื่อวานนี้ฉันอัพเกรดแพ็คเกจและเจอNEWS.gz ใน netbase 5.4 : netbase (5.4) ไม่เสถียร ความเร่งด่วน = กลาง หยุดแนะนำ ifupdown เนื่องจากปัจจุบันมีตัวเลือกอยู่ ในขณะนี้จะยังคงติดตั้งตามค่าเริ่มต้นเนื่องจากมีลำดับความสำคัญที่สำคัญ (ปิด: # 824884) มีตัวเลือกอื่น ๆ อีกบ้าง? ฉันค้นหาข้อผิดพลาดที่กล่าวถึงในนั้นแต่ไม่พบอะไรเกี่ยวกับเครื่องมืออื่น ๆ ใครสามารถแบ่งปันเครื่องมือที่ DD / DM อาจพูดถึงได้บ้าง ฉันใช้ ifup และ ifdown เพื่อล้างปัญหาเครือข่ายอีเทอร์เน็ตชั่วคราวและใช้งานได้เกือบตลอดเวลา: $ sudo ifdown eth0 นี้จะล้างสัญญาเช่า DHCP ทั้งหมดและใด ๆ $ sudo ifup eth0 หลังจากครึ่งนาทีถึงหนึ่งนาทีให้ทำเช่นนี้เพื่อให้แน่ใจว่าคุณได้รับสัญญาเช่าใหม่และอยู่ในธุรกิจ บางครั้งเมื่อฉันไม่ได้ใช้อินเทอร์เน็ตบ่อยฉันจะใช้ $ ping debian.org …

5
แทนที่ขีดล่างด้วยเครื่องหมายจุลภาคและลบเครื่องหมายคำพูดคู่ใน CSV
ฉันมีไฟล์ CSV เป็น input.csv "1_1_0_0_76" "1_1_0_0_77" "1_1_0_0_78" "1_1_0_0_79" "1_1_0_0_80" "1_1_0_0_81" "1_1_0_0_82" "1_1_0_0_83" "1_1_0_0_84" "1_1_0_0_85" ............. เป็นต้น ฉันต้องการแปลงไฟล์ CSV นี้เป็น result.csv 1,1,0,0,76 1,1,0,0,77 1,1,0,0,78 1,1,0,0,79 1,1,0,0,80 1,1,0,0,81 1,1,0,0,82 1,1,0,0,83 1,1,0,0,84 1,1,0,0,85

1
วิธีคัดลอกข้อความจากบรรทัดคำสั่งไปยังคลิปบอร์ดโดยไม่ต้องใช้เมาส์?
ฉันกำลังพยายามหาวิธีที่จะคัดลอกข้อความปัจจุบันในบรรทัดคำสั่งไปยังคลิปบอร์ดโดยไม่ต้องแตะเมาส์ กล่าวอีกนัยหนึ่งฉันต้องเลือกข้อความด้วยแป้นพิมพ์เท่านั้น ฉันพบวิธีแก้ปัญหาครึ่งทางที่อาจนำไปสู่วิธีแก้ปัญหาเต็มรูปแบบ: Ctrl+a - เลื่อนไปที่จุดเริ่มต้นของบรรทัด Ctrl+k - ตัดทั้งเส้น Ctrl+y - ดึงข้อความที่ตัดกลับมา หรือฉันสามารถใช้Ctrl+uเพื่อดำเนินการ 2 ขั้นตอนแรก แน่นอนว่ามันใช้งานได้ แต่ฉันพยายามหาว่าข้อความที่ถูกตัดนั้นถูกเก็บไว้ตรงไหน มีวิธีการเข้าถึงโดยไม่ใช้Ctrl+yหรือไม่? ฉันรู้xclipและฉันยังใช้มันเพื่อส่งข้อความตรงไปยังคลิปบอร์ดดังนั้นฉันจึงคิดว่าจะบีบอัดข้อมูลที่บันทึกไว้โดยCtrl+kไปที่xclipแต่ไม่แน่ใจว่าจะทำอย่างไร วิธีการที่ผมได้รับเพื่อให้ห่างไกลคือการเขียนสคริปต์ที่ใช้xdotoolในการเพิ่มechoจุดเริ่มต้นของบรรทัดและ| zxcไปยังจุดสิ้นสุดของเส้นแล้วฮิตใส่ ( zxcเป็นนามแฝงที่กำหนดเองซึ่งโดยทั่วไปท่อxclip) วิธีนี้ใช้ได้ผล แต่ก็ไม่ใช่วิธี "สะอาด" จริงๆ ฉันใช้ Cshell ถ้ามันสร้างความแตกต่าง แก้ไข: ฉันไม่ต้องการใช้screenเป็นวิธีการแก้ปัญหาลืมที่จะพูดถึงว่า ขอบคุณ!

1
PAM กับ LDAP เทียบกับ SSSD เทียบกับ Kerberos
โดยทั่วไปฉันตระหนักถึงสิ่งที่บริการเหล่านี้แยกจากกัน สิ่งที่ฉันต้องการรู้: สิ่งที่เกิดขึ้นจริงในการเข้าสู่ระบบที่ประสบความสำเร็จในเครือข่ายลินุกซ์ที่ใช้บริการเหล่านี้ทั้งหมด? บริการเหล่านี้ได้รับการพิจารณาในลำดับใดบ้าง บริการอะไรพูดถึงบริการอะไร
10 login  pam  ldap  kerberos  sssd 

4
การกำหนดที่อยู่ IPv6, ส่วนนำหน้าแบบไดนามิกส่วนท้องถิ่นแบบคงที่
เราเตอร์ในเครือข่ายของฉันแจกคำนำหน้า IPv6 ที่กำหนดโดย ISP ของฉัน คำนำหน้านี้เป็นแบบไดนามิก แต่ "เหนียวค่อนข้าง" ฉันต้องการให้เครื่องของฉันรับค่านำหน้าที่โฆษณาใน RA โดยอัตโนมัติ แต่รวมเข้ากับส่วนที่ผู้ใช้ระบุเฉพาะแทนที่จะสร้างหนึ่งแบบสุ่มหรือตามที่อยู่ MAC มีวิธีง่าย ๆ ที่จะทำเช่นนั้น?
10 ipv6 

1
“ s” ใน“ $ -” คืออะไร?
$-ปกติฉันตระหนักดีถึงเนื้อหาของ CentOS ล่าสุดที่ฉันได้รับ: [grochmal@orion ~]$ echo $- himBH hmBHเป็นตัวเลือกทั้งหมดจากsetและiหมายความว่าเปลือกของฉันเป็นแบบโต้ตอบ กระนั้นบน Arch Linux ของฉันฉันได้รับ: [grochmal@haps ~]$ echo $- himBHs ฉันไม่พบสิ่งที่มีประโยชน์man bashและset -sทำให้ฉันมีข้อผิดพลาด สิ่งนั้นหมายsถึงอะไร

1
มีบางอย่างเช่น lsblk สำหรับอินเตอร์เฟสเครือข่ายหรือไม่?
มีคำสั่ง Linux ที่แสดงภาพอินเตอร์เฟสเครือข่ายที่กำหนดค่าไว้ในมุมมองแบบต้นไม้เช่นเดียวlsblkกับอุปกรณ์บล็อกหรือไม่ ผลลัพธ์ของโปรแกรมดังกล่าวอาจมีลักษณะเช่นนี้ (จากล่างขึ้นบน): eth0 └─bond0 ├─bond0.42 │ └─br42 └─bond0.43 └─br43 eth1 └─bond0 ├─bond0.42 │ └─br42 └─bond0.43 └─br43 tap100i0 └─br42 tap100i1 └─br43 tap101i0 └─br42 tap101i1 └─br43 หรือสิ่งนี้ (จากบนลงล่าง): br42 ├─bond0.42 │ └─bond0 │ ├─eth0 │ └─eth1 ├─tap100i0 └─tap101i0 br43 ├─bond0.43 │ └─bond0 │ ├─eth0 │ └─eth1 ├─tap100i1 └─tap101i1 หมายเหตุ: …

3
ไม่ทราบสาเหตุ NMI 20 และ 30 บน VM
ฉันดึงคอนโซลขึ้นมาบนเครื่องเสมือนที่ฉันจัดการในวันนี้และได้รับการต้อนรับด้วยข้อความเคอร์เนล: [5912557.130943] Uhhuh. NMI received for unknown reason 20 on CPU 0. [5912557.131115] Do you have a strange power saving mode enabled? [5912557.131287] Dazed and confused, but trying to continue [6064281.393568] Uhhuh. NMI received for unknown reason 30 on CPU 1. [6064281.393888] Do you have a strange power saving mode …
10 linux  kvm  libvirt  nmi 

3
เป็นไปได้หรือไม่ที่จะเปิดเผยช่องสัญญาณ TCP ใน Linux เป็นอุปกรณ์ตัวอักษรพิเศษ?
เมื่อเร็ว ๆ นี้ฉันพบในเอกสารประกอบ QNX ที่อนุญาตให้ติดตั้ง IPC แบบข้อความระหว่างกระบวนการในเครื่องทางกายภาพแยกโดยใช้อุปกรณ์อนุกรม ( dev/serX) และทำให้ฉันสงสัยว่า: เป็นไปได้ใน Linux ที่จะสร้างอุปกรณ์พิเศษทั้งระบบสำหรับอุโมงค์ TCP / UDP? สิ่งที่ต้องการncstdin / stdout เปิดเผยต่อสาธารณะภายใต้ / dev / บางสิ่งบางอย่าง ในท้ายที่สุดฉันต้องการที่จะสามารถเขียนบางสิ่งบางอย่างไปยังไฟล์ดังกล่าวบนเครื่องหนึ่งและรับมันในส่วนอื่น ๆ : #machine1: echo "Hello" > /dev/somedev #machine2: cat < /dev/somedev ฉันดูncผู้ชาย แต่ฉันไม่พบตัวเลือกใด ๆ ในการระบุแหล่งที่มา / ปลายทางของ io นอกเหนือจาก stdio

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