New FAMILUG

Thursday, 24 April 2014

100.000 lượt view

Vậy là thấm thóat cũng đã 4 năm trôi qua kể từ FAMILUG thành lập (bài viết đầu tiên vào tháng 5 năm 2010). Bao nhiêu thăng trầm, bao nhiêu vui buồn, bao nhiêu nỗ lực, bao nhiêu kỷ niệm, tất cả đã ở lại đằng sau để thời gian đưa chúng ta về phía trước, FAMILUG đã đạt mốc view KINH KHỦNG 100.000 lượt view. Thật ra, chúng ta muốn chào mừng việc đã vượt qua mốc 99.999 :3

Bấm vào đây để đọc lại bản nghị quyết thành lập cho vui :3


Từ một nhóm sinh viên ngơ ngác tập dùng Ubuntu từ bản 10.04, giờ đây các thành viên đã trở thành các hacker mũ hồng, các lập trình viên, chuyên viên công nghệ ngổ ngáo. FAMILUG chẳng giúp gì được cho mọi người, nó cũng chỉ là cái cớ để làm 1chầu bia, để là chỗ đôi lúc ai muốn xả gì thì chui vào. Nhưng đâu phải ai cũng nhận ra, con người ta, ĐÔI KHI chỉ cần những điều đơn giản như thế.

Nhờ chính sự F5 ko mệt mỏi của các bạn mà FAMILUG đã đạt được thành công như ngày hôm nay. Vậy nên để chào mừng sự kiện này và để thu tiền đóng domain cho năm tới, tôi xin công bố buổi tiệc liên hoan chúc mừng FAMILUG sẽ tổ chức vào 1 ngày không xa.

Cảm ơn vì đã nghe nói nhảm :))

Tuesday, 22 April 2014

[CLI] fdisk và cfdisk

Hai công cụ chức năng tương đối giống nhau và cùng dùng để chỉnh sửa partition table.

Định nghĩa:

hvn@archhvn: ~ () $ whatis fdisk
fdisk (8)            - manipulate disk partition table
hvn@archhvn: ~ () $ whatis cfdisk
cfdisk (8)           - display or manipulate disk partition table

bình thường thì chả ai đi format hay xem partition table cả, vậy nên trừ khi bạn làm việc này thường xuyên (nghĩa là - bạn thường xuyên phải format ổ cứng, hoặc bạn là 1 sysadmin) thì bạn mới động đến các câu lệnh này.

cfdisk thì có giao diện curses-based
fdisk thì dùng giao diện CLI tương tác  (fdisk  is  a  dialog-driven program), nó đưa ra câu hỏi, bạn đưa ra câu trả lời.

Cả 2 đều dễ dùng và trực quan.

Một điểm khác biệt đáng chú ý là:

[python] Tính ngày

Đề bài: tính xem có bao nhiều ngày từ ngày X/Y/Z đến ngày x/y/z

Bài làm:

In [1]: import datetime
 
In [8]: datetime.datetime(2014, 12, 31) - datetime.datetime(2014,1,1)
Out[8]: datetime.timedelta(364)

In [9]: datetime.datetime(2014, 1, 2) - datetime.datetime(2014,1,1)
Out[9]: datetime.timedelta(1)

Saturday, 19 April 2014

Cổ tích

hãy cho đi khi còn có thể,
bởi đến một lúc nào đó, khi mọi thứ trở nên thừa thãi, cho đi chẳng còn ý nghĩa gì.

Lòng tốt không bao giờ được đền đáp xứng đáng, thế nên, những câu chuyện cổ tích luôn có đoạn kết có hậu! Khi quyết định làm việc tốt, hãy chấp nhận điều này.

Cho một buổi sáng thứ 7 không yên bình...

Thursday, 17 April 2014

Vài chú ý khi viết file cron/crontab

1. nên dùng absolute path của các file executable, ví dụ:

thay vì viết

rm XYZ

hãy viết

/usr/bin/rm XYZ

để lấy absolute path, dùng lệnh:

$ which rm
/usr/bin/rm

bận

là có thể không thực sự bận như thế nhưng bạn vẫn cảm thấy như thế.

Cuộc đời ít ra vẫn công bằng ở chỗ mỗi ngày cho người ta 24h, không hơn, không kém. Và nếu như bạn giành quá nhiều , hay không quá nhiều trong số vốn ấy để làm những việc mình không thấy thoải mái, thì rồi bạn sẽ thấy mệt mỏi.

Nếu bạn đi làm ở công sở 8h/ ngày + ngủ 7h /ngày = 15h
bạn còn 24 - 15 = 9 tiếng - (ăn tối, tắm giặt, ! tè) = 7 tiếng, rồi - thời gian tham giao thông 1-2 tiếng, vậy bạn cò tầm 5 tiếng free mỗi ngày (ở đây thừa nhận bạn là 1 người sống theo nếp sống phổ biến).

Bạn làm gì trong 5 tiếng ấy?
(thường nó sẽ rơi vào buổi tối nếu bạn làm 8 tiếng ban ngày).


Thursday, 10 April 2014

[cmd] rev

$ whatis rev
rev (1)              - reverse lines of a file or files

$ echo familug | rev
gulimaf

Một bài toán có sử dụng rev như 1 thành phần quan trọng trong 1thuật toán thông minh:

Yêu cầu: lấy tất cả những phần sau dấu / sau cùng

/etc/pacman.d/gnupg/gpg.conf
/etc/pacman.d/gnupg/pubring.gpg~
/etc/pacman.d/gnupg/secring.gpg
/etc/pacman.d/mirrorlist.pacnew