Unix & Linux

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

3
ในหน่วยความจำระบบ…โดยเฉพาะความแตกต่างระหว่าง `tmpfs,` `shm, 'และ' hugepages ... '
ฉันเพิ่งสงสัยเกี่ยวกับระบบไฟล์ที่ใช้หน่วยความจำเคอร์เนลลินุกซ์ต่างๆ Note:เท่าที่ฉันกังวลคำถามด้านล่างควรพิจารณาตัวเลือกมากขึ้นหรือน้อยลงเมื่อเทียบกับความเข้าใจที่ดีขึ้นของการโพสต์ในชื่อเรื่อง ฉันถามพวกเขาด้านล่างเพราะฉันเชื่อว่าการตอบคำถามพวกเขาสามารถช่วยฉันให้เข้าใจความแตกต่างได้ดีขึ้น แต่เนื่องจากความเข้าใจของฉันมี จำกัด ดังนั้นจึงเป็นไปตามที่คนอื่นอาจรู้ดีกว่า ฉันพร้อมที่จะยอมรับคำตอบใด ๆ ที่เสริมสร้างความเข้าใจในความแตกต่างระหว่างระบบไฟล์ทั้งสามที่กล่าวถึงในชื่อเรื่อง ท้ายที่สุดฉันคิดว่าฉันต้องการติดตั้งระบบไฟล์ที่ใช้งานได้hugepages,แม้ว่างานวิจัยเบา ๆ (และยังคงมีการแก้ไขเล็กน้อย) ทำให้ฉันเชื่อว่า a rewritable hugepage mountไม่ใช่ตัวเลือก ฉันเข้าใจผิด กลไกอะไรที่เล่นที่นี่? ยังเกี่ยวกับ hugepages: uname -a 3.13.3-1-MANJARO \ #1 SMP PREEMPT \ x86_64 GNU/Linux tail -n8 /proc/meminfo HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 8223772 kB DirectMap2M: 16924672 …

4
ตัวอย่างการใช้งาน xfreerdp ด้วยปลั๊กอินคลิปบอร์ด
FreeRDP 1.0.2 ได้อัปเดตไวยากรณ์ของพารามิเตอร์เพื่อ "การทำงานร่วมกันที่ดีขึ้นกับ Windows " ฉันมีปัญหาในการใช้ไวยากรณ์เก่าที่ปลั๊กอินคลิปบอร์ดใช้งานได้เฉพาะครั้งแรกที่ฉันวางและหยุดในภายหลัง: xfreerdp --plugin cliprdr -g 1920x1060 -u Administrator -p xxx n.n.n.n ดังนั้นฉันจึงตัดสินใจลองใช้ไวยากรณ์ใหม่ แต่ฉันไม่สามารถทำให้ถูกต้องได้ ดังต่อไปนี้: xfreerdp +clipboard /size:1920x1060 /u:Administrator /p:xxx /v:n.n.n.n ให้ข้อผิดพลาด: Warning xf_GetWindowProperty (140): Property 385 does not exist transport_connect: getaddrinfo (Name or service not known) Error: protocol security negotiation failure คำแนะนำใด ๆ?

4
ฉันจะเปลี่ยนเป็นโหมดแก้ไข vi ใน readline ได้อย่างไร
ฉันต้องการเปลี่ยนเป็นโหมดแก้ไข vi ในระบบ readline แต่ฉันไม่ต้องการใช้ 'set -o vi' ฉันต้องการสลับโดยใช้แป้นพิมพ์ลัดชั่วคราว M-C-jหน้าคนพูดว่าฉันสามารถทำเช่นนี้กับ แต่นั่นไม่ได้ผลสำหรับฉัน ฉันใช้ Ubuntu และ xterm ไม่สามารถทำงานภายใต้ gnome-terminal ได้เช่นกัน
16 bash  readline 

5
ฉันจะทำให้โครเมี่ยม (หยุดขอให้เป็น) เบราว์เซอร์เริ่มต้นได้อย่างไร
ฉันใช้ Linux Mint Debian edition (เป็นการทดสอบ Debian) และสภาพแวดล้อมเดสก์ทอป Cinnamon ทุกครั้งที่ฉันเรียกใช้google-chromeมันจะขอให้เป็นเบราว์เซอร์เริ่มต้น ฉันได้บอกให้ทำทุกอย่างที่ฉันสามารถคิดได้ แต่ฉันยังคงได้รับป๊อปอัพนี้: สิ่งที่ฉันได้ลอง: คลิกที่ "Set as default" ในป๊อปอัพ ทำให้ chrome เป็นค่าเริ่มต้นในการตั้งค่า: การใช้แอปการตั้งค่า (ซินนามอน) ของสภาพแวดล้อมเดสก์ทอปของฉันเพื่อตั้งเป็นค่าเริ่มต้น: เชื่อมโยงกับ mimetypes ที่เกี่ยวข้องทั้งหมดในวิธีและไฟล์ต่าง ๆ ที่มีการกำหนดสิ่งต่าง ๆ : $ xdg-mime query default text/html chrome.desktop $ grep chrome .local/share/applications/mimeapps.list text/html=chrome.desktop x-scheme-handler/http=chrome.desktop x-scheme-handler/https=chrome.desktop x-scheme-handler/about=google-chrome.desktop x-scheme-handler/about=google-chrome.desktop; text/html=emacs.desktop;google-chrome.desktop;firefox.desktop; x-scheme-handler/http=chrome.desktop; $ grep …

3
ไฮไลต์การค้นหาโหมดการคัดลอก tmux
มีวิธีใดที่จะเน้นข้อความค้นหาในโหมดคัดลอก tmux หรือไม่? ด้านล่างเป็น tmux config ของฉัน: # remap prefix to Control + a set -g prefix C-a unbind C-b bind C-a send-prefix bind a send-prefix # force a reload of the config file unbind r bind r source-file ~/.tmux.conf # set window start from 1 set -g base-index 1 …
16 tmux  colors 

5
การใช้รายการชื่อไฟล์ที่สร้างขึ้นเป็นรายการอาร์กิวเมนต์ - พร้อมช่องว่าง
findฉันพยายามที่จะเรียกใช้สคริปต์กับรายการของชื่อไฟล์ที่เก็บรวบรวมโดย ไม่มีอะไรพิเศษเพียง someting เช่นนี้: $ myscript `find . -name something.txt` ปัญหาคือชื่อพา ธ บางส่วนมีช่องว่างดังนั้นพวกเขาจึงแยกออกเป็นชื่อที่ไม่ถูกต้องสองชื่อในการขยายอาร์กิวเมนต์ ปกติฉันจะล้อมรอบชื่อด้วยเครื่องหมายคำพูด แต่ที่นี่พวกเขาแทรกโดยการขยาย backquote ฉันพยายามกรองเอาท์พุทของfindและรอบ ๆ ชื่อไฟล์แต่ละรายการด้วยเครื่องหมายคำพูด แต่เมื่อถึงเวลาที่เห็นพวกเขามันสายเกินไปที่จะดึงออกมาและพวกเขาจะถือว่าเป็นส่วนหนึ่งของชื่อไฟล์: $ myscript `find . -name something.txt | sed 's/.*/"&"/'` No such file or directory: '"./somedir/something.txt"' ใช่นั่นเป็นกฎสำหรับวิธีการประมวลผลบรรทัดคำสั่ง แต่ฉันจะแก้ไขได้อย่างไร นี่เป็นเรื่องที่น่าอาย แต่ฉันไม่สามารถหาวิธีที่เหมาะสมได้ ในที่สุดฉันก็รู้ว่าจะทำอย่างไรกับxargs -0 -n 10000... แต่มันเป็นแฮ็คที่น่าเกลียดที่ฉันยังต้องการถาม: ฉันจะอ้างถึงผลลัพธ์ของการขยาย backquote หรือบรรลุผลแบบเดียวกันได้อย่างไร? แก้ไข:ฉันสับสนเกี่ยวกับความจริงที่ว่าxargs ไม่เก็บขัดแย้งทั้งหมดเป็นรายการอาร์กิวเมนต์เดียวเว้นแต่จะบอกเป็นอย่างอื่นหรือข้อ จำกัด …

2
แบบสอบถาม MySQL ของฉันจะยังคงทำงานต่อไปแม้ว่าการเชื่อมต่อ ssh ของฉันจะลดลง?
ฉันเชื่อมต่อกับเซิร์ฟเวอร์ผ่าน SSH และลงชื่อเข้าใช้ mysql และขอให้เรียกใช้แบบสอบถาม (ผลลัพธ์ที่ถูกทิ้งลงใน CSV) ซึ่งอาจใช้เวลานานกว่าหนึ่งชั่วโมง แม้ว่าฉันจะสั่งให้ไคลเอนต์ของฉันส่งแพ็กเก็ตว่างทุก ๆ 60 วินาทีเพื่อให้เซสชันยังคงใช้งานอยู่ฉันยังคงหวาดระแวงที่แบบสอบถาม / กระบวนการ mysql สามารถยุติได้ดังนั้นคำถามของฉันคือ: เซสชั่น ssh ที่ถูกยกเลิก (เนื่องจากไม่มีการใช้งาน) จะฆ่าโพรเซส mysql หรือไม่? ฉันจะมั่นใจได้อย่างไรว่าสิ่งนี้จะไม่เกิดขึ้น - แพ็คเก็ต null จะส่งทุก ๆ 60 วินาทีเพียงพอหรือไม่
16 ssh  mysql 

2
จะเกิดอะไรขึ้นถ้าฉันใช้ vi กับไฟล์ขนาดใหญ่
แม้ว่าเราจะไม่ได้รับคำสั่ง แต่เพื่อนร่วมงานของฉันใช้ vi เพื่อดูไฟล์ข้อความขนาดใหญ่ (server.log 3.5 GB) สิ่งนี้เต็มไปด้วย / var / tmp และก่อให้เกิดปัญหาบางอย่างบนเซิร์ฟเวอร์ อะไรทำให้เกิดสิ่งนี้ ทำไมเราไม่ควรใช้ vi สำหรับไฟล์ขนาดใหญ่?
16 vim  vi 

2
ไม่สามารถขยายเครื่องหมายดอกจันโดยไม่ได้รับอนุญาต
บางคนสามารถอธิบายต่อไปนี้ให้ฉันได้หรือไม่ $ ls -ld /temp/sit/build/ dr-xr-s--- 3 asdf qwer 4096 Jan 31 2012 /temp/sit/build/ $ ls -ld /temp/sit/build/* ls: /temp/sit/build/*: Permission denied เห็นได้ชัดว่าฉันไม่สามารถใช้เครื่องหมายดอกจันที่นี่ ฉันลองด้วยคำสั่ง sudo และฉันได้รับข้อผิดพลาด "ไม่มีไฟล์ดังกล่าว" แทนที่จะ "ปฏิเสธสิทธิ์" ... sudo ls -l /temp/sit/build/* ls: /temp/sit/build/batch*: No such file or directory แต่ในที่สุดก็ใช้งานได้หากฉันไม่ได้ใช้ * sudo ls -l /temp/sit/build/ total 4 dr-xr-s--- …

2
การเปลี่ยนเส้นทางกับ> | ทำ?
เมื่อใดที่คุณควรใช้>|เพื่อเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์แทนที่จะเป็นเพียง>? คำอธิบายที่ให้ไว้เมื่อฉันแสดงนี้คือมันรับประกันว่าไฟล์เป้าหมายจะถูกตัดทอนก่อน แต่ฉันคิดว่า>โดยนัยแล้ว เป็น>|ประโยชน์หรือไม่

4
Bash: พรอมต์ระยะไกลแบบโต้ตอบ
ฉันมีสคริปต์ที่เชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลและตรวจสอบว่ามีการติดตั้งแพคเกจ: ssh root@server 'bash -s' < myscript.sh myscript.sh: OUT=`rpm -qa | grep ntpdate` if [ "$OUT" != "" ] ; then echo "ntpdate already installed" else yum install $1 fi ตัวอย่างนี้สามารถทำให้ง่ายขึ้น นี่คือmyscript2.shสิ่งที่มีปัญหาเดียวกัน: read -p "Package is not installed. Do you want to install it (y/n)?" choise ปัญหาของฉันคือทุบตีไม่สามารถอ่านคำตอบของฉันแบบโต้ตอบ มีวิธีดำเนินการสคริปต์ท้องถิ่นจากระยะไกลโดยไม่สูญเสียความสามารถในการแจ้งผู้ใช้หรือไม่
16 bash  shell-script  ssh  stdin  read 

2
พิมพ์บรรทัดระหว่าง (และรวมถึง) สองรูปแบบ
ฉันต้องการเริ่ม grepping จากบรรทัดที่มีCKที่ส่วนท้ายของบรรทัดและหยุดการ grepping เมื่อบรรทัดมีDที่สิ้นสุด ฉันพยายามgrep "$CK" "$D" file..txtแต่มันใช้งานไม่ได้ การป้อนข้อมูล: kkkkkkkkkkk jjjjjjjjjjjjjjjjjj gggggggggggg/CK JHGHHHHHHHH HJKHKKLKLLL JNBHBHJKJJLKKL JLKKKLLKJLKJ/D GGGGGGGGGGGGGG GGGGGGGGGGGGGG ผลลัพธ์ที่ต้องการ: gggggggggggg/CK JHGHHHHHHHH HJKHKKLKLLL JNBHBHJKJJLKKL JLKKKLLKJLKJ/D

1
ping zero ทำงานอย่างไร
ใครสามารถอธิบายวิธีการที่ไม่งานและมันแปลให้ping 0127.0.0.1 [champu@testsrv ]$ ping 0 PING 0 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.039 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.013 ms --- 0 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1000ms rtt min/avg/max/mdev = 0.013/0.026/0.039/0.013 ms
16 linux  networking 

5
มีอัลกอริทึมในการตัดสินใจว่า symlink วนซ้ำหรือไม่
ระบบ Unix มักจะผิดพลาดหากพวกเขาเผชิญกับเส้นทางที่มีการวนรอบ symlink หรือเพียงแค่ symlink มากเกินไปเพราะพวกเขามีข้อ จำกัด จำนวน symlink พวกเขาจะเข้าไปสำรวจในเส้นทางเดียว แต่มีวิธีการตัดสินใจจริง ๆ ว่าเส้นทางที่กำหนดให้แก้ไขบางสิ่งบางอย่างหรือมีการวนรอบแม้ว่ามันจะมีการเชื่อมโยงมากขึ้นกว่า Unix ยินดีที่จะปฏิบัติตาม? หรือนี่เป็นปัญหาที่ไม่สามารถตัดสินใจได้อย่างเป็นทางการ? และหากสามารถตัดสินใจได้จะสามารถตัดสินใจได้ในเวลา / หน่วยความจำที่สมเหตุสมผล (เช่นโดยไม่ต้องไปที่ไฟล์ทั้งหมดในระบบไฟล์)? ตัวอย่างบางส่วน: a/b/c/d where a/b is a symlink to ../e and e is a symlink to f and f is a symlink to a/b a/b/c/d where a/b/c is a symlink …

3
กรองไฟล์. CSV ตามค่าคอลัมน์ที่ 5 ของไฟล์และพิมพ์บันทึกเหล่านั้นลงในไฟล์ใหม่
ฉันมีไฟล์. CSV ซึ่งมีรูปแบบด้านล่าง: "column 1","column 2","column 3","column 4","column 5","column 6","column 7","column 8","column 9","column 10 "12310","42324564756","a simple string with a , comma","string with or, without commas","string 1","USD","12","70%","08/01/2013","" "23455","12312255564","string, with, multiple, commas","string with or, without commas","string 2","USD","433","70%","07/15/2013","" "23525","74535243123","string , with commas, and - hypens and: semicolans","string with or, without commas","string 1","CAND","744","70%","05/06/2013","" "46476","15467534544","lengthy …
16 linux  sed  awk  csv  filter 

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