Hiển thị các bài đăng có nhãn Linux. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Linux. Hiển thị tất cả bài đăng

Thứ Năm, 23 tháng 6, 2016

Scan LVM partition

If your OS partition die, but data in other disks run LVM, you can reinstall OS and mount logical volume to use.

Example
# pvscan
  PV /dev/vdb   VG vgdata   lvm2 [20,00 GiB / 5,00 GiB free]
  Total: 1 [20,00 GiB] / in use: 1 [20,00 GiB] / in no VG: 0 [0   ]
# vgscan 
  Reading all physical volumes.  This may take a while...
  Found volume group "vgdata" using metadata type lvm2
# vgchange -a y
  1 logical volume(s) in volume group "vgdata" now active
# lvscan 
  ACTIVE            '/dev/vgdata/lvdata' [15,00 GiB] inherit
# mount /dev/vgdata/lvdata /mnt

DONE

Thứ Tư, 23 tháng 12, 2015

Simulate fail disk in Linux

If you want to simulate fail disk when test any storage software such as CEPH, ScaleIO ...
Block any IO send to device:
echo offline > /sys/block/sda/device/state
Re-enable:
echo running > /sys/block/sda/device/state

Link:
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Online_Storage_Reconfiguration_Guide/removing_path-to-storage-device.html

Thứ Sáu, 14 tháng 3, 2014

Fix "connect: No buffer spaces available"

When i use traceroute, something shell display "connect: No buffer spaces available".
Edit kernel parameters to fix:
echo 200000 > /proc/sys/net/netfilter/nf_conntrack_max (most important)
echo 8000 > /proc/sys/net/core/somaxconn
echo 8000 > /proc/sys/net/core/netdev_max_backlog
echo "10000 65000" > /proc/sys/net/ipv4/ip_local_port_range
echo 1024 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
 echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh3

Thứ Sáu, 23 tháng 8, 2013

CentOS 5.9 minimal

CentOS 5.9 không có bản iso minimal nhưng có thể sử dụng iso CentOS-5.9-x86_64-bin-1of9.iso để cài minimal. Chỉ cần trong lúc lựa chọn cài đặt các gói chỉ chọn group Base và bỏ chọn tất cả các group khác. Việc cài đặt diễn ra bình thường

http://centos-hn.viettelidc.com.vn/5.9/isos/x86_64/CentOS-5.9-x86_64-bin-1of9.iso
Manual: http://wiki.centos.org/Manuals/ReleaseNotes/CentOS5.9

Thứ Tư, 19 tháng 6, 2013

The Philosophy of System Administration (2)

3.2 Nói với người dùng bạn đang làm gì

Đây là cảnh báo ở phút cuối trước khi sự thay đổi diễn ra; như vậy, nó sẽ là một cảnh báo lặp lại của thông báo đầu tiên, mặc dù bản chất của sự thay đổi sẽ rõ ràng hơn ("Hệ thống sẽ được nâng cấp ĐÊM NAY"). Đây cũng là thời điểm tốt để trả lời các câu hỏi nhận được - kết quả của việc đưa ra thông báo đầu tiên.
Tiếp tục với ví dụ trên, đây là một cảnh báo phút cuối tích cực:
Kế hoạch ngừng hoạt động của hệ thống đêm nay 
Nhắc lại: hệ thống ngừng hoạt động được thông báo từ thứ 2 sẽ được tiến hành vào đêm nay lúc 6pm ( nửa đêm theo giờ văn phòng tại Berlin). Các bạn có thể tìm thấy thông báo chính thức tại trang web nội bộ của công ty, mục System Administration.
Một vài người đã hỏi liệu họ có nên ngừng làm việc trước đêm nay để đảm bảo công việc được sao lưu trước khi hệ thống ngừng hoạt động. Điều này là không cần thiết vì công việc diễn ra tối nay sẽ không ảnh hưởng đến công việc trên các máy tính cá nhân.
Hãy nhớ, nếu ai đó đang viết những truy vấn SQL nên biết rằng một số chỉ số sẽ thay đổi. Điều này được ghi lại trên website của công ty, mục Finance. 
Người dùng đã được cảnh báo, và giờ bạn sẵn sàng để làm việc đó.

3.3 Nói với người dùng bạn vừa làm cái gì

Sau khi hoàn thành iệc thay đổi, bạn phải nói với người dùng bạn vừa làm gì. Một lần nữa nên có một thông báo tổng kết các thông báo trước (vì đơn giản lúc nào cũng có người không đọc chúng :D )
Chú ý: Hãy đảm bảo việc gửi thông báo này ngay sau khi công việc hoàn thành, trước khi bạn rời văn phòng về nhà. Một khi rời văn phòng, sẽ rất dễ quên, khiến người dùng như mò mẫm trong bóng tối về cách sử dụng hệ thống.
Tuy nhiên có một chú ý quan trọng cần thêm vào. Bạn cần cung cấp trạng thái hiện tại của hệ thống. Việc nâng cấp có hoàn thành đúng kế hoạch? Server lưu trữ mới sẵn sàng để phục vụ cho Engineering và không cho Finance? Những kiểu vấn đề như vậy sẽ được ghi ở đây.
Tất nhiên, nếu trạng thái hiện tại khác với những gì bạn thông báo trước đây, bạn nên làm rõ nó và giải thích cái gì sẽ được làm để đi đến cách giải quyết cuối cùng.
Trong ví dụ này, giả sử thời gian ngừng hoạt động có vấn đề. Module CPU mới không hoạt động, nhà sản xuất trả lời đây là một version đặc biệt cần nâng cấp. Mặt tích cực là quá trình chuyển database sang volume RAID diễn ra tốt đẹp (mặc dù lâu hơn dự kiến do vấn đề với module CPU)
Đây là một thông báo tích cực:
Thời gian ngừng hoạt động của hệ thống kết thúc 
Thời gian tạm ngừng hệ thống được lập cho ngày thứ 6 ( tham khảo trên mục System Administration, trang web nội bộ ) đã kết thúc. Không may là vấn đề phần cứng đã ngăn cản một công việc. Vì lý do đó mà toàn bộ công việc đã bị lâu hơn dự kiến 4 tiếng. Thay vào đó, toàn bộ hệ thống sẽ hoat động trở lại vào đêm nay (6am giờ Berlin)
Vì vấn đề phần cứng còn lại, mà hiệu suất của AP, AR và báo cáo cân đối tài chính sẽ được cải thiện đôi chút, nhưng không bằng kế hoạch ban đầu. Một kế hoạch tạm dừng thứ 2 sẽ được thông báo và lên lịch ngay sau khi vấn đề được giải quyết.
Chú ý rằng thời gian tạm ngừng thay đổi một vài chỉ số database; những người viết câu lệnh SQL nên kiểm tra thông tin trên mục Finance.
Mọi thắc mắc xin liên lạc với nhóm Quản lý hệ thống, máy lẻ 4321
Với thông tin này, người dùng sẽ có những thông tin cơ bản đê tiếp tục công việc, và hiểu rằng nó ảnh hưởng thế nào đến mình.

4. Nắm vững tài nguyên có được

Quản trị hệ thống hầu như là vấn đề cân bằng tài nguyên hiện có với việc con người và chương trình sử dụng tài nguyên. Vì thế người quản trị sẽ rất dễ bị stress ngắn trừ khi bạn nắm vững tài nguyên mình quản lý.
Một vài tài nguyên khá rõ ràng như:
  • Tài nguyên hệ thống, như sức mạnh xử lý hiện tại, bộ nhớ và phân vùng đĩa.
  • Băng thông mạng
  • Ngân sách dành cho IT
Nhưng một số lại không rõ ràng:

  • Dịch vụ cho hoạt động cá nhân, việc quản lý hệ thống khác, hay là cho 1 trợ lý hành chính.
  • Thời gian ( điều quan trọng khi thời gian liên quan đến những thứ như tổng thời gian bỏ ra khi sao lưu hệ thống )
  • Kiến thức ( trong sách vở, tài liệu hệ thống hay trong đầu của một người đã làm cho công ty 20 năm)
Điều quan trọng cần chú ý là việc kiểm soát đầy đủ các tài nguyên sẵn có rất giá trị, và giữ nó, việc thiếu nhận thức tình huống có thể tồi tệ hơn việc không nhân thức được mình có gì.

5. Nắm vững người dùng

Mặc dù một số người đề cao khái niệm "người dùng" (do một số người quản trị sử dụng thuật ngữ này một cách xúc phạm :D - noob ), nhưng thực sự nó không mang ngụ ý như vậy. Người dùng là những người sử dụng hệ thống và tài nguyên mà bạn chịu trách nhiệm quản lý, không nhiều cũng không ít. Như vậy, họ là vấn đề trung tâm để bạn có thể quản trị hệ thống một cách thành công; nếu không hiểu người dùng, bạn làm sao hiểu được tài nguyên hệ thống họ cần như thế nào?
Ví dụ xem xét một người kiểm toán viên ngân hàng. Anh ta sử dụng những ứng dụng bị giới hạn và yêu cầu ít tài nguyên hệ thống. Một kĩ sư phần mềm thì lại sử dụng nhiều ứng dụng và luôn cần thêm tài nguyên ( để tăng tốc độ xử lý ).
Hãy đảm bảo rằng bạn nắm rõ người dùng của mình.

6. Nắm vững công việc của công ty

Khi bạn làm việc cho một tập đoàn lớn, đa quốc gia hay một công ty nhỏ, bạn phải hiẻu được môi trường làm việc tự nhiên tại nơi làm việc. Bạn có thể đặt ra câu hỏi:
Mục đích của hệ thống mà mình quản trị?
Điểm chính ở đây là hiểu mục đích hệ thống của bạn một cách toàn diện:
Ứng dụng chạy trong thời gian cố định, như là cuối tháng, cuối quý hay cuối năm.
Thời gian bảo trì hệ thống có thể được thực hiện
Công nghệ mới có thể giải quyết vấn đề kinh doanh lâu dài.
Bằng cách tìm hiểu hoạt động kinh doanh của tổ chức, bạn sẽ ngày càng đưa ra quyết định tố hơn cho người sử dụng và cho bản thân mình.

7. Vấn đề bảo mật cần được nghĩ đến

Không cần biết bạn nghĩ gì về môi trường mà hệ thống đang chạy, bạn không thể bảo đảm an toàn cho tất cả các cấp độ. Kể cả một hệ thống chạy độc lập không kết nối tới Internet cũng có thể bị rủi ro ( mặc dù rõ ràng là sự rủi ro này khác với hệ thống kết nối ra ngoài)
Vì thế, vấn đề quan trọng là xem xét tình trạng bảo mật của những thứ bạn làm. Danh sách dưới đây chỉ ra những loại vấn đề cần được quan tâm:
  • Những vấn để khách quan có thể ảnh hưởng đến hệ thống của bạn
  • Vị trí, kiểu và giá trị của dữ liệu trên hệ thống
  • Kiểu và tần số truy nhập được ủy quyền tới hệ thống
Khi bạn đang suy nghĩ về vấn đề bảo mật, đừng có mắc sai lầm rằng kẻ phá hoại chỉ tấn công hệ thống từ bên ngoài. Rất nhiều vụ tấn công là do người trong công ty. Vì thế lần tới bạn đi vòng quanh văn phòng, nhìn mọi người xung quanh và hỏi bản thân mình:
Điều gì có thể xảy ra khi người đó cố gắng phá vỡ sự bảo mật của chúng ta?
Chú ý: Điều đó không có nghĩa là bạn sẽ xem tất cả các nhân viên là tội phạm. Nó có nghĩa là bạn sẽ xem kiểu làm việc mà mỗi người thực hiện và xác định xem khả năng họ có thể gây ra để phá vỡ hệ thống.

7.1 Hiểm họa từ Social Engineering

Trong khi phản ứng đầu tiên của người quản trị hệ thống khi nghĩ đến bảo mật là tập trung vào khía cạnh công nghệ, thì điều quan trọng lại là duy trì ý thức sử dụng. Khá thường xuyên những vi phạm bảo mật thường không liên quan đến vấn đề công nghệ, mà lại là con người.
Những kẻ quan tâm đến việc phá vỡ hàng rào bảo mật thường lợi dụng bản chất tự nhiên của con ngừoi để vượt qua kiểm soát truy nhập. Kĩ thuật này được gọi là social engineering. Đây là 1 ví dụ:
Một nhân viên nhận được một cuộc gọi từ bên ngoài. Người gọi tự xưng là CFO của tổ chức (các thông tin cơ bản được lấy từ website, mục Management Team).
Người gọi nói rằng mình gọi đến từ một nơi cách nửa vòng trái đất ( có thể là một câu chuyện bịa đặt hoàn toàn phù hợp, hoặc có thể website của công ty đưa lên rằng CFO sẽ tham dự một hội chợ thương mại)
Người gọi sẽ kể khổ: laptop bị mất tại sân bay, và đang làm việc với một khách hàng quan trọng và cần truy nhập vào nội bộ để kiểm tra tình trạng tài khoản của khách hàng. Liệu người nhân viên đó có nên đưa cho anh ta quyền truy nhập thông tin cần thiết ?
Bạn có biết người đó sẽ làm thế nào? Trừ khi được hướng đẫn (theo chính sách và thủ tục) bằng không bạn không thể chắc chắn điều gì.
Mục tiêu của chính sách và thủ tục như đèn giao thông, chúng cung cấp rõ ràng các chỉ dẫn về những gì là hoat động thích hợp hay không thích hợp. Tuy nhiên, cũng vì là đèn giao thông, nên chính sách và thủ tục cũng chỉ có tác dụng với những người làm theo. Và đó là mấu chốt của ván đề - không thể chắc chắn rằng tất cả sẽ tuân thủ theo những chính sách và thủ tục đó. Thực tế, tùy theo tính chất của tổ chức, bạn thậm chí không có thẩm quyển để xác định các chính sách đó, ít hơn cả việc thực thi chúng. Vậy điều gì xảy ra sau đó ?
Thật không may là không có đáp án dễ dàng nào cả. Hướng dẫn người dùng và làm tất cả mọi thứ để người dùng cảnh giác với vấn đề bảo mật và social engineering. Cung cấp các bài thuyết trình về an toàn thông tin vào giờ ăn trưa. Gửi các bài báo liên quan đến vấn đề an ninh lên mailing list. Và luôn sẵn sàng trả lời câu hỏi của người dùng.
Và ngắn gọn hơn là gửi những thông báo đến người dùng theo nhiều cách có thể. 

8. Lập kế hoạch trước

Người quản trị hệ thống cần tiếp thu các lời khuyên và làm theo một cách tốt nhất để trở thành một người quản trị giỏi - trong một ngày nào đó. Rồi khi môi trường thay đổi và khi đó người quản trị giỏi trở thành tầm thường. Lý do? Anh ta đã không lập kế hoạch trước
Thực tế không ai có thể đoán được tương lai với độ chính xác 100%. Tuy nhiên chỉ cần để ý 1 ít là có thể dễ dàng đọc được các dấu hiệu của sự thay đổi:
Việc đề cập một dự án mới trong cuộc họp nhân sự nhàm chán hàng tuần là một dấu hiệu chắc chắn rằng bạn sẽ phải hộ trợ người dùng mới trong tương lai gần.
Nói về việc mua lại một công ty khác có nghĩa là rất có thể bạn phải chịu trách nhiệm cho hệ thống mới từ xa.
Có thể đọc các dấu hiệu trên ( và tìm cách giải quyết ) sẽ khiên cuộc sống dễ thở hơn cho bạn và người dùng. :D

9. Mong đợi những bất ngờ

Trong khi cụm từ "mong đợi những bất ngờ" là nhàm chán thì nó lại phản ánh một sự thật cơ bản mà người quản trị hệ thống phải hiểu:
Sẽ có những lúc mà bạn không thể phòng vệ.
Sau khi cam chịu những thực tế của cuộc sông, thì người quản trị có thể làm gì? Câu trả lời nằm trên sự linh hoạt, bằng cách thực hiện công việc theo cách mà bạn được giao (và người dùng của bạn) thì mọi thứ đều có thể xảy ra. Lấy ví dụ như vấn đề không gian đĩa cứng. Giả thiết về việc không bao giờ có đủ không gian đĩa cứng giống như định luật vật lý - vạn vật hấp dẫn, đó sẽ là một giả định hợp lý khi bạn phải đối mặt với nhu cầu thêm không gian đĩa ngay bây giờ.
Vậy người quản trị sẽ làm gì trong tình huống này? Có thể dự phòng một vài đĩa trong trường hợp phần cứng. Vấn đề nhanh trong được giải quyết trong thời gian ngắn để chuẩn bị cho việc giải quyết vấn đề về lâu dài ( ví dụ như làm theo các thủ tục về tiêu chuẩn về việc mua thêm các ổ đĩa )
Bằng cách dự đoán những vấn đề có thể xảy ra, bạn luôn ở trong thế chủ động, có thể phàn ứng nhanh chóng và hiệu quả hơn là khi gặp bất ngờ.



Thứ Bảy, 1 tháng 6, 2013

Ubuntu 12.04 không nhận card mạng Ethernet

Bình thường thì Ubuntu sẽ tự dộng detect được card mạng Ethernet nhưng không hiểu sao con Dell 14r 5420 lại không detect được. Cụ tỉ lỗi như sau:
> ifconfig eth0
eth0error fetching interface information: Device not found
Kiểm tra:
> sudo lspci
Ethernet controller: Atheros Communications Inc. AR8161 Gigabit Ethernet (rev 10)

Thiếu driver ..., tìm cách giải quyết thì chả hiểu sao mấy bố trên mạng toàn dùng sudo apt-get .... (có mạng thì nói làm cái beep gì)

Cuối cùng tìm được cách giải quyết.
Lên trang http://wireless.kernel.org/download/compat-wireless-2.6/ download file compat-wireless-2012-05-09-p.tar.bz2 ( nên dùng bản gần đây nhất )
Copy vào usb rồi cắm vào con Ubuntu, giải nén
> tar -xvf compat-wireless-2012-05-09-p.tar.bz2
> cd compat-wireless-2012-05-09-p
> ./scripts/driver-select alx
> make
> sudo make install
> sudo modprobe alx (load module)

Done, thế là đã nhận được card mạng, kiểm tra lại bằng ifconfig eth0

P/s: Nếu vẫn chưa được thì tìm phiên bản compat khác rồi làm lại tuần tư các bước trên

Thứ Bảy, 5 tháng 1, 2013

Thay đổi kích thước thanh Launcher trên Unity 2D

Trên Unity 3D thì khỏi nói rồi, cử vào Apperance mà thay đổi là xong. Còn trên Unity 2D thì không có. Các file cấu hình nằm trong /usr/share/unity-2d/shell
Mặc định Unity 2D launcher có chiều rộng là 48px. Sau đây chúng ta sẽ giảm xuống cho nhỏ hơn.
1, Backup các file trong /usr/share/unity-2d/shell
> tar cvfz ~/Documents/unity-2d-shell-backup.tar.gz
/usr/share/unity-2d/shell/*

2, Sửa các file sau :  ( nhớ sử dụng quyền root )

Shell.qml :width: 65 => width: 50 

common/IconTile.qml :sourceSize.width: 48 => sourceSize.width: 32sourceSize.height: 48 => sourceSize.height: 32

launcher/LauncherList.qmlproperty int tileSize: 54 => property int tileSize: 38property int selectionOutlineSize: 65 => property int selectionOutlineSize: 50

3, Logout rồi đăng nhập lại để xem sự thay đổi

Nguồn :
http://www.dedoimedo.com/computers/ubuntu-unity-2d-resize-launcher.html

p/s : đến Ubuntu 12.10 thì không còn sử dụng Unity 2D nữa .







Ubuntu 12.04 black/blank screen ( màn hình đen ) khi boot

Đang hí hoáy ubuntu, ấn phím giảm độ sáng thì bỗng nhiên black screen ( may ko phải là death screen như Windows ) nhưng cũng ko thể làm được gì. Restart máy khởi động lại vẫn bị, trong khi đó boot vào Windows 7 thì vẫn bt ( cài dual boot ). Sau một hồi google thì thấy cái này là chuyện thường gặp trong Ubuntu, xảy ra do liên quan đến driver của card đồ họa. Thường thì có 2 dòng chính là ATI và Nvidia.

Giải pháp nắm ở trên trang askubuntu.com :
http://askubuntu.com/questions/162075/my-computer-boots-to-a-black-screen-what-options-do-i-have-to-fix-it

Đối với card ATI Radeon như mình thì khởi động lại :
1, Taị Grub menu, bấm phím e
2, Dùng các phím mũi tên đến dòng có chữ quiet slash, đổi thành radeon.modeset=0
3, Ấn Ctrl + X để boot lại

Sau đó khi vào đc ubuntu, mở cửa sổ terminal gõ lệnh :
> sudo vi /etc/defaults/grub
Sửa dòng
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
thành
GRUB_CMDLINE_LINUX_DEFAULT="radeon.modeset=0" 
rồi gõ lệnh
>sudo update-grub
Sau đó ubuntu có thể boot bình thường, nhưng lúc này thì chỉ chạy đc chế độ Unity 2D.

Thứ Năm, 3 tháng 1, 2013

Install Google Chrome in Ubuntu 12.04

Google Chrome không có sẵn trong Ubuntu Software Center mà chỉ có Chronium. Vì thế phải lên trang chủ của chrome để download file .deb về. Tuy vậy khi cài đặt gặp lỗi vướng vào version của gói libnss và có thể là gói libxss
Cách giải quyết :

sudo apt-get install libnss3-1d:i386
sudo apt-get install libxss1:i386
Done !!!

Thứ Tư, 2 tháng 5, 2012

The Philosophy of System Administration (1)

TRIẾT LÝ QUẢN TRỊ HỆ THỐNG

Nguồn : 

1. Tự động hóa mọi thứ

Hầu hết những đối tượng mà người quản trị quan tâm ngày càng tăng - gồm người dùng,  hệ thống hoặc cả 2. Trong nhiều trường hợp , tự động hóa là cách duy nhất để theo kịp sự phát triển. Thông thường, những hoạt động mà được thực hiện trên 1 lần sẽ được xem xét để tự động hóa
Dưới đây là những nhiệm vụ được tự động hóa thường thấy :
- Kiểm tra và báo cáo dung lượng trống của ổ đĩa
- Sao lưu ( Backup)
- Thu thập dữ liệu hoạt động của hệ thống
- Quản lý tài khoản người dùng (tạo , xóa .... )
- Những chức năng mang tính chất kinh doanh đặc trưng ( đẩy dữ liệu mới lên Web, báo cáo định kỳ theo tháng , quý hoặc năm , ....)
Danh sách trên vẫn còn tiếp tục; những chức năng tự động hóa chỉ bị giới hạn bởi ý muốn của người quản trị khi viết các script cần thiết. Trong trường hợp này , lười biếng ( và khiến máy tính làm việc nhiều hơn ) lại là điều tốt.
Tự động hóa mang đến thêm cho người dùng lợi ích của việc nhất quán trong dịch vụ.
Note:
Luôn ghi nhớ trong đầu rằng nếu bạn phải thực hiện việc tự động hóa 1 nhiệm vụ,  bạn không phải là người quản trị đầu tiên phải thực hiện việc đó. Đây chính là thế mạnh của phần mềm mã nguồn mở , bạn có thể tận dụng những thứ mà người khác làm để tự động hóa những thủ tục thường tiêu tốn thời gian của mình. Vì thế luôn luôn tìm kiếm trên web trước khi viết những thứ phức tạp hơn 1 đoạn mã Perl nhỏ.

2. Ghi chép lại mọi thứ

Nếu phải lựa chọn giữa việc cài đặt 1 server mới hoặc ghi chép lại việc thực hiện backup, khoảng 1  nửa số người quản trị chọn việc cài đặt server mới. Nếu xảy ra những việc bất thường , bạn phải ghi chép lại những thứ mình làm. Nhiều người quản trị đã bỏ qua việc ghi chép lại vì 1 vài lý do sau:
"Tôi sẽ tìm hiểu vấn đề này sau"
Thật không may , điều này thường không đúng. Kể cả người quản trị đang nghiêm túc , thì bản chất của công việc là những nhiệm vụ hằng ngày thường khá rắc rối để mà "làm việc đó sau". Tệ hơn nữa , càng bỏ qua lâu , người quản trị quên càng nhiều và dẫn đến việc những ghi chép sẽ kém chi tiết (và kém hữu dụng).
"Tại sao lại viết nó ra ? Tôi sẽ nhớ nó"
 Nếu bạn không phải là 1 trong số ít cá nhân có khả năng ghi nhớ hình ảnh , bạn sẽ không nhớ nó. Tệ hơn , bạn chỉ nhớ được 1 nửa và không nhận ra mình đã quên cả câu truyện. Điều này sẽ khiến bạn lãng phí thời gian để nhớ lại những gì đã quên hoặc sửa chữa những sai sót do sự thiếu hiểu biết của mình.
"Nếu tôi giữ nó trong đầu, họ sẽ không sa thải tôi - Tôi có 1 công việc được đảm bảo"
 Khi làm 1 thời gian , điều này chỉ khiến bạn có nguy cơ mất việc cao hơn. Hãy nghĩ đến l lúc nào đó trường hợp khẩn cấp xảy ra. Bạn không có mặt tại đó , những ghi chép của bạn sẽ giúp người khác giải quyết vấn đề trong những ngày bạn vắng mặt. Và đừng bao giờ quên rằng những trường hợp khẩn cấp có xu hướng xảy vào những lúc mà những người quản lý cấp cao chú ý sát sao. Trong nhiều trường hợp , sẽ tốt hơn nếu những ghi chép của bạn là 1 phần của giải pháp chứ không phải sự vắng mặt của bạn là 1 phần của vấn đê.
Thêm vào nữa, nếu bạn là thành viên của 1 tố chức nhỏ nhưng đang phát triển , sẽ có lúc cần thêm những người quản trị khác. Làm thế nào để những người đó học được những thứ bạn đã làm nếu bạn giữ chúng trong đầu. Tệ nhất là không có ghi chép nào khiến bạn là người không thể thiếu , điều đó dẫn đến bạn khó thăng tiến trong sự nghiệp
Hi vọng rằng bạn đã hiểu được những lợi ích của các ghi chép hệ thống. Điều đó mang đến cho chúng ta câu hỏi: Ghi chép lại như thế nào ? Dưới đây là 1 phần danh sách :
Các chính sách
Người ta viết ra những chính sách để định dạng và làm rõ mối liên hệ với cộng động người sử dụng. Người dùng dễ dàng biết các yêu cầu của họ tơi tài nguyên được hỗ trợ hoặc xử lý như thế nào. Bản chất , phong cách và phương thức phổ biến chính sách sẽ có sự khác nhau giữa các tổ chức.
 Các thủ tục
Thủ tục là các bước tuần tự cho 1 hành động để hoàn thành 1 nhiệm vụ nhất định. Các thủ tục được ghi chép bao gồm backup, quản lý tài khoản người dùng, báo cáo sự cố và hơn nữa. Giống với việc tự động hóa , nếu 1 thủ tục được làm nhiều lần , cần phải ghi chép lại.
Các thay đổi
Khối lượng lớn công việc của người quản trị là giải quyết những thay đổi - cấu hình hệ thống để đạt hiệu năng cao, tinh chỉnh script, thay đổi file cấu hình .... Những thay đổi này được ghi chép  lại dưới vài kiểu. Nếu không , sau vài tháng bạn sẽ nhận thấy rằng những thay đổi trước là hoàn toàn sai lầm.
1 vài tổ chức sử dụng những phương pháp phức tạp để đánh dấu các thay đổi, nhưng trong nhiều trường hợp 1 ghi chép thay đổi từ lúc bắt đầu là tất cả những gì cần thiết . Tối thiểu 1 entry ghi chép lại gồm :
  • Tên viết tắt của người tạo ra thay đổi 
  •  Ngày thay đổi 
  •  Lý do thay đổi
Đây là 1 entry ngắn gọn những có ích :
ECB, 12-June-2002, Updated entry for new Accounting printer (to support the replacement printer's ability to print duplex)

3. Tương tác nhiều nhất có thể

Khi giao tiếp với người dùng , bạn không bao giờ có thể giao tiếp được nhiều. Cần biết rằng 1 thay đổi nhỏ trong hệ thống mà bạn nghĩ sẽ không gây ra ảnh hưởng gì đáng kể có thể hoàn toàn làm xáo trộn sự trợ giúp về mặt quản trị trong nguồn nhân lực
Cách thức mà bạn kết nối với người dùng có thể khác nhau tùy vào từng tổ chức. 1 vài tổ chức sử dụng email; số khác thì sử dụng web nội bộ. Số khác nữa thì sử dụng bảng tin USENET hay IRC. 1 tờ giấy được dính lên các bảng thông báo có thể là đủ ở 1 số tổ chức. Trong trường hợp này , hãy sử dụng bất kì cách nào phù hợp với tổ chức của bạn.
Thông thường, người ta sử dụng cách diễn giải từ trên xuống :
  • Nói với người dùng bạn sẽ làm gì
  • Nói với người dùng bạn đang làm gì
  • Nói với người dùng bạn vừa làm cái gì
 Những cái tiếp theo sẽ đi sâu vào những bước trên

3.1 Nói với người dùng bạn sẽ làm gì

Hãy chắc chắn rằng bạn đã gửi những cảnh báo đầy đủ tới người dùng. Những cảnh bảo cần thiết thực tế phụ thuộc vào loại thay đổi ( nâng cấp HĐH sẽ đòi hỏi nhiều thời gian hơn việc thay đổi màu nền màn hình đăng nhập ), cũng tương tự như bản chất cộng đồng người sử dụng ( thay đổi nhiều với người sử dụng có kiến thức chuyên sâu sẽ đơn giản hơn so với những người ít có kiến thức )
1 cách tối thiểu , bạn có thể mô tả những thứ sau

  • Bản chất của việc thay đổi
  • Khi nào nó sẽ xảy ra
  • Tại sao nó xảy ra
  • Thời gian kéo dài
  • Tác dụng ( nếu có ) mà người dùng mong đợi
  • Thông tin liên lạc để họ có thể liên lạc
Dưới đây là những trường hợp trong giả thiết. Phòng Tài Chính gặp vấn đề về việc hoạt động chậm chạp của cơ sở dữ liệu vào 1 số thời điểm. Bạn sẽ tắt server , nâng cấp CPU đời mới , và khởi động lại. Khi điều này được thực hiện , bạn sẽ chuyển database sang dạng lưu trữ RAID. Dưới đây là 1 thông báo cho trường hợp này
Kế hoạch dừng hoạt động của server vào đêm thứ 6
Bắt đầu từ 6 giờ tối ( lúc này là nửa đêm cho các công ty liên kết ở Berlin ) , tất cả các ứng dụng tài chính sẽ dừng hoạt động trong vòng 4 tiếng đồng hồ .
Trong khoảng thời gian này , những thay đổi về phần cứng và phần mềm của server chứa cơ sở dữ liệu của Phòng Tài Chính sẽ được thực hiện. Những thay đổi này sẽ làm giảm đáng kể thời gian cần thiêt để chạy các ứng dụng Accounts Payable, Accounts Receivable , và bảng cân đối tài chính hàng tuần. 
Khác với sự thay đổi trong thời gian chạy, hầu hết mọi người sẽ không nhận thấy có sự thay đổi nào cả. Tuy nhiên, những người viết các câu truy vấn SQL của riêng của mình cần phải biết rằng cách sắp xếp của một số chỉ số sẽ thay đổi. Đây là tài liệu trên trang web của công ty trong mạng nội bộ, trên trang Tài chính. 
Nếu bạn có bất kỳ câu hỏi, ý kiến, hoặc góp ý, xin vui lòng liên hệ người quản trị hệ thống , mã số mở rộng 4321.
Có vài điểm cần chú ý

  • Giao tiếp hiệu quả bắt đầu và kéo dài trong suốt quá trình xảy ra thay đổi
  • Đảm bảo rằng bạn cung cấp lịch thay đổi phù hợp với mọi người ở bất kì chỗ nào
  • Sử dụng các thuật ngữ mà người dùng hiểu.  Những người bị ảnh hưởng bởi sự thay đổi này không quan tâm rằng các mô-đun CPU mới là một đơn vị 2GHz với bộ nhớ cache L2 gấp đôi, hoặc cơ sở dữ liệu đang được sử dụng giải pháp lưu trữ RAID 5. 

< Hết phần 1 >

Thứ Bảy, 21 tháng 4, 2012

Gia phả dòng họ Linux


Trong cái hình dưới thì mọi người có thể thấy có 3 nhánh chính là Debian , Slackware và Redhat.
Những OS Linux biết được thì chắc ko quá 20 cái , quá ít so với chỗ này :D
Hơn nữa số lượng thống kê dưới này chắc chắn vẫn chưa đủ hết , có những biến thể khác nhau của Linux được các công ty như GOOGLE , FACEBOOK ... thay đổi để phù hợp với yêu cầu của họ ( chủ yếu là những con server)



Có thể vài người thắc mắc sao ko thấy BSD ở đây , câu trả lời là BSD được coi là Unix-based , Linux được coi là Unix-liked. Vấn đề này sẽ được làm rõ ở 1 cái entry khác :D

Tiến trình khởi động của LINUX


Tiến trình khởi động Linux

Khởi động hệ thống : Trên một máy tính , Linux khởi động bắt đầu trong BIOS từ địa chỉ 0xFFFF0. Bước đầu tiên của BIOS là POST ( power-on self test ) để kiểm tra phần cứng , liệt kê danh sách các thiết bị và khởi động chúng . Sau đó BIOS tìm kiếm các thiết bị khởi động trong CMOS như đĩa mềm ,CD-ROM, USB hay phân vùng MBR ( Master Boot Record ) trong đĩa cứng . Thường thì hệ thống bắt đầu khởi động từ đĩa cứng có MBR . MBR là 1 sector 512 byte đặt tại sector 1 cylinder 0 head 0. Sau khi MBR được nạp , BIOS sẽ chuyển quyền điều khiển cho đoạn mã trong MBR
















Giai đoạn 1 : MBR là 1 image 512 byte gồm 446 byte khởi động sơ cấp , 64 byte phân hoạch (partition table) và 2 byte magic number . Nhiêm vụ của MBR là tìm và nạp trình khởi động thứ cấp bằng cách xác định phân vùng có cờ Active trong bảng , rồi đọc bootsector từ phân vùng đó 



Giai đoạn 2 : BOOTLOADER tiến hành nạp kernel và khởi động RAM disk (nếu cần) . BOOTLOADER trong linux thường là LILO hoặc GRUB. Nhưng hiện giờ có lẽ chỉ còn xài GRUB. File cấu hình của GRUB là /etc/grub.conf ( Trong Windows thì bootloader có tên là NTLDR ). Trình khởi động đọc file cấu hình và hiển thị danh sách kernel. Sau khi lựa chọn sẽ nạp kernel image và initrd vào bộ nhớ . Khi kernel sẵn sàng , giai đoạn 2 sẽ triệu gọi kernel . Kernel nạp vào bộ nhớ , quyền điều khiển sẽ trao cho kernel. Kernel có 2 dạng nén là zImage hoặc bzImage ( thường là bzImage). 
+ Phần đầu kernel chứa thủ tục thiết lập phần cứng và giải nén kernel , sau đó triệu gọi kernel và quá trình khởi động kernel bắt đầu .
+ Kernel sẽ mount hệ thống file và file hệ thống . Kernel sẽ khởi động tiến trình init nên init có process id là 1 ( init là cha của các tiến trình khác trong linux )
Đến đây có thể coi như tiến trình khởi động linux đã hoàn thành .

Vậy có thể tóm tắt lại là :




P/s : GRUB hay LILO đều có thể khởi động cho cả Linux và Windows, nhưng ngược lại các bootloader trên Windows như (NTLDR, BOOTMGR) thì không hỗ trợ khởi động cho các hệ điều hành Linux. Ví dụ hình sau minh họa cho máy tính cài 2 HDH là Windows và Linux

Khái niệm phân vùng đĩa cứng trong Linux

1. Lý thuyết tổng quát

Quá trình khởi động: khi bật công tắc (Power), BIOS sẽ làm công việc đầu tiên là “chạy đôn chạy đáo” kiểm tra những phần cứng cơ bản (gồm ổ đĩa cứng, ổ đĩa mềm, bàn phím…) đã được nối vào máy tính. Những phần cứng này sẽ lần lượt được nạp driver (trình điều khiển – BIOS đã có sẵn driver rồi) để có thể sử dụng được ngay khi khởi động xong, đồng thời BIOS cũng đi tìm một đoạn chương trình bé xíu được đặt tại phần đầu của đĩa mềm (Boot sector), đĩa cứng (MBR – Master Boot Record) để “đùn đẩy trách nhiệm” khởi động tiếp
Riêng đối với đĩa cứng, ngoài MBR còn có thêm Boot sector nữa, Boot Sector này “tạm trú” ngay đầu của mỗi phân vùng Primary (sẽ nói sau) và Boot Sector của Primary đầu tiên sẽ nằm sau MBR. Tại đây, ta không nói đến đĩa mềm vì quá đơn giản, chỉ cần nạp xong Boot Sector là OK. Đĩa cứng thì phức tạp hơn, MBR không nạp ngay hệ điều hành mà còn “bận” phải xác định xem trong đĩa cứng hiện có bao nhiêu phân vùng và phân vùng nào sẽ được ưu tiên khởi động. Mỗi phân vùng Primary sẽ “cầm” một cái cờ tên là Active, trong một thời điểm khởi động chỉ có một Primary được phất cờ thôi, và khi MBR nhận ra được “em” nào phất thì tức khắc “tống” ngay tiến trình khởi động sang cho Boot Sector của Primary đó làm tiếp. Lúc này, Boot Sector mới tìm những tập tin khởi động của hệ điều hành (nếu có) để “chuyển giao công đoạn” và chấm dứt khởi động, phận ai người nấy lo mà.


Số lượng phân vùng: đối với mỗi ổ đĩa cứng, có hai loại phân vùng là: Primary (phân vùng chính) và Extended (phân vùng mở rộng). Primary là phân vùng có khả năng khởi động (đã nói ở trên đó). Về mặt vật lý, ổ đĩa cứng chỉ có thể chia làm bốn phân vùng, tức là chỉ cài được tối đa bốn hệ điều hành trên một đĩa cứng mà thôi. Tuy nhiên, nếu không có “ham muốn” dùng nhiều hệ điều hành mà chỉ có “ý định” chia nhiều ổ đĩa thì có thể dùng phân vùng Extended, phân vùng này cho phép chia bên trong nó nhiều phân vùng con gọi là Logical.



2. Lý thuyết của DOS/Windows

Những đề cập bên dưới chỉ tập trung vào cấu trúc Basic Disk (tức là những gì ta thấy, hiểu và cảm nhận từ trước đến giờ trên nền DOS/Windows), còn Dynamic Disk của cơ chế RAID thì… miễn bàn.
 Tên phân vùng: Hệ điều hành DOS/ Windows gọi phân vùng “phất” cờ Active là C:, các ký tự tiếp theo (D:, E:, F:…) lần lượt được gán cho các phân vùng Logical của phân vùng Extended đầu tiên, khi hết Extended đầu tiên sẽ chuyển qua Extended thứ hai (nếu có), và khi hết Extended mới “ân huệ” cho các phân vùng Primary tiếp theo, dù vị trí có nằm trước Extended đi chăng nữa.

Ẩn phân vùng Primary: DOS và Windows 9x không cho phép hai phân vùng Primary “chường mặt” ra đồng thời, tuy nhiên nếu cố “ép” thì vẫn được. Vì thế, nếu đã đặt Active cho một Primary thì các Primary khác sẽ tự động… “mất tích”.

3. Lý thuyết của Linux

Tên phân vùng: Hạt nhân Linux/ Unix xây dựng cơ chế truy xuất tất cả các loại đĩa và thiết bị đều ở dạng tập tin. “Chú chim cánh cụt” đặt tên cho bé ổ đĩa mềm là fd (floppy disk), ổ đĩa mềm thứ nhất là fd0, ổ đĩa mềm thứ hai là fd1 (hết rồi, chỉ có tối đa hai ổ đĩa mềm thôi). Tiếp đến là ổ đĩa cứng, nếu là ổ đĩa IDE thì có tên hd (hard disk), còn nếu là ổ đĩa SCSI thì có tên là sd (SCSI disk). Bây giờ bàn về ổ đĩa cứng IDE thôi nhé (ổ SCSI cũng tương tự). Ổ đĩa cứng vật lý thứ nhất “làm khai sinh” với tên hda, thứ hai là hdb, thứ ba là hdc, nếu còn nữa thì tiếp tục. Trên từng ổ đĩa cứng, mỗi phân vùng cũng có tên riêng, điển hình là bốn phân vùng “sếp” (Primary và Extended) chiếm lấy các tên từ hda1 đến hda4 (hdgìgì không nhất thiết chỉ có a đâu nhé, phải linh hoạt chứ, chỉ là ví dụ thôi). Các số từ 5 trở lên (như hda5, hda6…) được đặt cho các phân vùng Logical bên trong phân vùng Extended. Điều này khác với DOS/ Windows, vì trên DOS/Windows thì Extended không có tên, nhưng trên Linux thì Extended có tên hẳn hoi. Dù bạn không chia đủ 4 phân vùng “sếp” thì các “bé” Logical cũng vẫn đi từ 5 trở lên, không “bàn cãi trả giá” gì hết. 

Phân vùng tráo đổi SWAP: Nếu Windows sử dụng tập tin tráo đổi SWAP để lưu tạm bộ nhớ thì Linux dùng ngay cả một phân vùng SWAP hẳn hoi để làm việc này (quá sang!), phân vùng SWAP phải nằm trên Extended tức là Logical í, và phải có kích thước gấp hai lần kích thước bộ nhớ RAM hiện có trên máy. Tuy vậy, đối với những máy có dung lượng bộ nhớ RAM từ 32MB trở lên thì Linux khuyến khích đặt kích thước phân vùng SWAP bằng với dung lượng RAM. Dù thế, bạn vẫn được toàn quyền đặt kích thước phân vùng SWAP mà.

Giải phân mảnh (Defragment): Khi dùng Windows, bạn phải thường xuyên làm công việc “dồn đĩa” giải phân mảnh để tăng tốc hệ thống. Thế nhưng ở Linux, ta không cần vì kiểu phân vùng EXT2 (hoặc EXT3) đã có đoạn chương trình tự động chống phân mảnh trong khi làm việc. Đây là một đặc tính rất hay của Linux, nhưng bạn phải trả cho Linux với giá 10% dung lượng phân vùng. Thật ra, đây là cái giá không cao, và bạn hưởng được tính ổn định và hiệu năng tối ưu.

Trần Anh Vũ (Báo e-CHÍP số 45, 18/11/2003)

Ghi chú : 
- Chỉ có thể tạo được 1 phân vùng extended, tối đa trong đó có 24 ( hay 27 ) phân vùng logical
- Ngày xưa máy tính còn yếu thì phân vùng swap trong linux được khuyến cáo đặt gấp đôi RAM , nhưng bây giờ thì chỉ cần đặt bằng hoặc 1 nửa