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

คำถามเกี่ยวกับลินุกซ์จะต้องมีการเขียนโปรแกรมที่เกี่ยวข้อง ใช้แท็กนี้เฉพาะเมื่อคำถามของคุณเกี่ยวข้องกับการเขียนโปรแกรมโดยใช้ Linux API หรือพฤติกรรมเฉพาะของ Linux ไม่ใช่เพียงเพราะคุณใช้งานโค้ดของคุณบน Linux เท่านั้น หากคุณต้องการการสนับสนุน Linux คุณสามารถลอง https://unix.stackexchange.com หรือเว็บไซต์ Stack Exchange ของ Linux ที่เผยแพร่เฉพาะเช่น https://askubuntu.com หรือ https://elementaryos.stackexchange.com/

19
ข้อผิดพลาดของ Linux ในขณะที่โหลดไลบรารีที่แชร์: ไม่สามารถเปิดไฟล์วัตถุที่แชร์: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว
โปรแกรมเป็นส่วนหนึ่งของชุดทดสอบ Xenomai ซึ่งรวบรวมจาก Linux PC ไปยัง Linux + Xenomai ARM toolchain # echo $LD_LIBRARY_PATH /lib # ls /lib ld-2.3.3.so libdl-2.3.3.so libpthread-0.10.so ld-linux.so.2 libdl.so.2 libpthread.so.0 libc-2.3.3.so libgcc_s.so libpthread_rt.so libc.so.6 libgcc_s.so.1 libstdc++.so.6 libcrypt-2.3.3.so libm-2.3.3.so libstdc++.so.6.0.9 libcrypt.so.1 libm.so.6 # ./clocktest ./clocktest: error while loading shared libraries: libpthread_rt.so.1: cannot open shared object file: No …

15
ห้ามใช้อักขระใดในชื่อไดเรกทอรี Windows และ Linux
ฉันรู้ว่า / ผิดกฎหมายใน Linux และต่อไปนี้ผิดกฎหมายใน Windows (ฉันคิดว่า) * . " / \ [ ] : ; | , มีอะไรอีกบ้างที่ขาดหายไป? ฉันต้องการคู่มือที่ครอบคลุมและสิ่งที่ต้องคำนึงถึงอักขระแบบไบต์คู่ การเชื่อมโยงไปยังแหล่งข้อมูลภายนอกเป็นสิ่งที่ดีสำหรับฉัน ฉันต้องสร้างไดเรกทอรีบนระบบแฟ้มก่อนโดยใช้ชื่อที่อาจมีอักขระต้องห้ามดังนั้นฉันวางแผนที่จะแทนที่อักขระเหล่านั้นด้วยเครื่องหมายขีดล่าง ฉันต้องเขียนไดเรกทอรีนี้และเนื้อหาในไฟล์ zip (โดยใช้ Java) ดังนั้นคำแนะนำเพิ่มเติมใด ๆ ที่เกี่ยวข้องกับชื่อของไดเรกทอรี zip จะได้รับการชื่นชม

11
การใช้ openssl เพื่อรับใบรับรองจากเซิร์ฟเวอร์
ฉันพยายามรับใบรับรองของเซิร์ฟเวอร์ระยะไกลซึ่งฉันสามารถใช้เพื่อเพิ่มไปยังที่เก็บคีย์ของฉันและใช้ภายในแอ็พพลิเคชัน java ของฉัน นักพัฒนาอาวุโส (ผู้ที่อยู่ในช่วงวันหยุด :() แจ้งให้ฉันทราบว่าฉันสามารถเปิดใช้งานได้: openssl s_client -connect host.host:9999 หากต้องการรับใบรับรองดิบทิ้งซึ่งฉันสามารถคัดลอกและส่งออกได้ ฉันได้รับผลลัพธ์ต่อไปนี้: depth=1 /C=NZ/ST=Test State or Province/O=Organization Name/OU=Organizational Unit Name/CN=Test CA verify error:num=19:self signed certificate in certificate chain verify return:0 23177:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1086:SSL alert number 40 23177:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:188: ฉันได้ลองกับตัวเลือกนี้แล้ว -showcerts และอันนี้ (ทำงานบนเดเบียนใจคุณ) -CApath /etc/ssl/certs/ แต่ได้รับข้อผิดพลาดเดียวกัน …

11
ฉันจะรันโปรแกรมด้วยไดเรกทอรีการทำงานที่แตกต่างจากปัจจุบันจาก Linux shell ได้อย่างไร
ใช้เปลือก Linuxฉันจะเริ่มต้นโปรแกรมด้วยไดเรกทอรีการทำงานที่แตกต่างจากไดเรกทอรีการทำงานปัจจุบันได้อย่างไร ตัวอย่างเช่นผมมีไฟล์ไบนารีhelloworldที่สร้างแฟ้มhello-world.txtในไดเรกทอรีปัจจุบัน ไฟล์นี้เป็นภายในของไดเรกทอรี /a /bขณะนี้ผมอยู่ในไดเรกทอรี ฉันต้องการที่จะเริ่มต้นโปรแกรมของฉันทำงาน../a/helloworldและได้รับที่ไหนสักแห่งในไดเรกทอรีที่สามhello-world.txt/c
352 linux  shell  environment 

13
ลบบรรทัดว่างโดยใช้ sed
ฉันพยายามลบบรรทัดว่างโดยใช้ sed: sed '/^$/d' แต่ฉันไม่มีโชคกับมัน ตัวอย่างเช่นฉันมีเส้นเหล่านี้: xxxxxx yyyyyy zzzzzz และฉันต้องการให้เป็นเช่น: xxxxxx yyyyyy zzzzzz สิ่งที่ควรเป็นรหัสสำหรับสิ่งนี้?
351 linux  unix  sed 

10
มาโครที่น่าจะเป็น / ไม่น่าจะทำงานในเคอร์เนล Linux ได้อย่างไรและประโยชน์ของมันคืออะไร?
ฉันขุดผ่านบางส่วนของเคอร์เนล Linux และพบสายเช่นนี้: if (unlikely(fd < 0)) { /* Do something */ } หรือ if (likely(!err)) { /* Do something */ } ฉันได้พบคำจำกัดความของพวกเขา: #define likely(x) __builtin_expect((x),1) #define unlikely(x) __builtin_expect((x),0) ฉันรู้ว่ามีไว้สำหรับการปรับให้เหมาะสม แต่จะทำงานอย่างไร และสามารถลดขนาดประสิทธิภาพ / ขนาดได้เท่าไรจากการใช้งาน? และมันก็คุ้มค่ากับความยุ่งยาก (และการสูญเสียความสามารถในการพกพา) อย่างน้อยในโค้ดคอขวด (ใน userspace แน่นอน)

18
ฉันจะฆ่ากระบวนการด้วยชื่อแทนที่จะเป็น PID ได้อย่างไร
บางครั้งเมื่อฉันพยายามเริ่ม Firefox คำว่า "กระบวนการ Firefox กำลังทำงานอยู่" ดังนั้นฉันต้องทำสิ่งนี้: jeremy@jeremy-desktop:~$ ps aux | grep firefox jeremy 7451 25.0 27.4 170536 65680 ? Sl 22:39 1:18 /usr/lib/firefox-3.0.1/firefox jeremy 7578 0.0 0.3 3004 768 pts/0 S+ 22:44 0:00 grep firefox jeremy@jeremy-desktop:~$ kill 7451 สิ่งที่ฉันต้องการคือคำสั่งที่จะทำทุกอย่างให้ฉัน มันจะใช้สตริงอินพุตและgrepมัน (หรืออะไรก็ตาม) ในรายการของกระบวนการและจะฆ่ากระบวนการทั้งหมดในผลลัพธ์: jeremy@jeremy-desktop:~$ killbyname firefox ฉันพยายามทำมันใน PHP แต่exec('ps aux')ดูเหมือนว่าจะแสดงเฉพาะกระบวนการที่ถูกดำเนินการด้วยexec()สคริปต์ …
349 linux  bash  shell 


4
วิธีจำกัดความลึกสำหรับรายการไฟล์วนซ้ำ?
มีวิธีจำกัดความลึกของรายการไฟล์วนซ้ำใน linux หรือไม่? คำสั่งที่ฉันใช้ในขณะนี้คือ: ls -laR > dirlist.txt แต่ฉันมีประมาณ 200 ไดเรกทอรีและแต่ละอันมี 10 ไดเรกทอรี ดังนั้นมันจะใช้เวลานานเกินไปและทำให้ทรัพยากรระบบมากเกินไป สิ่งที่ฉันสนใจจริงๆคือข้อมูลความเป็นเจ้าของและการอนุญาตสำหรับไดเรกทอรีย่อยระดับแรก: drwxr-xr-x 14 root root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk drwxr--r-- 14 jon root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk/htdocs drwxr--r-- 14 jon root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk/cgi-bin drwxr-xr-x 14 root root 1234 Dec 22 13:19 …
346 linux  bash 

10
Pseudo-terminal จะไม่ถูกจัดสรรเนื่องจาก stdin ไม่ใช่เทอร์มินัล
ฉันพยายามเขียนเชลล์สคริปต์ที่สร้างบางไดเรกทอรีบนเซิร์ฟเวอร์ระยะไกลแล้วใช้ scp เพื่อคัดลอกไฟล์จากเครื่องท้องถิ่นของฉันไปยังระยะไกล นี่คือสิ่งที่ฉันมี: ssh -t user@server<<EOT DEP_ROOT='/home/matthewr/releases' datestamp=$(date +%Y%m%d%H%M%S) REL_DIR=$DEP_ROOT"/"$datestamp if [ ! -d "$DEP_ROOT" ]; then echo "creating the root directory" mkdir $DEP_ROOT fi mkdir $REL_DIR exit EOT scp ./dir1 user@server:$REL_DIR scp ./dir2 user@server:$REL_DIR เมื่อใดก็ตามที่ฉันเรียกใช้ฉันได้รับข้อความนี้: Pseudo-terminal will not be allocated because stdin is not a terminal. และสคริปต์ก็หยุดตลอดไป กุญแจสาธารณะของฉันเชื่อถือได้บนเซิร์ฟเวอร์และฉันสามารถเรียกใช้คำสั่งทั้งหมดนอกสคริปต์ได้ดี …
345 linux  bash  shell  ssh 

5
ฉันจะออกจากหน้าจอโดยไม่ต้องพิมพ์ "ออก" ได้อย่างไร
ฉันscreen -r'd เป็นเซิร์ฟเวอร์ Django ที่ทำงานและฉันไม่สามารถเพียงCtrl-Cและexitออกมาจากมัน มีวิธีอื่นในการออกจากscreenหรือไม่ ขณะนี้ฉันปิดแท็บบนพีซีในพื้นที่ของฉันและsshกลับมาใหม่ด้วยตนเอง
344 linux  gnu-screen 

9
เคล็ดลับ LD_PRELOAD คืออะไร
ฉันเจอการอ้างอิงถึงมันเมื่อเร็ว ๆ นี้ในproggitและ (ณ ตอนนี้) มันไม่ได้อธิบาย ฉันสงสัยว่ามันอาจเป็นไปได้ แต่ฉันไม่รู้แน่นอน

20
ฉันจะดูขนาดของไฟล์และไดเรกทอรีใน linux ได้อย่างไร?
ฉันจะดูขนาดของไฟล์และไดเรกทอรีใน Linux ได้อย่างไร ถ้าใช้df -mมันจะแสดงขนาดของไดเรกทอรีทั้งหมดที่ระดับบนสุด แต่สำหรับไดเรกทอรีและไฟล์ในไดเรกทอรีฉันจะตรวจสอบขนาดได้อย่างไร
341 linux  file 

23
วิธีการแปลง DOS / Windows newline (CRLF) เป็น Unix newline (LF) ใน Bash script?
ฉันจะตั้งโปรแกรมขึ้นviบรรทัดใหม่ของ DOS / Windows เป็น Unix โดยทางโปรแกรมได้อย่างไร(เช่นไม่ใช้) dos2unixและunix2dosคำสั่งที่ไม่สามารถใช้ได้ในบางระบบ ฉันจะเลียนแบบสิ่งเหล่านี้ด้วยคำสั่งเช่นsed/ awk/ ได้trอย่างไร
336 linux  windows  bash  unix  newline 

6
ฉันจะลบกฎเฉพาะออกจาก iptables ได้อย่างไร
ฉันโฮสต์บริการ HTTP และ HTTPS พิเศษบนพอร์ต 8006 และ 8007 ตามลำดับ ฉันใช้ iptables เพื่อ "เปิดใช้งาน" เซิร์ฟเวอร์ เช่นกำหนดเส้นทางพอร์ต HTTP และ HTTPS ขาเข้า: iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT iptables -A INPUT -i eth0 -p tcp --dport 443 -j ACCEPT iptables -A INPUT -i eth0 -p tcp --dport 8006 …
334 linux  firewall  iptables 

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