Skip to main content

Posts

Showing posts from March, 2014

Từ information đến skill

4h sáng, tự dưng thèm 1 bát mì tôm trứng, cực kỳ! Nhưng nhà không tàng trữ thứ đồ ăn độc hại ấy. Đành ôm bụng đói và sáng  dậy quyết định sẽ làm 1 bát phở bò :v Theo ngài Sherlock Holmes, người ta thông minh nhất khi bụng đói, cũng là lúc mà người ta hay nói nhảm nhất :3 (thật ra câu này đọc trong Conan, thằng Conan bảo Sherlock Holmes nói thế mà mình google mãi không ra) Từ khóa: - information: thông tin - skill: kỹ năng - knowledge: kiến thức Làm cách nào để biến 1 đống information thành 1 skill? Để trở thành 1 skill, cần - hoặc phải hiểu nó - hoặc phải quen tay với nó. Nếu chỉ hiểu thôi, rồi người ta sẽ quên nó (theo thời gian và không gian), và cuối cùng thì vẫn phải quen tay thì mới biến nó thành skill được.

[VM] Từ VirtualBox đến docker

Bài này không trình bày dài dòng về các công nghệ ảo hóa. Bài này là một dạng nhật ký về hành trình sử dụng những công nghệ ảo hóa trên chính chiếc laptop của mình. Cuộc hành trình bắt đầu ngày xửa ngày xưa... khi mà thế giới loài người văn minh mới chỉ có Windows, một ngày nọ, chàng trai xứ sở hoa ban quyết mang Linux lạc hậu đến thế giới hiện đại này. Có lẽ là trước đó, nhưng bộ nhớ giới hạn chỉ có thể nhớ đến đây.VirtualBox là phần mềm ảo hóa đầu tiên mình sử dụng để chạy Ubuntu. 1. VirtualBox Cũng không nhớ nổi lý do vì sao mình chỉ dùng VirtualBox mà chưa 1 lần cài VMWare vào máy. Trải nghiệm với VirtualBox khá dễ chịu, bởi ngày ấy mình vẫn còn là 1 cute user của Windows. Và quá trình tập tành cài đặt Ubuntu cũng được thực hiện ở đây. VirtualBox là một giải pháp ảo hóa hóa phần cứng. VirtualBox chạy cả trên Windows, Linux và Mac. Nhờ VirtualBox, người dùng có thể chạy các hệ điều hành khác ngay trên hệ điều hành mình đang dùng. Đặt 1 chân sang thế giới khác! Nhưng hãy...

[bash] Script tạo user trên Linux OS-based

Script này cần 2 arguments, 1 là username, 2 là password (loại password đơn giản, không hỗ trợ các password cần escape ký tự đặc biệt) và chạy với quyền root. https://github.com/hvnsweeting/tinyscripts/blob/master/chuser.sh Tested on $ bash --version | grep bash ; uname -r GNU bash, version 4.2.45(2)-release (x86_64-unknown-linux-gnu) 3.13.5-1-ARCH

Một số lệnh liên quan đến card sound trên Linux

Cơ bản là tự dưng 1 hôm loa không hát nữa, sửa mãi nó không khỏi. Nay đã sửa xong, viết hồi ký. Mỗi lần sửa chữa này mất rất nhiều thời gian và học được không ít điều mới. Bài viết thực hiện trên: # uname -r  3.13.5-1-ARCH ALSA (Advanced Linux Sound Architecture) là một thành phần của Linux Kernel cung cấp driver cho các card sound. PulseAudio là một "sound server". Máy tớ không dùng pulseaudio. (máy cài Ubuntu 12.04 mặc định là có dùng PulseAudio) 0. alsamixer Dùng câu lệnh alsamixer để mở bảng "mixer" và chỉnh âm (các loại volume). 1. aplay $ whatis aplay aplay (1)            - command-line sound recorder and player for ALSA soundcard driver    $ aplay -l  # List all soundcards and digital audio devices **** List of PLAYBACK Hardware Devices **** card 0: MID [HDA Intel MID], device 0: ALC269VB Analog [ALC269VB Analog]   Subdevices: 0/1   Subdevice #0: subdevice #0 c...

[bash] Brace expansion

$ for i in {1..11}; do echo hostxxx-$i; done                                                                hostxxx-1 hostxxx-2 hostxxx-3 hostxxx-4 hostxxx-5 hostxxx-6 hostxxx-7 hostxxx-8 hostxxx-9 hostxxx-10 hostxxx-11 $ for i in {01..11}; do echo hostxxx-$i; done                                                              hostxxx-01 hostxxx-02 hostxxx-03 hostxxx-04 hostxxx-0...

awk và cut

Các tiện ích UNIX (UNIX utilities) thường nhận đầu vào là text, và output ra cũng là text. Để các chương trình nối lại được với nhau, tức dùng output của chương trình này làm imput cho chương trình kia, người ta sử dụng pipeline (" | "). Cũng vì điều nói trên, mà việc bóc tách dữ liệu từ output của 1 chương trình là cần thiết, bởi 1 chương trình có thể sinh ra nhiều dòng text, trong khi bạn chỉ cần 1 dữ liệu nào đó trong đống text đấy. Bạn có thể copy bằng tay, nhưng bạn sẽ không muốn làm như thế nếu phải làm 1000 lần, okay? 2 trong số nhiều công cụ phục vụ mục đích trên là "cut" và "awk", mục đích chính (được dùng nhiều nhất) là dùng để cắt theo cột. Các ví dụ sau sẽ minh họa tính năng của cut và awk $ echo "one/two/three" | cut -d'/' -f1 one $ echo "one/two/three" | cut -d'/' -f2 two $ echo "one/two/three" | cut -d'/' -f3 three $ echo "one/two/three" | cut -d'/' -f2- t...

Lấy External IP

Để lấy public IP của máy mình hiện tại, dùng lệnh: $ dig +short myip.opendns.com @resolver1.opendns.com 113.190.182.179 Ngoài ra còn vài cách khác, có thể kể đến $ curl icanhazip.com 113.190.182.179 source: https://coderwall.com/p/lyrjsq?utm_campaign=weekly_digest&utm_content=Privately+receive+personally+curated&utm_medium=email Hết!

List các địa chỉ mà máy mình đang connect tới

Nhân dịp rỗi việc, tự dưng thấy mạng chậm nghĩ máy mình bị hack, đành phải kiểm tra. Dưới đây là 1 đoạn command trông khá tởm, sẽ sớm chuyển thành 1 script để mọi người tiện dùng. Tác dụng là lấy top những  địa chỉ domain mà máy mình đang connect tới. sử dụng câu lệnh ss -a để liệt kê các kết nối máy mình đang thực hiện $ for i in `ss -a | grep -v 'Peer' | grep -v '*' | tr -s ' ' | cut -d' ' -f5- | sort | uniq -c| sort -nr| head | tr -s ' ' | cut -d' ' -f3 | cut -d ':' -f1 `; do echo "$i: $(dig -x $i +short)"; done 54.221.234.83: ec2-54-221-234-83.compute-1.amazonaws.com. 23.62.109.199: a23-62-109-199.deploy.static.akamaitechnologies.com. 31.13.68.33: edge-star-shv-03-hkg1.facebook.com. 198.252.206.25: stackoverflow.com. 173.252.102.241: channelproxy-shv-06-ash2.facebook.com. 108.160.163.108: snt-re4-8d.sjc.dropbox.com. Mình viết khá là thô thiển nên mời mọi người tung ra các phiên bản ngắn hơn của các câu...

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG