Unix & Linux

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

2
“ $ {- # * i}”! =“ $ -” หมายถึงอะไร
ใน/etc/profileฉันเห็นสิ่งนี้: for i in /etc/profile.d/*.sh ; do if [ -r "$i" ]; then if [ "${-#*i}" != "$-" ]; then . "$i" else . "$i" >/dev/null 2>&1 fi fi done อะไร${-#*i}หมายถึง ${-ฉันไม่สามารถหาคำนิยามของการขยายตัวพารามิเตอร์เริ่มต้น

3
จำกัด การเชื่อมต่อสูงสุดต่อที่อยู่ IP และการเชื่อมต่อใหม่ต่อวินาทีด้วย iptables
เรามีเซิร์ฟเวอร์ Ubuntu 12.04 ที่มี httpd บนพอร์ต 80 และเราต้องการ จำกัด : การเชื่อมต่อสูงสุดต่อที่อยู่ IP ไปยัง httpd ถึง 10 การเชื่อมต่อใหม่สูงสุดต่อวินาทีถึง httpd ถึง 150 เราจะทำสิ่งนี้กับ iptables ได้อย่างไร
37 iptables  limit 

4
วิธีที่ง่ายที่สุดในการคอมเมนต์ / uncomment บางบรรทัดโดยใช้บรรทัดคำสั่ง
มีวิธีการแสดงความคิดเห็น / uncomment สคริปต์ shell / config / ruby ​​โดยใช้บรรทัดคำสั่งหรือไม่ ตัวอย่างเช่น: $ comment 14-18 bla.conf $ uncomment 14-18 bla.conf นี้จะเพิ่มหรือลบ#ป้ายbla.confบนเส้นไป14 18ปกติฉันจะใช้sedแต่ฉันต้องรู้เนื้อหาของบรรทัดเหล่านั้นแล้วทำการค้นหาแทนที่และนั่นจะให้ผลลัพธ์ที่ผิดเมื่อมีเข็มมากกว่าหนึ่งเข็ม (และเราต้องการแทนที่ N-th เท่านั้น หนึ่ง).

4
tar จริง ๆ บีบอัดไฟล์หรือเพียงแค่รวมกลุ่มเข้าด้วยกันหรือไม่?
ฉันมักจะสันนิษฐานว่าtarเป็นโปรแกรมบีบอัดข้อมูล แต่ฉันไม่แน่ใจว่าจริง ๆ แล้วบีบอัดไฟล์หรือเป็นเหมือนไฟล์ ISO ไฟล์เก็บไฟล์หรือไม่
37 tar  compression 

9
มีคำสั่ง unix ที่ให้จำนวนขั้นต่ำ / สูงสุดของสองตัวเลข?
stdinผมกำลังมองหาคำสั่งไปยังหมายเลขวงเงินอ่านในจาก ฉันเขียนสคริปต์เล็กน้อยเพื่อจุดประสงค์นั้น (ยินดีต้อนรับคำติชม) แต่ฉันสงสัยว่าถ้าไม่มีคำสั่งมาตรฐานสำหรับเรื่องนี้ง่ายและ (ฉันคิดว่า) กรณีการใช้งานทั่วไป สคริปต์ของฉันซึ่งค้นหาอย่างน้อยสองตัวเลข: #!/bin/bash # $1 limit [ -z "$1" ] && { echo "Needs a limit as first argument." >&2; exit 1; } read number if [ "$number" -gt "$1" ]; then echo "$1" else echo "$number" fi

3
สร้างไฟล์ในโฟลเดอร์: ปฏิเสธสิทธิ์
ฉันมีปัญหาในการคัดลอกไฟล์ไปยังไดเรกทอรีบน Ubuntu 12.04 ฉันสร้างไดเรกทอรีในโฮมไดเรกทอรีเพื่อให้เส้นทางที่ฉันต้องการคัดลอกคือ: /home/sixven/camp_sms/inputs แต่เมื่อ ini รันคำสั่งต่อไปนี้ใน terminal เพื่อสร้างไฟล์ตัวอย่างดังนี้ francisco-vergara@Francisco-Vergara:/home/sixven/camp_sms/inputs$ touch test_file.txt touch: can not make `touch' on «test_file.txt»: permission denied ฉันไม่สามารถคัดลอกไฟล์โดยตรงในไดเรกทอรีนั้น ฉันจะกำหนดสิทธิ์ด้วยคำสั่งchown& chmodเพื่อคัดลอกไฟล์ได้อย่างไร ฉันไม่ทราบว่าจะใช้ผู้ใช้และกลุ่มใด
37 chmod  chown 

2
ทำไมรหัสผ่านแบบสุ่มนี้ถูกตั้งค่าสถานะว่ามันง่ายเกินไป / เป็นระบบ?
สตริงสุ่มM1uG*xgRCthKWwjIjWc*010iSthY9bucถูกตรวจพบว่าง่ายเกินไป / เป็นระบบสำหรับรหัสผ่านตามpasswdและcracklib-checkอย่างไร ลองใช้กับเครื่องของคุณแล้วดู echo "M1uG*xgRCthKWwjIjWc*010iSthY9buc" | cracklib-check โปรดทราบว่านี่ไม่ใช่รหัสผ่านของฉัน แต่สตริงอื่นที่สร้างแบบสุ่มจากตัวสร้างรหัสผ่านแบบสุ่มเดียวกันที่สร้างผลลัพธ์เดียวกัน

3
chmod + โหมดเงียบ + วิธีบังคับให้ออกรหัส 0 แม้มีข้อผิดพลาด
มันเป็นไปได้รัน chmod และละเว้นข้อผิดพลาดจากคำสั่ง ตัวอย่าง (หมายเหตุ file.txt ไม่แสดงเพื่อแสดงตัวอย่าง) เมื่อฉันพิมพ์ chmod 777 file.txt ฉันได้รับข้อผิดพลาดในผลลัพธ์ chmod: cannot access file.txt : no such file or directory ดังนั้นฉันจึงเพิ่มแฟล็ก -f ลงในคำสั่งดังต่อไปนี้: (file.txt ไม่มีอยู่เพื่อแสดงเคส) chmod -f 777 file.txt echo $? 1 แต่จากตัวอย่าง chmod ส่งคืน 1 โปรดแนะนำวิธีการบังคับให้คำสั่ง chmod ให้รหัสทางออก 0 ทั้งๆที่มีข้อผิดพลาด

2
วิธีการกลับจาก“ การทดสอบ” ถึง“ เสถียร” - การลดระดับเคอร์เนล
ตอนนี้ฉันสนุกมากapt-get- และสิ่งที่แย่คือมันเป็นความผิดของฉันเอง ฉันได้เปิดใช้งานtestingแพคเกจใน/etc/apt/sources.listการติดตั้งแพคเกจบางอย่าง apt-get dist-upgradeและผมบอกทำระบบของฉัน ทุกอย่างทำงานได้ดี แต่ตอนนี้ฉันกำลังพยายามกลับไปstableปรับปรุง - และฉันล้มเหลว ... เมื่อพยายามที่จะทำapt-get dist-upgradeฉันได้รับข้อมูลต่อไปนี้: The following packages will be REMOVED: linux-image-3.10-3-amd64 The following NEW packages will be installed: libcgi-fast-perl libfcgi-perl libyaml-syck-perl The following packages will be DOWNGRADED: initramfs-tools libdate-manip-perl munin munin-common ก็ไม่เป็นไร แต่เมื่อฉันพยายามทำสิ่งนี้ฉันได้รับคำเตือนด้วยตัวอักษรสีแดงที่เป็นมิตร: You are running a kernel (version 3.10-3-amd64) and attempting …
37 debian  kernel 

2
Bash มีคุณสมบัติที่คล้ายกันเช่นการบันทึกอัตโนมัติและการเน้นของปลาหรือไม่?
ฉันเพิ่งสังเกตเห็น 2 คุณสมบัติในปลาและสงสัยว่าใครรู้ว่าสิ่งเหล่านี้ยังมีอยู่ใน Bash? การเน้นไวยากรณ์ ข้อมูลจำเพาะ: คุณจะสังเกตเห็นได้อย่างรวดเร็วว่าปลาทำการเน้นไวยากรณ์ขณะที่คุณพิมพ์ คำสั่งที่ไม่ถูกต้องจะมีสีแดงตามค่าเริ่มต้น: คำสั่งอาจไม่ถูกต้องเนื่องจากไม่มีอยู่หรืออ้างถึงไฟล์ที่คุณไม่สามารถดำเนินการได้ เมื่อคำสั่งใช้ได้ถูกต้องคำสั่งนั้นจะปรากฏเป็นสีอื่น fish จะขีดเส้นใต้พา ธ ไฟล์ที่ถูกต้องขณะที่คุณพิมพ์ สิ่งนี้บอกคุณว่ามีไฟล์ที่ขึ้นต้นด้วย 'somefi' ซึ่งเป็นข้อเสนอแนะที่มีประโยชน์เมื่อคุณพิมพ์ แนะนำอัตโนมัติ ข้อมูลจำเพาะ: fish แนะนำคำสั่งในขณะที่คุณพิมพ์และแสดงคำแนะนำทางด้านขวาของเคอร์เซอร์เป็นสีเทา มันรู้เส้นทางและตัวเลือก หากต้องการยอมรับคำแนะนำอัตโนมัติให้กดลูกศรขวาหรือ Control-F หากการบันทึกอัตโนมัติไม่ใช่สิ่งที่คุณต้องการเพียงแค่เพิกเฉย
37 bash  shell  fish 

2
`env <command>` กำลังทำอะไรอยู่
คำสั่งenv ls -alกำลังทำอะไร ฉันมีการทดสอบลินุกซ์และมีคำถาม: "วิธีเรียกใช้คำสั่งโดยตรง แต่ไม่ใช่นามแฝง?" ฉันรู้ว่ามีวิธีแก้ปัญหาเช่นคำสั่ง prefixing พร้อมสัญลักษณ์พิเศษบางอย่าง แต่ฉันลืมไป \ตอนนี้ผมรู้ว่ามันเป็น (อ่านจากโพสต์นี้ ) แต่ฉันยังจำได้ว่ามีบางแห่งที่ฉันอ่านเพื่อกำจัดนามแฝงเราสามารถใช้คำสั่งenvล่วงหน้าได้ ฉันทำมันและดูเหมือนว่าใช้งานได้ แต่คำตอบของฉันมีคุณสมบัติผิด ผมอ่านinfoและmanบนenvแต่ไม่ได้เข้าใจมากเกินไป กำลังenvทำอะไรอยู่และenv &lt;command&gt;โดยไม่มีข้อโต้แย้งสำหรับenvตัวเอง?

3
gnome-terminal: ติดตามไดเรกทอรีในแท็บใหม่
ฉัน Arch $HOMEลินุกซ์และเมื่อฉันเปิดอาคารผู้โดยสารแห่งใหม่แท็บก็มักจะไป ฉันจะสร้างมันได้อย่างไรเมื่อฉันเปิดแท็บใหม่มันจะเปิดเชลล์ในไดเรกทอรีที่ฉันอยู่ก่อนหน้านี้

3
วิธีปิดการใช้งาน USB autosuspend บนเคอร์เนล 3.7.10 ขึ้นไป?
ผมได้ปรับปรุง HTPC ของฉันจากเคอร์เนล3.7.10เพื่อ3.10.7และดูเหมือนว่าCONFIG_USB_SUSPENDตอนนี้หายไปจากตัวเลือกเคอร์เนลและรวมอยู่ใน PM ปัญหาหลักที่ฉันพบคือฉันมี HDD ภายนอกและเมื่อหยุดชั่วคราวและตื่นขึ้นมา HTPC ระบบจะไม่พร้อมใช้งาน HDD ตื่นขึ้นมา (คุณสามารถได้ยินเสียงหมุนอีกครั้ง) แต่เมื่อคุณพยายามเข้าถึงจุดเชื่อมต่อคุณจะได้รับข้อผิดพลาดดังต่อไปนี้: ZOTAC ~ # ls /media ls: reading directory /media: Input/output error และใน dmesg: [ 253.278260] EXT4-fs warning (device sdb1): __ext4_read_dirblock:908: error reading directory block (ino 2, block 0) ในเมล็ดก่อนหน้าการตั้งค่า CONFIG_USB_SUSPEND = N จะแก้ปัญหาได้เนื่องจาก HDD จะจัดการการจำศีลด้วยตัวเองและจุดเชื่อมต่อจะสามารถเข้าถึงได้เสมอ เมื่อ HDD …

2
อะไรคือความแตกต่างระหว่าง“ all”,“ default” และ“ eth *” ใน / proc / sys / net / ipv [46] / conf /?
ใน sysctl ที่/proc/sys/net/ipv[46]/conf/คีย์มีคีย์ย่อยต่อไปนี้: all, defaultและที่สำคัญสำหรับการเชื่อมต่อเครือข่ายแต่ละ ตัวอย่างเช่นบนเครื่องที่มีเน็ตเวิร์กอินเตอร์เฟสเดียว eth0 มันจะมีลักษณะดังนี้: iserv ~ # ll /proc/sys/net/ipv[46]/conf/ /proc/sys/net/ipv4/conf/: insgesamt 0 dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/ dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/ dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/ dr-xr-xr-x 0 root root 0 12. Sep …
37 linux  proc  ipv6  sysctl 

4
เปลี่ยนการอนุญาตสำหรับลิงก์สัญลักษณ์
ฉันมี symlink ด้วยสิทธิ์เหล่านี้: lrwxrwxrwx 1 myuser myuser 38 Aug 18 00:36 npm -&gt; ../lib/node_modules/npm/bin/npm-cli.js* symlink ตั้งอยู่ในไฟล์. tar.gz ตอนนี้เมื่อฉันคลายไฟล์เก็บถาวร tar.gz โดยใช้ maven symlink จะใช้ไม่ได้อีกต่อไป ฉันจึงพยายามสร้าง symlink ขึ้นใหม่ ก่อนอื่นฉันจะสร้าง symlink โดยใช้lnแต่ฉันจะตั้งค่าการอนุญาตเหมือนกับ symlink ดั้งเดิมได้อย่างไร?
37 symlink  chmod 

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