Score:0

ข้อผิดพลาดร้ายแรง: rpc/rpc.h: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว

ธง id

ฉันกำลังพยายามติดตั้ง Snort บน Ubuntu 21.04 จากไฟล์ต้นฉบับตามคำแนะนำบนเว็บไซต์ Snort ฉันติดตามวิดีโอบน Youtube และผ่านปัญหาต่างๆ มาได้ แต่ฉันติดอยู่ที่:

sp_rpc_check.c:32:10: ข้อผิดพลาดร้ายแรง: rpc/rpc.h: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว
   32 | #รวม <rpc/rpc.h>
      | ^~~~~~~~~~~
การรวบรวมสิ้นสุดลง
make[4]: *** [Makefile:478: sp_rpc_check.o] ข้อผิดพลาด 1
ทำ [4]: ​​ออกจากไดเร็กทอรี '/usr/snort-2.9.18/src/detection-plugins'
ทำ [3]: *** [Makefile:428: ทั้งหมด] ข้อผิดพลาด 2
ทำ [3]: ออกจากไดเร็กทอรี '/usr/snort-2.9.18/src/detection-plugins'
make[2]: *** [Makefile:547: all-recursive] ข้อผิดพลาด 1
ทำ [2]: ออกจากไดเร็กทอรี '/usr/snort-2.9.18/src'
make[1]: *** [Makefile:505: all-recursive] ข้อผิดพลาด 1
ทำ [1]: ออกจากไดเร็กทอรี '/usr/snort-2.9.18'
ทำ: *** [Makefile:370: ทั้งหมด] ข้อผิดพลาด 2

มีความพยายาม sudo apt ติดตั้ง libntirpc-dev ตามหัวข้ออื่นที่นี่ใน AskUbuntu

ฉันเป็นญาติมือใหม่ เสร็จแล้ว อัปเดต sudo apt และ sudo apt อัพเกรด.

จากเว็บไซต์ snort https://www.snort.org/#get-startedได้ทำทั้งหมด:

wget https://www.snort.org/downloads/snort/daq-2.0.7.tar.gz
                      
wget https://www.snort.org/downloads/snort/snort-2.9.18.tar.gz
น้ำมันดิน xvzf daq-2.0.7.tar.gz
                      
ซีดี daq-2.0.7
./configure && make && sudo ทำการติดตั้ง
tar xvzf snort-2.9.18.tar.gz
                      
ซีดี snort-2.9.18

แต่เมื่อเรียกใช้:

./configure --enable-sourcefire && ทำ && sudo ทำการติดตั้ง

รับข้อผิดพลาดที่อธิบายไว้ข้างต้น

ฉันได้จัดเรียงปัญหา libpcap, libpcre และ dnet แล้ว ดังนั้นมันจึงเป็นเพียงปัญหา rpc ในตอนนี้ ขอบคุณ

hr flag
คุณอาจพบว่าคำถามและคำตอบล่าสุดนี้มีประโยชน์: [rpc.h หายไป? อูบุนตู 21.04](https://askubuntu.com/a/1360094/178692)
N0rbert avatar
zw flag
เกิดอะไรขึ้นกับแพ็คเกจไบนารี https://packages.ubuntu.com/hirsute/snort ?
omboidal avatar
id flag
พูดตามตรง ฉันจำไม่ได้ว่าฉันพยายามทำสิ่งนี้ในตอนแรกหรือไม่ แต่ฉันเพิ่งลองและได้รับ: 0 เพื่ออัปเกรด 0 เพื่อติดตั้งใหม่ 0 เพื่อลบ และ 8 เพื่อไม่อัปเกรด แต่; $ ตะคอก ทำงานในโหมดการถ่ายโอนข้อมูลแพ็กเก็ต --== กำลังเริ่มต้น Snort ==-- กำลังเริ่มต้นปลั๊กอินเอาต์พุต! pcap DAQ กำหนดค่าเป็นแบบพาสซีฟ รับทราฟฟิกเครือข่ายจาก "enp6s0" ข้อผิดพลาด: ไม่สามารถเริ่ม DAQ (-1) - ซ็อกเก็ต: ไม่อนุญาตให้ดำเนินการ! ข้อผิดพลาดร้ายแรง เลิก..
Score:0
ธง bz

ฉันทำการกำหนดค่า snort ในการกระจาย Kali

sp_rpc_check.c:32:10: ข้อผิดพลาดร้ายแรง: rpc/rpc.h: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว
   32 | #รวม <rpc/rpc.h>

แก้ไขปัญหาดังนี้:

  1. ค้นหาไลบรารีที่มี rpc (ค้นหาไฟล์ apt rpc/rpc.h)
  2. กำลังติดตั้ง (apt-get ติดตั้ง libntirpc-dev)
  3. การคัดลอกไฟล์จาก ปิด โฟลเดอร์ไปที่ อาร์ซีพี โฟลเดอร์
  4. วิ่ง: ทำ
  5. ไม่พบการแก้ไขเส้นทางของไฟล์
  6. ทำซ้ำขั้นตอนจนกว่าข้อผิดพลาดจะได้รับการแก้ไข

อดีต. 1:

คัดลอกไฟล์จาก ntirpc ไปยัง rpc

sp_rpc_check.c:32:10: ข้อผิดพลาดร้ายแรง: rpc/rpc.h: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว
   32 | #รวม <rpc/rpc.h>
/include/ntirpc# cp rpc.h /usr/include/rpc

/snort_source/snort-2.9.18.1# ทำ

ตัวอย่าง 2:

ประเภทการแก้ไข.h

/usr/include/rpc/types.h:189:10: ข้อผิดพลาดร้ายแรง: misc/abstract_atomic.h: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว
  189 | #รวม <misc/abstract_atomic.h>

เปลี่ยนบรรทัดจาก:

#รวม <misc/abstract_atomic.h>

ถึง:

#รวมถึง </usr/include/rpc/misc/abstract_atomic.h>

แล้ว

/snort_source/snort-2.9.18.1# ทำ 

ฯลฯ ...


ฉันแก้ไขไฟล์ต่อไปนี้:

wait_queuq.h
clnt.h
rpc.h
pool_queue.h
svc.h
แบบพกพาh
ประเภท h

ตามที่กำหนดโดย ทำ.

ประมาณ: 40 บรรทัดของรหัส

omboidal avatar
id flag
ขอบคุณ. ดังนั้น ทำตามคำแนะนำของคุณ ฉันแก้ไขปัญหา rpc.h และปัญหา abstract_atomic.h สิ่งที่ฉันได้รับตอนนี้คือ /usr/include/rpc/rpc-sn/rpc/svc.h:50:10: ข้อผิดพลาดร้ายแรง: reentrant.h: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว 50 | #รวมถึง "reentrant.h" ไฟล์ reentrant.h มีอยู่ในโฟลเดอร์ที่ถูกต้อง มันถูกอ้างถึงในไฟล์ svc.h เป็นต้นด้วยวิธีต่อไปนี้: #include "reentrant.h" ในขณะที่ส่วนอื่นๆ ไม่ได้อยู่ในเครื่องหมายคำพูด ฉันได้ลองให้มันเป็นเส้นทาง ลบเครื่องหมายคำพูด ใช้ หรือแม้แต่แสดงความคิดเห็นออนไลน์เพื่อขอความช่วยเหลือ แต่ไม่มีวิธีใดที่สามารถแก้ไขปัญหาได้ .... ความช่วยเหลือใด ๆ ที่ชื่นชม!
Score:0

การตัดสินใจเป็นเรื่องง่าย คุณต้องใส่ไฟล์ที่หายไปจากที่นี่ https://github.com/lattera/glibc/tree/master/sunrpc/rpc ถึง /usr/include/rpc มันไม่ปลอดภัย แต่ใช้งานได้ xD ดูนี่

Score:-1
ธง it

ถามระบบบรรจุภัณฑ์:

dpkg -S /usr/include/rpc/rpc.h

ที่จะบอกคุณว่าแพ็คเกจใดให้ /usr/include/rpc/rpc.h. ติดตั้งแพ็คเกจนั้น อ่าน คน dpkg.

omboidal avatar
id flag
ดังนั้นฉันจึงได้รับ: ไม่พบเส้นทางที่ตรงกับรูปแบบ /usr/include/rpc/rpc.h
omboidal avatar
id flag
Google แนะนำ :https://github.com/lxi-tools/liblxi/issues/8 ซึ่ง dicussed ดังนั้นฉันจึงลอง : sudo dpkg -S /usr/include/tirpc/rpc/rpc.h ซึ่งส่งคืน: libtirpc-dev:amd64: /usr/include/tirpc/rpc/rpc.h แต่: sudo apt-get install libtirpc-dev .... libtirpc-dev เป็นเวอร์ชันใหม่ล่าสุดแล้ว (1.3.1-1build1) libtirpc-dev ตั้งค่าเป็นติดตั้งด้วยตนเอง 0 เพื่ออัปเกรด 0 เพื่อติดตั้งใหม่ 0 เพื่อลบ และ 7 เพื่อไม่อัปเกรด
hr flag
@omboidal หาก `rpc.h` อยู่ในไดเร็กทอรีย่อย คุณอาจต้องส่งเส้นทาง include ไปยังกระบวนการสร้างอย่างชัดเจน รายละเอียดจะขึ้นอยู่กับวิธีการเขียน แต่คุณสามารถลอง `./configure CFLAGS=-I/usr/include/tirpc` เป็นต้น
omboidal avatar
id flag
@steeldriver ขอบคุณ ฉันลองใช้คำแนะนำของคุณแล้ว คำสั่งเสร็จสิ้นตกลง แต่การกำหนดค่า snort ยังคงหยุดที่จุดเดิม ข้อเสนอแนะใด ๆ ที่ชื่นชม ขอบคุณ
N0rbert avatar
zw flag
วิธีที่ถูกต้องในการ "ถามระบบบรรจุภัณฑ์" คือ https://packages.ubuntu.com/search?suite=hirsute&arch=any&mode=exactfilename&searchon=contents&keywords=rpc.h หรือ `sudo apt-get install apt-file; อัปเดต sudo apt-file; ค้นหาไฟล์ apt rpc/rpc.h`

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา