คำถามติดแท็ก busybox

BusyBox รวมยูทิลิตี้ UNIX ทั่วไปหลายเวอร์ชันไว้ในไฟล์ปฏิบัติการขนาดเล็กเพียงไฟล์เดียว

4
วิธีรับบรรทัดคำสั่งทั้งหมดจากกระบวนการ
ฉันจะรับอาร์กิวเมนต์คำสั่งหรือบรรทัดคำสั่งทั้งหมดจากกระบวนการที่รันโดยใช้ชื่อกระบวนการได้อย่างไร ตัวอย่างเช่นกระบวนการนี้: # ps PID USER TIME COMMAND 1452 root 0:00 /sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pid และสิ่งที่ฉันต้องการคือ/sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pidหรือข้อโต้แย้ง ฉันรู้ชื่อกระบวนการและต้องการข้อโต้แย้ง ฉันใช้ Busybox กับ SliTaz

2
คำสั่ง BusyBox ถูกสร้างขึ้นอย่างแท้จริงหรือไม่?
ฉันอ่านUnix Recovery Legend ที่มีชื่อเสียงและมันทำให้ฉันสงสัยว่า: หากฉันเปิดเชลล์ BusyBox และไบนารี BusyBox ถูกลบไปเองฉันจะยังสามารถใช้คำสั่งทั้งหมดที่รวมอยู่ในไบนารี BusyBox ได้หรือไม่ เห็นได้ชัดว่าผมจะไม่สามารถที่จะใช้รุ่น BB ของคำสั่งที่มาจากอีกเปลือกทำงานเช่นbashตั้งแต่ไฟล์ BusyBox ตัวเองจะไม่พร้อมใช้งานสำหรับbashการเปิดและการทำงาน แต่จากภายในอินสแตนซ์ที่กำลังทำงานของ BusyBox ดูเหมือนว่าสำหรับฉันอาจมีสองวิธีที่ BB จะเรียกใช้คำสั่ง: มันสามารถแยกและดำเนินการอินสแตนซ์ใหม่ของ BusyBox เรียกมันโดยใช้ชื่อที่เหมาะสมและอ่านไฟล์ BusyBox จากดิสก์เพื่อทำเช่นนั้น มันสามารถแยกและดำเนินการตรรกะภายในเพื่อเรียกใช้คำสั่งที่ระบุ (ตัวอย่างเช่นโดยการเรียกใช้เป็นการเรียกใช้ฟังก์ชัน) ถ้า (1) เป็นวิธีการทำงานของ BusyBox ฉันคาดหวังว่าคำสั่ง BusyBox ที่ระบุจะไม่สามารถใช้งานได้จากภายในอินสแตนซ์ที่กำลังทำงานของ BB หลังจากที่ลบไบนารี BB ถ้า (2) เป็นวิธีการทำงาน BusyBox สามารถใช้งานได้แม้กระทั่งการกู้คืนระบบที่ตัว BB เองถูกลบไป - หากยังมีอินสแตนซ์ที่ใช้งานได้ของ BusyBox ที่สามารถเข้าถึงได้ เอกสารนี้มีอยู่ทุกที่หรือไม่? …

2
การกู้คืนจากข้อผิดพลาด 'grub rescue>' [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Unix & Linux Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว โพสต์ต้นฉบับไปยัง AskUbuntu.com ... AskUbuntu ได้นำนโยบายการปิดคำถามเกี่ยวกับรุ่น EOL (End Of Life) มาใช้ มีแกนนำในการลบออกเช่นกัน เพื่อป้องกันการสูญเสียคำถามยอดนิยมที่เป็นไปได้ (342335 จำนวนการดูล่าสุด) กำลังวางเวอร์ชันที่แก้ไข --- docsalvager ระบบ "คลาสสิค" ... Puppy Linux 5.2.8 (Lucid) อ้างอิงจาก Ubuntu 10.04 (Lucid Lynx) ตัวโหลดบูตGRUB 2 ด้วง 2ทำให้จำนวนของ*.modไฟล์ (เคอร์เนลโมดูล) /boot/grubใน การลบไฟล์เหล่านี้ (คิดว่าพวกเขาถูกใส่ผิดไฟล์เสียง) grub …

2
ระบบจะส่ง SIGTERM ไปยังกระบวนการเมื่อใด
โปรแกรมเซิร์ฟเวอร์ของฉันได้รับ SIGTERM และหยุดทำงาน (ด้วยรหัสออก 0) ฉันประหลาดใจกับสิ่งนี้เนื่องจากฉันค่อนข้างมั่นใจว่ามีหน่วยความจำมากมายสำหรับมัน linux (busybox) ส่ง SIGTERM ไปยังกระบวนการใดภายใต้เงื่อนไขใด

8
สิ่งที่เขียนทับ /etc/resolv.conf ในทุก ๆ การบู๊ต?
ผมได้รับไฟล์สำหรับมินิที่รองเท้าโดยตรงในlinux firefoxมันทำงานได้ดีสำหรับทุกสิ่งที่ควรทำเท่านั้นที่ฉันไม่ได้รับการเชื่อมต่ออินเทอร์เน็ต เรามีเซิร์ฟเวอร์ DNS 3 ตัวในเครือข่ายซึ่งใช้งานได้ทั้งหมด ฉันสามารถปิงได้เช่นกัน แต่เมื่อพยายามping google.deหรือwget google.deฉันได้รับbad addressข้อผิดพลาด nslookup google.de ทำงานด้วยเหตุผลบางอย่าง ฉันติดตามปัญหาที่เกิดขึ้นกับresolv.confระบบบูทที่ไม่มีเนื้อหาเดียวกันกับresolv.confที่ฉันใส่ลงใน.isoไฟล์ resolv.confผมพยายามทำความเข้าใจปัจจัยทั้งหมดที่ไปในการสร้างและการปรับเปลี่ยน ฉันไม่แน่ใจว่าฉันได้รับทั้งหมด แต่ฉันไม่พบวิธีแก้ไขปัญหาของฉันที่นั่น ดังนั้นในความพยายามครั้งสุดท้ายฉันจึงพยายามทำให้การใช้resolv.confไฟล์ไม่เปลี่ยนรูป :~# chattr +i /etc/resolv.conf เมื่อสร้างขึ้นมาใหม่และทำการบูทอีกครั้งเพื่อทำให้ฉันประหลาดใจไฟล์ของฉันถูกเปลี่ยนชื่อเป็นresolv.conf~และมันก็เป็นไฟล์มาตรฐานเดียวกันกับที่หลอกหลอนฉัน เนื้อหาของไฟล์ทำให้ฉันเชื่อว่าได้รับข้อมูลจากเครือข่ายเอง เมื่อเริ่มต้น.isoใน Virtualbox โดยไม่ใช้อินเทอร์เน็ตไฟล์ของฉันจะถูกเก็บไว้เหมือนเดิม ฉันพยายามเปลี่ยน/etc/dhcp/dhclient.confเพื่อไม่รับข้อมูลจากเน็ตโดยการลบdomain-name-serverและdomain-name-searchจากrequestส่วนของไฟล์ ไม่ได้ทำงานอย่างน่าเสียดาย ฉันไม่ได้ติดตั้ง NetworkManager มาตรฐาน iso นั้นใช้ Ubuntu 14.04 อาจมีข้อมูลสำคัญขาดหายไป ฉันยินดีที่จะให้มัน UPDATE: ฉันคิดว่าฉันพบไฟล์ที่ลบresolv.confแล้ว มันน่าจะเป็น /usr/share/udhcpc/default.script #!/bin/sh # udhcpc script edited by Tim …

4
หนึ่งอะตอมจะเปลี่ยน symlink เป็นไดเรกทอรีใน busybox ได้อย่างไร?
ฉันพยายาม (ใกล้เคียงที่สุด) อาจเปลี่ยน symlink ฉันได้พยายาม: ln -sf other_dir existing_symlink เพียงใส่ symlink ใหม่ในไดเรกทอรีที่มีอยู่แล้ว ln -sf other_dir new_symlink mv -f new_symlink existing_symlink นั่นทำสิ่งเดียวกัน: มันย้าย symlink ไปยังไดเรกทอรี cp -s other_dir existing_symlink มันปฏิเสธเพราะมันเป็นไดเรกทอรี ฉันอ่านแล้วว่าmv -Tทำมาเพื่อสิ่งนี้ แต่ busybox ไม่มีการ-Tตั้งค่าสถานะ

5
รวมสองรายการในขณะที่ลบรายการที่ซ้ำกัน
ฉันมีระบบลินุกซ์ในตัวโดยใช้ Busybox (OpenWRT) - ดังนั้นคำสั่งจะถูก จำกัด ฉันมีสองไฟล์ที่มีลักษณะดังนี้: ไฟล์แรก aaaaaa bbbbbb cccccc mmmmmm nnnnnn ไฟล์ที่สอง mmmmmm nnnnnn yyyyyy zzzzzz ฉันต้องการรวม 2 รายการเหล่านี้เป็น 1 ไฟล์และลบรายการที่ซ้ำกัน ผมไม่ได้มีความแตกต่าง (พื้นที่ จำกัด ) เราจึงได้รับการใช้งานที่ดีawk, sedและgrep(หรือเครื่องมืออื่น ๆ ที่อาจจะรวมอยู่ในอินสแตนซ์ Busybox มาตรฐาน) ไปที่ไฟล์ผสานเช่น: command1 > mylist.merge command2 mylist.merge > originallist ไม่เป็นไร มันไม่จำเป็นต้องเป็นคำสั่งบรรทัดเดียว ฟังก์ชั่นที่กำหนดไว้ในปัจจุบันในกรณีของ Busybox ที่ฉันใช้ (ค่าเริ่มต้น OpenWRT): [, [, …
18 bash  grep  sed  awk  busybox 

4
จัดเรียงตามวันที่
เดิม: 23 ม.ค. 2011 10:42 บางวัน 2007.12.20.avi 26 มิถุนายน 2009 สิ่งที่เกิดขึ้น 2009.06.25.avi 12 ก.พ. 2010 บางสิ่ง 2010.02.11.avi 29 มกราคม 2011 09:17 บางวัน 2011.01.27.avi ก.พ. 11 2011 20:06 บางวัน 2011.02.10.avi 27 ก.พ. 2011 23:05 บางวัน 2011.02.24.avi เอาท์พุท: 27 ก.พ. 2011 23:05 บางวัน 2011.02.24.avi ก.พ. 11 2011 20:06 บางวัน 2011.02.10.avi 29 มกราคม …
17 sort  busybox 

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


6
Busybox ping IP ใช้งานได้ แต่ชื่อโฮสต์ nslookup ล้มเหลวด้วย“ ที่อยู่ไม่ถูกต้อง”
ฉันกำลังรวบรวมเคอร์เนล 3.14 ของฉันเอง ฉันเกรงว่าฉันอาจไม่ได้ใช้คุณสมบัติระบบเครือข่ายที่สำคัญบางอย่างเพื่อให้ DNS ทำงานได้ ฉันไม่สามารถแก้ไขชื่อโดเมน ฉันสามารถ ping เซิร์ฟเวอร์ DNS ของฉัน ฉันสามารถแก้ไขการใช้ DNS นั้นในเครื่องอื่น ๆ เพื่อให้ฉันรู้ว่าไม่ใช่เซิร์ฟเวอร์ ~ # cat /etc/resolv.conf nameserver 192.168.13.5 ~ # nslookup google.com Server: 192.168.13.5 Address 1: 192.168.13.5 nslookup: can't resolve 'google.com' ~ # ping -c 1 google.com ping: bad address 'google.com' ~ # ping -c …

2
รุ่น sed ใดที่ไม่ใช่ GNU sed 4.0
ฉันกำลังพยายามหาเวอร์ชั่นsedที่ฉันใช้บน BusyBox 1.18.3 --versionผลผลิตเป็นที่คลุมเครือ $ sed --version This is not GNU sed version 4.0 sed.cรหัสต่อไปนี้จากที่เกี่ยวข้อง /* Lie to autoconf when it starts asking stupid questions. */ if (argv[1] && !strcmp(argv[1], "--version")) { puts("This is not GNU sed version 4.0"); return 0; } นี่คือส่วนหัว: /* * sed.c - very minimalist version …
12 sed  version  busybox 

1
Linux น้อยที่สุดที่มีเคอร์เนลและ BusyBox: / etc / inittab จะถูกละเว้นจะดำเนินการ / init เท่านั้น
ฉันจัดการเพื่อสร้างซีดีลินุกซ์สดขนาดเล็กและใช้งานได้เต็มรูปแบบซึ่งมีเคอร์เนลเท่านั้น (คอมไพล์ด้วยตัวเลือกเริ่มต้น) และ BusyBox (คอมไพล์ด้วยตัวเลือกเริ่มต้น + สแตติกแอปเพล็ตทั้งหมดที่มีอยู่/sbin/init) ผมมีปัญหาใด ๆ ในการสร้างinitrdและเติม/dev, /procและ/sysและข้าพเจ้ายังมีปัญหาที่ไม่ทั้งหมดของฉันกับ/initเชลล์สคริปต์ เมื่อเร็ว ๆ นี้ฉันอ่านว่า BusyBox รองรับ/etc/inittabการกำหนดค่า (อย่างน้อยถึงระดับหนึ่ง) และฉันต้องการทำอย่างใดอย่างหนึ่งต่อไปนี้: ลืม/initเชลล์สคริปต์ของฉันและพึ่งพา/etc/inittabการกำหนดค่าทั้งหมด ใช้ทั้ง/initเชลล์สคริปต์และ/etc/inittabการกำหนดค่า ตอนนี้ปัญหาที่เกิดขึ้นจริง - ดูเหมือนว่า/etc/inittabจะถูกละเว้นอย่างสมบูรณ์เมื่อ distro บูตของฉัน อาการคือ: เมื่อฉันลบ/initและปล่อยให้/etc/inittabฉันจบลงด้วยความตื่นตระหนกเคอร์เนล สมมติฐานของฉันคือว่าเมล็ดไม่ได้ดำเนินการ/sbin/initเลยหรือว่า/sbin/initไม่พบ /etc/inittab(หรืออ่าน) ผมอ่านที่ BusyBox /etc/inittabควรปรับการทำงานได้โดยไม่ต้อง ดังนั้นฉันออกทั้งสอง/initและ/etc/inittabและคาดเดาสิ่งที่ - ตื่น kernel อีกครั้ง ผมพยายามที่จะดำเนินการ/sbin/initจากเปลือกของฉันและหลังจากที่หลายคาดเดาซึ่งรวมถึงexec /sbin/init, setsid /sbin/initและexec setsid /sbin/initฉันจบลงด้วยความตื่นตระหนกเคอร์เนล ทั้งที่มีและไม่มี / etc / inittab อยู่ในระบบไฟล์ นี่คือเนื้อหาของ/initสคริปต์เชลล์ของฉัน: …

2
สร้างและควบคุมสคริปต์เริ่มต้นใน BusyBox
ฉันได้รวบรวมเคอร์เนลลินุกซ์ที่กำหนดเองใน BusyBox BusyBox initไม่รองรับ runlevels เมื่อบูทเคอร์เนลใน BusyBox จะรันครั้งแรกinitซึ่งมีลักษณะสำหรับ runlevel /etc/inittabระบุใน BusyBox ทำงานได้ดีโดยไม่ต้องinit /etc/inittabเมื่อไม่inittabพบจะมีลักษณะการทำงานต่อไปนี้: ::sysinit:/etc/init.d/rcS ส่วนนี้ชัดเจนสำหรับฉัน แต่ฉันต้องการทราบวิธีจัดการ daemons ที่เริ่มระบบเครือข่ายสร้างพอร์ตอนุกรมหรือเริ่มjavaกระบวนการ ฉันได้ดูสคริปต์ที่มีอยู่/etc/init.d/แต่ฉันไม่เข้าใจวิธีจัดการกับสคริปต์เหล่านั้น buildrootฉันกำลังมองหาการกวดวิชาที่ดีหรือการแก้ปัญหาในการควบคุมการบริการเหล่านี้ด้วยตัวเองโดยไม่ต้องมีเครื่องมืออัตโนมัติเช่น ฉันต้องการเข้าใจวิธีการทำงานของสคริปต์เหล่านี้และวิธีการสร้างอุปกรณ์ใน/dev/(ตอนนี้ฉันมีconsoleและttyAM0)

1
วิธีการแก้ไข“ การยกเลิกการรับรองความถูกต้องตามตัวเลือกท้องถิ่น”
ฉันสร้าง Linux ในตัวโดยใช้Buildrootและฉันมีปัญหาในการเชื่อมต่อกับ AP ของฉัน ไม่สามารถรับที่อยู่ IP ได้มากกว่าหนึ่งครั้ง ฉันใช้ wpa_supplicant เพื่อเชื่อมต่อ AP ของฉันโดยใช้ WPA2-PSK มันทำงานร่วมกับ AP อื่น ๆ เช่นสมาร์ทโฟนของฉันในโหมด AP เมื่อฉันใช้iwconfig wlan0ฉันเห็นว่าฉันเชื่อมโยงกับ AP ของฉัน wlan0 IEEE 802.11bgn ESSID:"ZyXEL_B3B5" Mode:Managed Frequency:2.462 GHz Access Point: 90:EF:68:D3:B3:B5 Bit Rate=58.5 Mb/s Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key:off Power Management:on …
10 wifi  dhcp  busybox  wlan  buildroot 

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