Nột số điểm lưu ý khi dùng linux

Thảo luận trong 'Hệ điều hành Linux' bắt đầu bởi chip, 29 Tháng sáu 2009.

  1. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Một số bản Linux dễ sử dụng
    Linux có rất nhiều phiên bản khác nhau, mỗi bản phù hợp cho những đối tượng người dùng khác nhau, với trình độ và nhu cầu khác nhau. Xin giới thiệu 4 bản Linux có tiếng là dễ sử dụng và được thiết kế tốt, phù hợp với người dùng thông thường.


    Linux có rất nhiều phiên bản khác nhau, mỗi bản phù hợp cho những đối tượng người dùng khác nhau, với trình độ và nhu cầu khác nhau. Xin giới thiệu 4 bản Linux có tiếng là dễ sử dụng và được thiết kế tốt, phù hợp với người dùng thông thường.

    Ubuntu là phiên bản phổ biến nhất hiện nay. Tệp cài đặt có dung lượng 700MB có thể tải dễ dàng qua kết nối ADSL (www.ubuntu.com/getubuntu/download) và "nhét" vừa vào một đĩa CD. Việc cài đặt chỉ mất khoảng 30 phút và rất đơn giản. Giao diện Ubuntu khá đẹp mắt, các menu được tổ chức hợp lý. Các phần mềm quan trọng được tích hợp bao gồm bộ ứng dụng văn phòng OpenOffice, trình duyệt web Firefox, trình quản lý và giúp tải ảnh lên mạng F-Spot. Đáng chú ý là theo mặc định Ubuntu không thể chơi một số định dạng thương mại của tệp đa phương tiện do không được phép tích hợp hỗ trợ, do đó nếu muốn chơi các tệp này bạn phải cài thêm phần mềm khác.

    Kubuntu (www.kubuntu.org/download.php) có thể được coi là "anh em" của Ubuntu, bởi chúng có cùng mã nguồn. Điểm khác biệt là Ubuntu sử dụng giao diện Gnome, còn Kubuntu sử dụng giao diện KDE. Mặc dù có nhiều điểm chung, nhưng giao diện và gói phần mềm đi kèm của Kubuntu rất khác biệt so với Ubuntu, do đó phục vụ những nhu cầu rất khác. Do sử dụng KDE, Kubuntu đi kèm phần lớn các ứng dụng KDE, đáng chú ý nhất là trình duyệt web Konqueror thay cho Firefox phổ biến. Kmail, Kopete, Konversation, Kaffeine và Amarok là các ứng dụng mặc định cho duyệt email, chat, IRC, đa phương tiện và chơi nhạc.

    PCLinuxOS (www.pclinuxos.com) dựa trên Mandrake Linux, nhưng được cải tiến rất nhiều nhằm phù hợp với người mới dùng Linux, hỗ trợ các plugin cho trình duyệt, các codec cho đa phương tiện. PCLinuxOS cho phép cấu hình hệ thống rất hiệu quả và có kho phần mềm rất phong phú. Hạn chế lớn nhất là PCLinuxOS thiếu lộ trình phát hành rõ ràng.

    Với những người có kinh nghiệm hơn chút ít, openSUSE (http://download.opensuse.org) có thể là một lựa chọn tốt. Cũng có giao diện được chăm chút, nhưng openSUSE còn được tích hợp những công cụ cấu hình và quản lý khá kỹ lưỡng, có kho phần mềm rất lớn, tài liệu chi tiết, hỗ trợ nhiều ngôn ngữ. Tuy nhiên, openSUSE có nhược điểm là bộ cài đặt rất lớn (5 đĩa CD hoặc 1 đĩa DVD - tải qua mạng rất mất thời gian); các thiết lập và các công cụ đồ hoạ quá nặng nề, có thể khiến máy chạy chậm, nhất là khi khởi động và mở các ứng dụng.
    8 điểm lưu ý khi sử dụng hệ điều hành Linux
    Nền quản lý máy tính nguồn mở này có thể cài đặt song song với Windows trên một PC. Khi muốn sử dụng, người dùng cần lưu ý chọn bộ cài đặt thích hợp, phần mềm tương ứng vì không phải chương trình nào cũng chạy được trên hệ điều hành này.



    1. Bộ cài đặt

    Khi bắt đầu tìm hiểu Linux, không ít người phải bối rối vì có quá nhiều phiên bản Linux của các tổ chức phân phối khác nhau (đến hơn 400 bản). Người dùng nên đọc các bài viết so sánh, nhận xét để quyết định chọn bộ cài nào. Ví dụ, bạn có thể dựa trên một số tiêu chí như: mức độ chuyên dụng (dùng cho mục đích chung cả server và client), số máy cài được (x86, x86_64 ...), số người sử dụng và phát triển, số phần mềm hỗ trợ trực tiếp (có bộ cài trực tiếp không cần biên soạn mã nguồn), thông tin trợ giúp, khả năng cập nhật và mức độ miễn phí. Nhưng dù dùng phiên bản nào thì bạn cũng có thể tự tùy biến và chạy phần mềm trên các phiên bản khác. Nếu là lần đầu, tốt nhất bạn nên chọn phiên bản nào dễ dùng nhất, ví dụ như Fedora Core.

    2. Cài đặt

    Bạn có thể cài phiên bản SuSE, Fedora Core 5 hay Fedora Core 6... Về cơ bản, giao diện hướng dẫn cài đặt rất thân thiện, có thể so sánh tương đương với Windows XP. Các bước chọn đường dẫn, partition, format có thể gây bối rối một chút vì bạn đã quen với các định dạng và cách tổ chức thư mục của Windows. Nhưng mọi thứ đều dễ dàng vượt qua sau một lúc mày mò.

    Khi việc cài đặt kết thúc, khởi động lại máy tính có thể bạn chỉ thấy một màn hình đen sì. Đó là do lỗi bản cài Linux không nhận dạng đúng độ phân giải và tần số quét của màn hình và phải chuyển sang chế độ khởi động dạng text mode để chỉnh sửa lại file cấu hình bằng tay.

    3. Giao diện sử dụng

    Khi chọn trình quản lý desktop GNOME, bạn sẽ thấy Linux không khác gì Windows XP nếu so sánh về giao diện đồ hoạ, các icon, menu, cửa sổ...Khả năng tùy biến giao diện rất tốt vì bạn có thể tự do lựa chọn số thanh taskbar cũng như các kiểu shortcut đặt trên nó, các hiệu ứng trong suốt... Đồng thời, người dùng có thể chuyển qua lại giữa nhiều màn hình desktop trong một phiên làm việc. Tính năng này rất tiện khi số cửa sổ mở ra quá nhiều khiến thanh taskbar không còn chỗ chứa.

    4. Phần mềm cơ bản

    Bản Linux Fedora Core 6 có các phần mềm cơ bản tương đương với Windows XP từ trình quản lý file, cửa sổ command, trình duyệt web, trình quản lý e-mail, Calendar, Project... đến các tiện ích nhỏ như Calculator, Character Map, Paint, Notepad, Remote Desktop...

    Trong đó, nổi bật là trình soạn thảo text cơ bản đi kèm là Gedit, như Notepad của Windows XP nhưng nhiều tính năng hơn và có thể tương đương với Notepad++. Về trình duyệt web, khác với Windows XP, trong bộ cài Linux có rất nhiều trình duyệt web đi kèm, thậm chí có cả trình duyệt ở chế độ text mode tiện lợi trong trường hợp cần debug (gỡ lỗi) ở chế độ text mà vẫn cần vào web. Bạn có thể chọn FireFox làm trình duyệt chính vì nó được dùng nhiều và khá an toàn.

    Trong bộ cài đi kèm rất nhiều phần mềm nghe nhạc và xem phim nhưng tất cả đều không hỗ trợ nghe mp3 và một số định dạng phim thường gặp. Fedora Core chỉ bao gồm các phần mềm mã nguồn mở, không có các phần mềm miễn phí nhưng không có mã nguồn hoặc bị ràng buộc một số điều kiện bản quyền. Với tư cách là người sử dụng, bạn có thể tìm trình nghe nhạc mp3 và xem các định dạng phim phổ biến là Realplayer và VLC.

    Về phần mềm chat, trên Linux có Gain, một chương trình mã mở chạy trên nhiều giao thức phổ biến hiện nay như Yahoo, ICQ, MSN ... và có thể chat nhiều nick trên cùng giao thức hay trên các giao thức khác nhau. Giao diện chương trình đẹp, dễ sử dụng, khá nhiều tính năng tiện dụng. Nhược điểm của Gain là chưa cho phép chat voice hay webcam. Hiện Yahoo và Skype cũng có phiên bản cho Linux nhưng so với phiên bản trên Windows thì còn thiếu nhiều chức năng.

    Về phần mềm nén và giải nén, trên Linux cũng có một chương trình cho phép nén và giải nén các định dạng .zip, .tar ...với giao diện đồ họa dễ dùng. Nhưng trình giải nén của Linux không giải nén được file .rar. Hiện có bản Winrar cho Linux nhưng làm việc ở chế độ command, khó sử dụng và bất tiện. Bạn có thể tìm hiểu để biến nó thành một dạng như plugin cho trình giải nén của Linux và có thể dễ dàng nén/giải nén/xem nội dung file .rar thông qua giao diện đồ họa và chuột.

    Phần mềm soạn thảo văn bản, bảng tính và trình chiếu trên Linux có OpenOffice, tương đương với OfficeXP của Microsoft nhưng chưa bằng được Office 2003 ở một số tính năng nhưng cũng có một số chức năng mạnh như VBScript và Javascript cho phép lập trình. Các file .doc, .xsl, .ppt được soạn bằng Office 2003 và font Arial và .VNTime có thể xem và chỉnh sửa tốt nhưng gặp phải vấn đề về font chữ. Linux sử dụng True Type Font và có sẵn một số font Unicode nhưng tên font khác với Windows khiến các file thử nghiệm không hiển thị đúng. Vấn đề được giải quyết đơn giản bằng việc copy các file font trên Windows vào thư mục font của Linux. Nhưng OpenOffice Writer (tương đương với Word) vẫn gặp phải lỗi chữ "ư" với font TCVN3, các file .xsl và .ppt thì không bị lỗi này.

    Phần mềm gõ tiếng Việt: Trên Linux có một số phần mềm cho phép gõ tiếng Việt như x-Unikey và một số phần mềm khác. X-Unikey khi sử dụng gặp phải rất nhiều lỗi, có lúc không gõ được tiếng Việt, có lúc còn làm hệ thống không thể input được ký tự nào. Bạn có thể tìm hiểu Scim-m17n, chương trình mã mở cho phép gõ tất cả các ngôn ngữ trên thế giới, mỗi phương thức gõ cần một file cấu hình. Người dùng thường quen gõ tiếng Việt theo kiểu TELEX nhưng file cấu hình để gõ TELEX cho Scim chỉ có thể bỏ dấu ngay sau nguyên âm và nếu gõ sai dấu thì không thể gõ lại dấu khác mà phải xóa đi gõ lại. Scim có thể gõ tốt trên nhiều chương trình như Gedit, OpenOffice, Firefox và bạn có thể tìm hiểu để soạn lại file cấu hình cho phù hợp, cho phép bỏ dấu ở bất cứ đâu của từ và có thể chuyển sang dấu khác mà không cần gõ lại từ.

    Ngoài ra, có một số phần mềm giả lập môi trường Windows trên Linux để cho phép cài các phần mềm Windows trên Linux. Ví dụ CrossOver, một phần mềm giả lập dựa trên phần mềm mã mở Wine. Người dùng sẽ cài được Flashget (trình hỗ trợ download trên Windows) và DUMeter (trình đo lưu lượng mạng trên Windows) nhưng có thể không cài được Winrar, GifMovieGear...

    5. Bảo mật

    Hiện tại có rất ít phần mềm diệt virus cho Linux vì mã độc tấn công Linux chưa phổ biến. Nhìn chung, cả Linux và Windows đều không thể hoàn toàn chống lại các tấn công về bảo mật cũng như virus nhưng hiện tại các tấn công nhằm vào Linux còn rất ít, không đáng kể nên người dùng Linux hầu như không cần lo lắng nhiều đến vấn đề bảo mật cũng như virus, ít ra cũng không "dính" mấy virus Yahoo Messenger một cách ngớ ngẩn.

    6. Lập trình

    Người dùng có thể cài được môi trường Java và phần mềm soạn mã Java (IntelliJ), server JBoss, Tomcat trên Linux không khó khăn gì vì J2SDK và các phần mềm soạn Java thường có phiên bản hỗ trợ cho nhiều hệ điều hành. Ngoài ra là Oracle 10g với một ít "mẹo" và MySQL.

    Còn với .NET, trên Linux có Mono Framework, một khung thay thế .NET Framework của Microsoft. Mục tiêu của Mono là thi hành tất cả các hàm và lớp của .NET Framework do đó các chương trình viết bằng Visual Studio .NET của Microsoft, sau khi biên dịch sang file .exe có thể chuyển sang Linux và chạy thông qua Mono, các file ASP.NET cũng có thể chạy được trên Linux thông qua Mono. Mục tiêu là vậy nhưng hiện tại Mono chưa thi hành được đầy đủ .NET Framework nên một số chương trình viết bằng Visual Studio vẫn không thể chạy trên mono. Do đó nếu phải làm dự án liên quan đến .NET thì bạn vẫn phải chuyển sang dùng Windows và Visual Studio 2005.

    7. Phần cứng

    Có lẽ đây vẫn còn là điểm yếu của Linux. Các hãng phần cứng lớn thường có driver cho cả Windows và Linux nên nếu trong bộ cài Linux không có sẵn driver thì có thể lên trang web của nhà sản xuất phần cứng để down về. Nhưng các hãng phần cứng nhỏ hơn thường mới chỉ viết driver cho Windows và khó có thể nhận dạng được các thiết bị này trên Linux. Ví dụ, người dùng không cài được webcam vì đĩa CD đi kèm chỉ có driver cho Windows.

    8. Kết luận

    Với nhiều mục đích sử dụng, Linux hoàn toàn có thể thay thế Windows. Với nhân viên văn phòng, những người chỉ cần làm việc với Word, Excel, PowerPoint và duyệt web, chat ... mà không cần phần mềm quản lý chuyên dụng viết cho Windows hay các thiết bị ngoại vi chưa được hỗ trợ trên Linux thì hoàn toàn có thể chuyển sang dùng Linux.
    bạn đang gặp phải.
  2. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    10 điều cần biết về Linux

    10 điều cần biết về Linux
    Hiện nay, Windows vẫn là hệ điều hành được sử dụng rộng rãi, đặc biệt là ở Việt Nam. Tuy nhiên, xu hướng sử dụng Linux cũng đang trở nên phổ biến mà nếu là một "IT Pro" thì chắc hẳn bạn cũng đã từng cài đặt và sử dụng Linux.

    1. Cấu trúc thư mục

    Cấu trúc thư mục không giống như trong Windows và các hệ điều hành khác, hệ thống tập tin trong Linux là một cây rất lớn (big tree). Thư mục Root ( / ) là thư mục gốc, các tập tin và các ổ đĩa khác chỉ là nhánh của Root.

    Ví dụ: nếu bạn có 2 đĩa cứng a và b, một đĩa mềm và một ổ CD-ROM. Hãy giả sử rằng ổ đĩa thứ nhất có 2 phân vùng (partition) là a1 và a2, ổ đĩa thứ 2 chỉ có một phân vùng là b.

    Trong Windows

    ổ cứng a, phân vùng a1 (hda1): ổ đĩa C
    ổ cứng a, phân vùng a2 (hda2): ổ đĩa D
    ổ cứng b, một phân vùng b1 (hdb1): ổ đĩa E
    ổ đĩa mềm: ổ A
    ổ đĩa CD-ROM: ổ F
    Ngược lại, trong Linux, mỗi ổ đĩa sẽ được gắn kết (mount) vào trong cây thư mục (Tree Directory) giống như là một thư mục bình thường:

    hda1: / (Root)
    hda2: /home
    hdb1: /home/user/music
    ổ đĩa mềm: /mnt/floppy
    ổ CD-ROM: /mnt/cdrom
    2. Hệ thống theo modul

    Trong Windows 98/2000/XP hay Mac OS X... mỗi hệ điều hành đều có một giao diện đồ hoạ GUI không giống nhau.Trong Linux, mỗi modul trong hệ thống là hoàn toàn độc lập với nhau, vì vậy người sử dụng có thể trộn lẫn và tự tạo ra hệ điều hành cho riêng mình.

    Không giống như hệ điều hành Windows của Microsoft, mọi thành phần đều kết nối và phụ thuộc lẫn nhau. Ngược lại, Linux lại cung cấp khả năng các chương trình làm việc độc lập với nhau, nếu chương trình này được gỡ bỏ thì các chương trình khác vẫn hoạt động tốt mà không gây ảnh hưởng gì. Chính vì khả năng phân chia modul như vậy mà HĐH Linux được phân phối bởi những người sử dụng hay các công ty lớn như RedHat, Xandros, Simply MEPIS và Suse... đều có thể tương thích với nhau.

    Trong Linux, các chương trình cũng có thể thay đổi lẫn nhau, mà giao diện đồ hoạ GUI cũng không phải là ngoại lệ. Muốn có giao diện giống với Windows XP? Hãy sử dụng FVWM với theme XP. Muốn nhanh hơn? Hãy dùng IceWM. Muốn có đầy đủ tính năng? GNOME hoặc KDE sẽ là thích hợp nhất. Tất cả những gói phần mềm về giao diện GUI đều có những thuận lợi và yếu điểm riêng, nhưng chúng cũng đều hỗ trợ người dùng tương tác tốt với chuột.

    3. Hỗ trợ phần cứng, phần mềm

    Phần cứng, phần mềm và mọi thứ trong Linux cũng mới chỉ xuất hiện trong vài năm gần đây. Với thời gian chỉ bằng một nửa so với Windows, nhưng các phần mềm cho Linux mạnh mẽ hơn, ổn định hơn, "ngốn" ít tài nguyên hơn, và chi phí thì rẻ hơn so với nền tảng Windows.

    Hỗ trợ phần mềm

    Tuy nhiên, điều mà Linux cần phải quan tâm là hiện nay chưa có nhiều nhà cung cấp phần mềm hỗ trợ Linux. Ví dụ nếu muốn sử dụng QuickBook của Intuit trên Linux, thì không thể. Mặc dù, cũng có nhiều dự án cho phép các ứng dụng Windows có thể chạy trên Linux, như CrossOver Office (cho phép chạy Office trên Linux) và Wine (giả lập môi trường Windows và các ứng dụng Windows có thể chạy trên Linux). Nhưng các phần mềm này không thể chạy tốt và ổn định như trong môi trường thực của nó, người sử dụng cần phải chờ đợi khi các hãng cung cấp phần mềm chính thức chuyển sang Linux thì mới có thể sử dụng tốt được.

    Hiện nay, cộng đồng mã nguồn mở đưa ra danh sách 15 000 chương trình hoạt động tốt trên Linux. Các phần mềm này đều miễn phí, chất lượng thì có thể khác nhau, nhưng hầu hết các chương trình đều viết rất tuyệt vời và có sự cải tiến đáng chú ý. Những phần mềm này có thể nhập và xuất các tập tin từ các định dạng của những phần mềm quen thuộc. Chẳng hạn, GNUCash có thể đọc các định dạng của QuickBook rất tốt, và OpenOffice.org có thể đọc tốt các định dạng tài liệu của bộ Micrsoft Office...

    Hỗ trợ phần cứng

    Để cài đặt phần cứng trên các máy tính Apple không đơn giản như trên Windows, và điều này cũng tương tự với Linux. Hầu hết các phần cứng ổ cứng, RAM, USB Flash, bo mạch chủ, card mạng và máy ảnh số đều làm việc tốt, nhưng một số phần cứng mới hoặc không được hỗ trợ thì rất khó cài đặt.

    Các trình điều khiển làm việc với phần cứng được viết cho Linux đều phải được cung cấp miễn phí cho các cộng đồng người sử dụng Linux, mà điều này các hãng sản xuất phần cứng không muốn. Do đó, có thể đây là một điểm yếu so với Windows bởi các công ty phần cứng có thể làm việc trực tiếp với Microsoft về tính tương thích, và có xu hướng để Linux tự tìm cách hỗ trợ các thiết bị đó bởi họ muốn giữ bản quyền về công nghệ của riêng mình. Một thông tin tốt là các nhà cung cấp phần cứng cho Linux cũng như phần mềm đều đang có chuyển biến tích cực và nhiều công ty cũng đang dần hỗ trợ Linux.

    Kết hợp giữa phần cứng, phần mềm trong các máy tính Linux là nhân hệ điều hành (kernel). Nhân hệ điều hành (HĐH) kết nối phần cứng và phần mềm, và những cập nhật mới nhất đều có sẵn trên Internet. Nếu đang sử dụng phần cứng mới và nhân HĐH cũ chưa hỗ trợ , hãy sử dụng phiên bản mới, đây cũng là một giải pháp sẽ giúp bạn vượt qua khó khăn. Để cài đặt nhân HĐH mới cũng không phải là quá phức tạp, tuy nhiên sử dụng trình quản lý các gói cài đặt sẽ đem lại sự đơn giản hơn.

    4. Trình quản lý gói cài đặt

    Thực ra có rất nhiều cách để cài đặt các chương trình Linux, nhưng cách dễ nhất là sử dụng trình quản lý cài đặt PM (Package Manager). PM đảm bảo chắc chắn rằng những tập tin bị mất đều được cài đặt lại và chương trình có thể chạy hoàn toàn chính xác, đúng yêu cầu.

    Các hãng cung cấp Linux thường sử dụng các kho dữ liệu trực tuyến để lưu trữ các chương trình. Cài đặt các ứng dụng cũng dễ dàng, chỉ cần tìm kiếm các chương trình trong kho dữ liệu và nhấn chuột vào Install là xong. Không thể tìm IceWM hoặc MPlayer trong danh sách cài đặt? Cũng có những cách khác để cài đặt một khi dữ liệu cho những chương trình mà bạn không tìm thấy, hãy truy cập vào các kho dữ liệu trực tuyến như Synaptic cho Debian, Yum cho RedHat, YaST2 cho SuSE và Emerge cho Gentoo.

    5. Quyền truy cập (Permission)

    Linux được thiết kế cho nhiều người sử dụng, những người sử dụng này lại được chia thành nhiều nhóm. Mỗi người sử dụng đều có quyền đọc (Read), ghi (Write), hoạc thực thi (Execute) cho những tập tin của riêng họ, và quyền hạn để chuyển đổi quyền truy cập. Bởi Linux được thiết kế cho nhiều người sử dụng, mỗi người sử dụng đều có mật khẩu riêng, và giới hạn quyền truy cập của người sử dụng (User Permissions).

    Một người dùng thuộc về một nhóm hoặc nhiều nhóm khác nhau, và mỗi người sử dụng có thể đặt quyền truy cập các tập tin/thư mục của họ có quyền đọc nhưng không thể ghi, hoặc kết hợp các R/W/X...

    Người dùng quản trị root, cũng giống như Administrator trong Windows, có quyền truy cập vào tất cả những tập tin và chỉ những người sử dụng có quyền hạn mới được phép thay đổi những thiết lập hệ thống. Điều này giúp những người sử dụng thông thường không thể cài đặt những phần mềm gián điệp vào hệ thống và xoá những tập tin quan trọng.

    6. Thư mục người dùng

    Trong Windows có My Documents, nhưng bạn thường "quăng" những tài liệu ở chỗ nào? Rất nhiều người sử dụng lưu chúng ngay trên Desktop của Windows. Linux cũng có thể làm như vậy, nhưng mỗi người sử dụng đều cho một thư người dùng riêng, thường đặt tại /home/user. Trong thư mục người dùng bạn có thể lưu các tài liệu trong thư mục Documents (/home/user/documents), các liên kết tới chương trình, âm nhạc (/home/user/Music), hoặc bất cứ những gì nếu muốn. Bạn có thể tạo các tập tin hoặc các thư mục ở đó, tổ chức chúng theo cách mà mình thích.

    7. Cài đặt mặc định

    Sự khác biệt giữa các bản Linux từ các hãng phân phối như: các tập tin cũng được lưu vào các đường dẫn khác nhau và các ứng dụng cài đặt cho mỗi bản Linux cũng khác nhau... Nếu so sách các tập tin hệ thống giữa Redhat và SuSE cũng có sự khác biệt rất lớn. Hầu hết người sử dụng đều không cần phải biết nhiều tới sự khác biệt này, nhưng những nhà sản xuất phần mềm cần phải nhận biết rõ điều này. Vì vậy, khi nhờ sự giúp đỡ, hãy cho người khác biết rõ bạn đang sử dụng Linux từ nhà cung cấp nào. Nếu gặp không phải những rắc rối, và không quan tâm về sự khác biệt giữa những cài đặt mặc định này, bạn cứ yên tâm sử dụng, đó là cách tốt nhất để tránh "nhức đầu".

    8 Giao diện dòng lệnh

    Giao diện dòng lệnh trong Linux CLI (Command Line Interface), cũng giống như DOS của Windows. Nhưng khả năng của CLI lại mạnh mẽ và rất hữu ích khi giải quyết những sự cố máy tính. Nếu cần trợ giúp từ Internet hoặc hỏi ai đó, bạn có thể sử dụng giao diện dòng lênh để giúp bạn mà không cần phải nạp các trình quản lý GUI.

    9.Tổ hợp Ctrl-Alt-Escape

    Nhấn tổ hợp phím Ctrl-Alt-Escape, biểu tượng con trỏ chuột sẽ thay đổi hình dáng thành biểu tượng X, hoặc một biểu tượng nào đó. Trong chế độ này, chỉ cần nhấn vào cửa sổ chương trình bị lỗi hoặc treo, lập tức ứng dụng đó sẽ bị "giết". Tổ hợp phím này cũng tương tự như khi sử dụng Task Manager trong Windows. Khi đổi ý, bạn chỉ cần nhấn Esc để thoát khỏi chế độ này. Cũng giống sử dụng Task Manager của Windows, khi sử dụng sai, rất có thể những lỗi nghiêm trọng sẽ xảy ra và khởi động lại máy là không thể tránh khỏi.

    10. Internet là người bạn thân

    Sử dụng Linux cũng không hề đơn giản. Tuy nhiên, "không biết thì phải hỏi", rất nhiều câu hỏi được đưa ra trên các diễn đàn (Forum) về cách sử dụng Linux, và những câu trả lời, những mánh lới... đều có sẵn cho bạn. Một địa chỉ hấp dân mà bạn hãy ghé qua như: www.LinuxQuestions.org là một trang Web lớn cung cấp cho bạn một kho dữ liệu vô giá về Linux.

    Lưu ý, trước khi đưa bất cứ một câu hỏi nào lên trang Web này hãy tìm kiếm các câu hỏi trong trang Web bởi rất có thể sẽ không phải đợi lâu, câu trả lời đã có sẵn ở đâu đó. Bạn cũng nên đọc qua những câu hỏi về một vấn đề hoặc một giải pháp khác nào đó, rất có thể chúng sẽ giúp ích cho vấn đề mà
  3. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Làm quen với cấu trúc file của Linux

    Làm quen với cấu trúc file của Linux
    Nhìn "bề nổi" thì cấu trúc và cách tổ chức file của Linux cũng không khác DOS/Windows và các Hệ điều hành khác là mấy. Chỉ có một điểm khác biệt lớn mà bạn cần phải chú ý là cấu trúc thư mục của Linux KHÔNG phân chia thành các ổ đĩa. Cho dù bạn có bao nhiêu ổ đĩa thì tất cả đều bắt đầu từ một thư mục gốc có tên là /. Sau đó là đi vào các thư mục con, mỗi ổ đĩa của bạn sẽ được "map" (ánh xạ) vào một thư mục con riêng biệt (thư mục nào thì còn tuỳ vào phiên bản của Linux và cũng tuỳ bạn qui định).

    Thêm 3 điểm khác biệt nhỏ nữa mà bạn cần phải để ý là



    - Trong đường dẫn của Linux, các thư mục được phân cách nhan bằng ký hiệu / (trong khi với DOS/Windows là ký hiệu \);

    - Và các tham số của lệnh trong Linux được bắt đầu bằng dấu trừ (-) (VD: ls -l) trong khi với DOS/Windows là ký hiệu / (VD: dir /a); các tham số của Linux có thể được dùng kết hợp với nhau (VD: ls -al, ls -ls...)

    - Cuối cùng, Linux khác với Windows ở chỗ Linux phân biệt chữ hoa và chữ thường, trong Linux abc và Abc là khác nhau.

    Một số phím/tổ hợp phím bạn cần biết

    Ctrl-C: bạn hãy nhớ kỹ tổ hợp phím này. Trong trường hợp bạn cảm thấy "có cái gì đó bất ổn" xảy ra, hay là chương trình bạn chạy không chịu dừng thì bạn hãy thử nhấn tổ hợp phím này. 99% chương trình của Linux chạy trên chế độ text đều có thể được/bị kết thúc bằng tổ hợp phím này.

    Ctrl-Alt-Del: tương tự như trong DOS. Tổ hợp phím này sẽ khởi động lại máy tính.

    Ctrl-D: khi một chương trình yêu cầu bạn nhập dữ liệu từ bàn phím, bạn có thể nhấn tổ hợp phín này để báo cho chương trình biết là quá trình nhập dữ liệu đã kết thúc. Tổ hợp phím này sẽ gởi tín hiệu EOF (End Of File) đến chương trình.. Nếu nhấn Ctrl-D mà không thấy "xi nhê", bạn thử gõ vào EOF (ba chữ cái E, O và F) rồi nhấn Enter (phím Enter).

    ESC: đây là phím Esc ở góc trái, phía trên của bàn phìm, trước khi nhấn Ctrl-C để kết thúc chương trình, bạn hãy thử nhấn ESC trước xem sao.

    ENTER: đây là phím Enter trên bàn phím, chắc là tôi khỏi phải giới thiệu về chức năng của phím này nữa chứ nhỉ?

    Một số lệnh căn bản của Linux

    Các lệnh được trình bày sau đây tôi sẽ cố gắng so sánh nó với một lệnh tương tự trong DOS để nếu như bạn đã biết qua các lệnh của DOS rồi thì sẽ dễ hiểu hơn. Còn nếu bạn chưa từng biết qua các lệnh của DOS? Cũng không sao, bạn sẽ biết được thêm cùng 1 lúc các lệnh của Linux và DOS. Chú ý, đây là các lệnh trong chế độ text và được gõ từ bàn phím. Các lệnh phải được gõ chính xác (vì Linux phân biệt giữ chữ hoa và chữ thường!). Và dĩ nhiên là sau khi gõ xong một lệnh thì bạn đừng quên nhấn Enter để Linux bắt đầu thực hiện lệnh đó! :) Lưu ý thêm là những gì tôi ghi giữa 2 ngoặc nhọn (< và >) là bắt buộc phải có, giữa hai ngoặc vuông (< và >) là tuỳ chọn (không bắt buộc).

    Lệnh Công dụng - Cách dùng - Cú pháp

    man đây có lẽ là lệnh mà bạn cần phải nhớ kỹ (đừng bao giờ quên!). Lệnh này tương tự như lệnh Help trong DOS. man sẽ hiển thị các thông tin chi tiết về cộng dụng, cách dùng và cú pháp của một lệnh khác (dĩ nhiên là các thông tin đều bằng tiếng Anh).

    Cú pháp: man <tên_lệnh_khác>

    Ví dụ: man ls

    Và bạn hoàn toàn có thể gõ man man để hiển thị các thông tin giúp đỡ về chính lệnh man!

    Lưu ý: để thoát (kết thúc) lệnh man, bạn hãy gõ vào ký tự hai chấm (1.gif sau đó gõ tiếp ký tự q. Nếu không thành công, bạn hãy nhấn phím ESC và thử lại lần nữa. Bạn cũng có thể nhấn Ctrl-C để thoát khỏi man.

    ls lệnh này tương tự như lệnh dir trong DOS. ls sẽ liệt kê danh sách tất cả các file và thư mục nằm trong một thư mục mà bạn chỉ định.

    Cú pháp chung: ls

    Nếu như bạn cung cấp phần thư_mục thì ls sẽ liệt kê các file trong thư mục hiện tại.

    Ví dụ:

    ls

    ls -a

    ls -al /usr

    Một số tham số của ls như sau:

    -a: liệt kê tất cả các file, kể cả file ẩn, là những file mà tên bắt đầu bằng dấu chấm (.)

    -A: liệt kê tất cả các file, kể cả file ẩn, nhưng không liệt kê . và .., đây tên của thư mục hiện tại và thư mục cha trong Linux.

    -l: liệt kê chi tiết về file (bao gồm các thông tin như thời gian tạo, kích thước, thuộc tính...).

    Bạn hãy tự mình tìm hiểu thêm về các tham số khác của ls nhé! (dùng man ls). Và đừng quên dùng man cho các lệnh tiếp theo.

    cd lệnh này tương tự như lệnh cd trong DOS. Dùng để chuyển tới một thư mục khác.

    Cú pháp: cd

    Ví dụ: cd /home

    Nếu bạn không cung cấp tên_thư_mục thì cd sẽ đưa bạn về thư mục "tổ ấm" (home directory) của bạn. Trong Linux, mỗi người sử dụng đều có một home directory. Nếu username của bạn là nbthanh thì home directory của bạn sẽ là /usr/nbthanh. Riêng account root sẽ có home directory là /root.

    pwd lệnh này tương tự như lênh cd (không có tham số) trong DOS. Lệnh này sẽ hiển thị lên màn hình cho bạn biết là bạn hiện đang ở thư mục nào.

    Cú pháp: pwd

    mkdir tương tự như lệnh md của DOS. Lệnh này dùng để tạo một thư mục mới.

    Cú pháp: mkdir <tên_thư_mục_muốn_tạo>

    Ví dụ:

    mkdir mydir

    mkdir /tmp/mydir2

    rmdir tương tự như lệnh rm trong DOS, dùng để xoá một thư mục.

    Cú pháp: rmdir <thư_mục_muốn_xoá>

    Ví dụ:

    rmdir mydir

    rmdir /tmp/mydir2

    rmdir /tmp/*

    Lưu ý: bạn chỉ có thể xoá được thư mục nếu như nó rỗng, nghĩa là nó không chứa một file hoặc thư mục con nào nữa (ngoài . và ..).

    cp tương tự như lệnh copy của DOS, dùng để chép file hoặc thư mục từ nơi này đến nơi khác.

    Cú pháp: cp <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>

    Ví dụ:

    cp /tmp/myfile.txt myfile.text

    cp /home/*.cgi ./

    cp -r /usr/nbthanh1 /usr/nbthanh2

    Mặc định thì cp chỉ chép các file, nếu bạn thêm tham số -r thì cp sẽ chép luôn các thư mục.

    rm tương tự như lệnh del trong DOS, lệnh này dùng để xoá file.

    Cú pháp: rm <tên_file_muốn_xoá>

    Ví dụ:

    rm myfile.txt

    rm /usr/nbthanh/nbtfile.txt

    rm /tmp/*

    mv tương tự như lênh move (ngoại trú) của DOS. Lệnh này sẽ di chuyển/đổi tên file từ nơi này đến nơi khác.

    Cú pháp: mv <file_hoặc_thư_mục_nguồn> <file_hoặc_thư_mục_đích>

    Ví dụ về di chuyển:

    mv /tmp/myfile.txt /usr/nbthanh

    mv myfolder /tmp

    mv /usr/* /tmp

    Ví dụ về đổi tên, vừa di chuyển vừa đổi tên:

    mv myfile1.txt myfile2.txt

    mv /usr/oldfoler ./newfolder

    cat tương tự như lệnh type của DOS. Lệnh này dùng để hiển thị nội dung của 1 file lên màn hình.

    Cú pháp: cat <tên_file_cần_hiển_thị>

    Ví dụ:

    cat myfile.txt

    cat /tmp/temp.text

    Vậy là đã xong, tôi đã trình bày với bạn một số lệnh căn bản nhất của Linux. Bạn tự mình ra bài tập và thực hành nhé! Có thể bạn sẽ thắc mắc là tại sao không có lệnh nào tương tự như copy con trong DOS? Vâng đúng là như vậy, trong Linux, để tạo file thì bạn phải dùng một chương trình cụ thể (như một chương trình soạn thảo văn bản chẳng hạn) chứ không có lệnh tương tự nhu copy con của DOS

    Làm quen với Linux

    Linux là hệ điều hành đa người dùng, nghĩa là nhiều người có thể truy cập và sử dụng 1 máy tính cài Linux. Mỗi người muốn sử dụng được máy tính cài Linux thì phải có 1 account đã được đăng ký. Một accout gồm có 1 username và 1 password. Hai người khác nhau sẽ có 2 username khác nhau (nhưng password thì có thể trùng nhau). Để có thể bắt đầu thao tác và sử dụng, người dùng phải thực hiện thao tác đăng nhập (login và hệ thống). Quá trình này tóm gọn lại là 2 thao tác nhập vào username và password. Username và password cũng phân biệt chữ hoa và chữ thường. Và khi nhập vào password, trên màn hình sẽ không hiển thị bất cứ ký tự nào.

    Linux có 1 account đặc biệt là account root. Đây là user có cấp cao nhất, có toàn quyền "sinh sát" đối với toàn hệ thống.

    Mỗi người dùng trên Linux được cấp một thư mục riêng (gọi là home directory), là một thư mục con của /usr. Có dạng /usr/username; nghĩa là nếu username bạn là nbthanh thì home directory của bạn là /usr/nbthanh. Riêng đối với accout root thì home directory là /root. Các user có thể cùng thuộc một nhóm (group) hoặc là khác nhóm; các user trong cùng một nhóm thì có quyền hạn như nhau. Thường thì tất cả các user đều thuộc vào nhóm User (trừ root và các account dành riêng cho hệ thống).

    User chỉ có quyền thao tác trong home directory của mình (và những thư mục khác được phép của hệ thống) mà thôi. User này không thể truy cập vào home directory của user khác (trừ trường hợp được chính user đó hoặc root cho phép). Mỗi tập tin (file) và thư mục trên Linux đều được "đăng ký chủ quyền", nghĩa là thuộc về một user và nhóm nào đó. Thường thì tập tin và thư mục được tạo bởi user nào thì sẽ thuộc về user đó. VD username của bạn là nbthanh, bạn thuộc nhóm user và bạn tạo ra 1 tập tin có tên là myfile.txt thì tập tin myfile.txt sẽ được đánh dấu là "người sử hữu: nbthanh; thuộc về nhóm: user". Những user khác không thể truy cập được myfile.txt nếu không được phép của bạn. Bạn hoàn toàn có thể thay đổi "chủ sở hữu" của tập tin/thư mục bằng các lệnh của Linux. Bạn hoàn toàn có thể đặt myfile.txt thuộc về user nbthanh nhưng lại thuộc về nhóm guests (mặc dù user nbthanh không nằm trong nhóm guests).

    Một số lệnh căn bản của Linux

    Đây là các lệnh trong chế độ text và được gõ từ bàn phím. Các lệnh phải được gõ chính xác (vì Linux phân biệt giữ chữ hoa và chữ thường!). Sau khi gõ xong một lệnh bạn đừng quên nhấn Enter để Linux bắt đầu thực hiện lệnh đó! :) Lưu ý thêm là những gì tôi ghi giữa 2 ngoặc nhọn (< và >) là bắt buộc phải có, giữa hai ngoặc vuông (< và >) là tuỳ chọn (không bắt buộc). Và cuối cùng: đừng quên dùng lệnh man để xem thêm thông tin hướng dẫn về các lệnh

    Lệnh Công dụng - Cách dùng - Cú pháp

    exit

    logout trong text mode, Linux cung cấp cho bạn 6 desktop (tty1...tty6) để làm việc. Bạn có thể bật chuyển qua lại giữa các desktop bằng cách nhấn tổ hợp phím Alt-F1...Alt-F6. Hai lệnh exit và logout kết thúc phiên làm việc của desktop hiện tại và trở về màn hình login.

    Cú pháp:

    exit

    logout

    chown lệnh này dùng để thay đổi "chủ sở hữu" của 1 tập tin hay thư mục, tức là gán cho tập tin hoặc thư mục chỉ điịnh thuộc về quyền sở hữu của một user nào đó.

    Cú pháp:

    chown username<.groupname> <tên_file_hoặc_thư_mục>

    chown .groupname <tên_file_hoặc_thư_mục>

    Bạn cung cấp username thì file/thư mục sẽ được đặt là thuộc quyền sở hữu của username đó. Nếu bạn cung cấp groupname thì file/thư mục sẽ thuộc về nhóm groupname đó. Hai phần này độc lập với nhau, thay đổi quyền sở hữu user sẽ không làm thay đổi quyền sở hữu group và ngược lại.

    Ví dụ: có file guestfile.txt thuộc về user abc thuộc về group guests, có một user nbthanh thuộc về nhóm moderators, file myfile.txt thuộc về quyền sở hữu của nbthanh và thuộc về nhóm moderator.
  4. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Cài đặt các ứng dụng từ mã nguồn trên Linux

    Cài đặt các ứng dụng từ mã nguồn trên Linux
    Có nhiều bạn khi lần đầu tiên đến với Linux cảm giác sự khó khăn và bất tiện của việc cài đặt các ứng dụng trên Linux, đặc biệt là các ứng dụng phải cài đặt từ mã nguồn như xine, openGL...

    Trên Windows, bạn chỉ cần tải ứng dụng về, giải nén rồi click vào file setup là hoàn tất việc cài đặt, nhưng trên Linux đó là một chuyện hoàn toàn khác. Bài viết này sẽ nhằm mục đích hướng dẫn bạn các thao tác cài đặt các phần mềm ứng dụng trên Linux và cung cấp các kiến thức căn bản giúp bạn có thể quản lý hệ thống của riêng mình

    Bài viết sẽ giả sử rằng bạn đã biết cách sử dụng một số phần mềm quản lý gói như rpm. Để dễ dàng thì bài viết sẽ gọi các phần mềm trên Linux là các gói (package). Thực tế tên gọi 'gói' đúng đắn hơn vì các gói trên Linux có thể không phải là một trình ứng dụng nào đó mà chỉ là các thư viện nền như thư viện đồ họa Gtk+ hoặc OpenGL...


    1. Giới thiệu

    Bạn có thể sẽ tự hỏi rằng tại sao các phần mềm trên Linux không tự đóng gói sẵn cho chúng ta rồi khi xuất bạn chỉ cần tải về và cài đặt nó. Câu trả lời nằm ở 2 vấn đề, vấn đề thứ 1 là các phần mềm viết trên Linux không hẳn chỉ có thể chạy trên Linux mà có thể chạy trên nhìều hệ thống khác nhau trong họ Unix như Solaris, AIX, HP-UX... thậm chí các phần mềm đó có thể chạy trên rất nhiều vi xử lý khác nhau như Intel, Motorola, PPC... Có được sự đa năng đó là nhờ vào tính đa nền (portable) của ngôn ngữ C/C++ nhưng đòi hỏi chúng ta phải biên dịch lại phần mềm từ mã nguồn cho hệ thống mà chúng vận hành. Bạn sẽ tự hỏi là tại sao các nhà phát triển lại không biên dịch sẵn cho chúng ta trên hệ thống thông dụng nào đó như Linux chẳng hạn.

    Câu trả lời là bởi vì các phần mềm này là phần mềm mã nguồn mở và các nhà phát triển không có cách gì hơn là để lại phần biên dịch cho chúng ta. Tuy nhiên bạn đừng thất vọng vì có một số nhà phát triển rất là tốt bụng có thể biên dịch sẵn cho chúng ta ra các gói có dạng rpm và cùng với sự hỗ trợ của công ty Red Hat chúng ta cũng đã có những chương trình quản lý các phần mềm hiệu quả không kém gì trên Windows như RPM (Redhat Package Manager). Mặc dù là thế nhưng không phải lúc nào các gói mới nhất từ các nhà phát triển gốc đều có phiên bản biên dịch sẵn mà thường là một khỏang thời gian sau các phiên bản đó mới có được dưới dạng biên dịch sẵn. Bên cạnh đó còn có rất nhiều nhà phát triển không hề biên dịch sẵn sản phầm của mình mà đòi hòi người dùng phải biên dịch, điển hình là trình chơi phim và nhạc xine. Các gói biên dịch sẵn các bạn có từ xine đa số là từ các nhà phát triển khác. Do đó nếu bạn không bạn không biết cách cài đặt các gói từ nguồn là một trở ngại rất lớn cho việc hiểu và quản trị hệ thống của riêng mình.

    2. Căn bản của việc cài đặt

    Điều đầu tiên khi bạn tiến hành cài đặt là bạn phải có mã nguồn của gói đó trước. Hãy lên mạng search bất kì gói nào bạn thích như thư viện Gtk+ hoặc Gnome... Sau khi tải về, thông thường có dạng là .gz hoặc .bz2, đây đều là 2 chuẩn nén khác nhau, sau khi giải nén bằng gunzip cho gz hoặc bunzip2 cho bz2 thì các gói sẽ có dạng mới là tar, cũng là một chuẩn nén khác, bạn có thể giải nén bằng lệnh, tar -xvf... Thế nhưng đế dễ dàng và tiết kiệm dung lượng ổ đĩa thì chúng ta có thể gộp các câu lệnh đó thành 1 như sau:

    - Đối với gói .gz: # tar -zxvf tengoi.gz
    - Đối với gói .bz2: # tar -jxvf tengoi.bz2

    Sau khi giải nén xong và tìm tập tin INSTALL để đọc cụ thể cho phần hướng dẫn cài đặt. Thế nhưng hầu như các gói đều tuân theo các thao tác tuần tự sau:

    # ./configure
    # make
    # make install

    Chỉ có vài gói đặc biệt sẽ có riêng cách cài đặt nhưng khi bạn đã nắm vững nguyên tắc chung thì dù là cách thức nào bạn cũng có thể xoay xở được. Chúng ta hãy xét đến câu lệnh đầu tiên, ./configure... Thực chất configure là một shell script sẽ kiểm tra những yêu cầu của hệ thống của bạn có đáp ứng đủ để cài đặt gói lên không, ví dụ như một số gói đòi hỏi bạn phải có sẵn thư viện đồ họa Gtk 2.4 trở lên hoặc là thư viện để giải nén nhạc Mp3...

    Rất nhiều gói có sự phụ thuộc như thế chứ các gói khi tải về không hề có sẵn các gói tương ứng cần thiết cho nó. Khi bạn chạy configure xong kết quả sẽ cho bạn biết các gói nào cần thiết để cài đặt. Nhiệm vụ của bạn không gì hơn là phải tìm các gói phụ thuộc đó cài lên máy rồi mới tiếp tục việc cài đặt. Nếu như hệ thống của bạn thỏa mãn đầy đủ các yêu cầu để cài đặt thì các Makefile sẽ được tạo ra. Makefile là một file đặc biệt của tiện ích make nhằm hướng dẫn biên dịch mã nguồn của gói ra dạng thực thi.

    Sau khi bạn thực thi lệnh 'make' xong thì toàn bộ mã nguồn của gói đã được biên dịch sang dạng thực thi nhưng các file thực thi vẫn còn nằm trên thư mục hiện hành. Do đó bạn cần phải thực hiện thêm lệnh 'make install' để chép các file thực thi đó sang đúng vị trí của nó trên hệ thống. Nếu như không có thông báo lỗi gì xảy ra thì bạn đã hòan tất việc cài đặt gói lên hệ thống của mình.

    3. Tổ chức các file trên hệ thống

    Bạn hoàn toàn biết thư mục trên Linux thì thư mục /usr là thư mục quan trọng nhất vì nó sẽ chứa các chương trình và hàm thư viện trên đó. Trong thư mục /usr/bin là sẽ chứa các file thực thi cho các gói bạn đã cài đặt trên máy, các file trong thư mục này bạn sẽ thấy các file rất quen thuộc như mozilla, gedit .v.v... Thư mục /usr/lib sẽ chứa các hàm thư viện, bạn sẽ thấy rất nhiều files có phần mở rộng là .so (shared object) là các hàm thư viện liên kết động hoặc .a (archive) hoặc .la đều là các hàm thư viện liên kết tĩnh. Đặc tính căn bản của 2 dạng thư viện này là hàm thư viện liên kết tĩnh sẽ được liên kết thẳng với files thực thi luôn trong quá trình liên kết, còn hàm thư viện liên kết động thì sẽ được liên kết trong quá trình thực thi, cho nên sau khi chương trình đã được biên dịch và liền kết rồi các thư viên tĩnh chúng ta có thể bỏ đi nhưng thư viện liên kết động thì bắt buộc phải đi kèm với chương trình. Thư mục /usr/share sẽ chứa các icon, manual hoặc info của gói.

    4. Loại bỏ một gói

    Nếu bạn mong muốn lọai bỏ một gói đã cài đặt trên hệthống thì cách duy nhất là bạn phải vào lại thư mục mã nguồn của gói và gõ lệnh make 'uninstall'... thông thường bạn sẽ có các câu lệnh sau: 'make clean' 'make distclean'... Các câu lệnh có ý nghĩa rất tương đối và được định nghĩa trong tập tin Makefile, nên đầu tiên bạn cứ thử với 'make uninstall' rồi 'make clean' cái cuối cùng 'make distclean' là giúp bạn xóa hết các tập tin đã biên dịch ở thư mục nguồn và đồng thời xóa Makefile, bạn phải chạy lại ./configure để tạo lại Makefile.

    5. Quản lý các gói

    Do việc xóa bỏ một gói như trên rất là phiền phức đôi lúc bạn chẳng thể xóa bỏđược nếu như mất đi mã nguồn, cho nên bạn có thể thay vì cài nó vào thư mục mặc định là /usr thì bạn có thể cài vào các thư mục của riêng bạn, ví dụ như bạn có thể tạo thư mục '/soft'... Sau đó để cài gói gedit thì bạn tạo thêm thư mục /soft/gedit và dùng lệnh ./configure... bạn thêm tùy chọn sau:

    ./configure --prefix=/soft/gedit

    Thì khi bạn gõ make install sẽ copy toàn bộ sang thư mục /soft/gedit. Khi bạn muốn xóa toàn bộ gói thì chỉ đơn giản xóa đi thư mục đó thôi. Lưu ý là khi bạn cài vào thư mục riêng của mình rồi bạn phải tạo 2 đường dẫn cho 2 biến môi trường (environment variable) LD_LIBRARY_PATH và PKG_CONFIG_PATH.

    LD_LIBRARY_PATH sẽ có đường dẫn đến thư mục lib của gói vừa tạo (ví dụ như /soft/gedit/lib) còn PKG_CONFIG_PATH sẽ có đường dẫn đến thư mục pkg_config trong thư mục lib (ví dụ như /soft/gedit/lib/pkg_config). Bên cạnh đó nếu bạn muốn chương trình gọi tự động thì bạn cũng nên thêm vào biến PATH cho gói của mình.

    6. Lời kết

    Đối với cách cài trên thì bạn dể dàng quản lý các gói của mình nhưng đối với các dạng thư viện thì bạn nên cài nó vào thư mục /usr hơn là thư mục riêng của mình vì một số gói sẽ tìm các thư việc trên thư mục mặc định /usr và /usr/local hơn là các thư mục riêng người dùng nên nếu bạn cài lên thư mục riêng thì đôi lúc các thư viện đó sẽ không được tìm ra. Thông thường lệnh ./configure đi đôi với rất nhiều tùy chọn cho phép bạn lựa chọn nhiều tính năng khác nhau, bạn hãy gỏ ./configure --help để mà biết đầy đủ các tùy chọn của gói
  5. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Sử dụng các lưu trữ nén RAR và 7-Zip trong Linux

    Sử dụng các lưu trữ nén RAR và 7-Zip trong Linux
    Định dạng file nén RAR và 7-Zip có nguồn gốc từ Windows và không được hỗ trợ tự động trong Unix như Gzip và TAR trước đây. Nhưng với một phần mềm chuẩn, bạn có thể sử dụng các file này mà không gặp phải phiền phức gì.

    Trước hết chúng ta làm quen với một số điểm cơ bản. RAR, tên viết tắt của Roshal Archive, là định dạng file nén có bản quyền do Eugene Roshal phát triển. Trước đó, Roshal đã bán tiện ích thương mại có tên WinRAR cho Windows, đồng thời cũng cung cấp miễn phí bản client chỉ giải nén cho một số hệ điều hành.


    7-Zip là một ứng dụng Windows, được thiết kế để quản lý hầu hết các kiểu file nén. Định dạng tự nhiên của nó là 7z, sử dụng một nhánh thuật nén hiện đại của LZ77. Ứng dụng Windows 7z và bộ phát triển phần mềm đều đã được cung cấp với tên LGPL.

    Hai kiểu định dạng này tạo tỷ lệ nén tốt hơn nhiều cho các kiểu dữ liệu phổ biến so với một số thuật toán cũ. Chúng cũng hỗ trợ phân tách các lưu trữ lớn thành nhiều bộ nhỏ hơn nhằm di chuyển và khôi phục lỗi dễ dàng. Sự kết hợp cả hai định dạng khiến chúng trở thành lựa chọn số một cho phân phối trực tuyến của các file cực lớn như ảnh ISO 7z và Linux.

    7z và Linux
    7-Zip là ứng dụng mã nguồn mở, nhưng chỉ dành cho kiểu file Windows. Với người dùng Linux, các liên kết dự án với gói client command-line được đặt tên p7zip cung cấp hai thực thi: 7z và 7za. Cả hai có cùng cú pháp và tuỳ chọn, chỉ khác ở chỗ 7za là ứng dụng "tự chứa" chỉ được dùng cho 7z và một số định dạng Unix chủ yếu (tar, gzip, bzip2, v.v…). Còn 7z dùng cấu trúc plug-in, cho phép hỗ trợ nhiều định dạng nén bổ sung khác.

    Cú pháp cơ bản: 7z function options ten_file.7z. Để giải nén một lưu trữ, dùng 7z x ten_file.7z. Bạn cũng có thể giải nén file bằng cách: 7z e ten_file.7z . Trong đó, hàm e có thể giải nén tất cả file vào thư mục hiện tại đang hoạt động, còn x duy trì đường dẫn của chúng.

    RAR và Linux

    Trường hợp của RAR thì phức tạp hơn một chút do nó có bản quyền của định dạng file. Trên website RARLAB cung cấp phiên bản chỉ dùng giải nén có bản quyền nhưng miễn phí cho khách hàng Linux, gọi là unrar. Bản này được thiết kế cho phân phối Intel 32-bit trong cả hai gói RPM, Slackware; như các mã nhị phân độc lập cho hệ thống Intel 64-bit, PowerPC; và các hệ thống Linux ARM. Chương trình unrar của RARLAB được cung cấp thành phần mềm miễn phí và phần mềm nguồn mở nên bạn sẽ không thấy bất kỳ phân phối Linux nào có tích hợp nó trong hệ điều hành. Bạn có thể download một đoạn mã nguồn tarball trên RARLAB, nhưng quy định bản quyền kèm theo cấm bạn dùng nó để phát triển bất kỳ chương trình mã hoá RAR nào.

    Một lựa chọn khác là công cụ dòng lệnh có bản quyền GPLv2, do dự án Gna! phát triển. Gna! urar được thiết kế như một bộ bọc quanh unrarlib, thư viện mã hoá RAR nguồn mở do Christian Scheurer và Johannes Winkelmann, những người không thuộc Gna! phát triển.
    Scheurer và Winkelmann phát triển thư viện unrarlib từ mã nguồn RARLAB nguyên bản ban đầu, nhưng vẫn phải cần các quyền do Eugene Roshal cho phép để trở thành phần mềm miễn phí. Do đó, có thể hiểu unrarlib được phát triển từ GPLv2 và bản quyền ban đầu của RARLAB.

    Hợp đồng bản quyền này có vẻ là con đường thú vị để thực hiện phần mềm chạy cuối quanh RARLAB và tạo chương trình mã hoá RAR tin học từ mã nguồn ban đầu, nhưng cho tới nay điều này vẫn chưa diễn ra. Sheurer không cảm thấy thích thú với ý tưởng này. Tác giả nói rằng, anh thích dùng các định dạng nguồn mở để tạo lưu trữ hơn. "Không phải lúc nào bạn cũng có thể lựa chọn được kiểu định dạng dữ liệu. Vì thể, thật tuyệt nếu có cách thức mở để truy cập nó. Nhưng bạn có thể chọn cách tạo ra một lưu trữ. Nếu không muốn sử dụng các công cụ nén nguồn đóng, có nhiều lựa chọn khác cho bạn".

    Chương trình giải nén unrar có bản quyền sử dụng cú pháp cơ bản như 7z và 7za. Để giải nén, lưu trữ và duy trì đường dẫn file, gõ unrar x ten_file_luu_tru.rar. Trong GPL unrar, bạn cần thêm một dấu nối trước x: unrar -x ten_file_luu_tru.rar.

    Hiện nay, thư viện unrarlib chỉ hỗ trợ phiên bản 2 (version 2) của định dạng file RAR. Sắp tới đây, định dạng RAR3 mới hơn có thể sẽ được hỗ trợ trong unrarlib, nhưng Scheurer nói rằng, anh không chắc có thể hy vọng một số kích hoạt lại từ RARLAB.

    Hỗ trợ giao diện người dùng GUI

    Nếu bạn thực hiện được hầu hết mọi việc trên chương trình Window Manager của Linux, bạn thật may mắn. Cả GNOME và KDE đểu có các chương trình quản lý lưu trữ đồ hoạ. File Roller cho GNOME và Ark cho KDE. Hầu hết mọi phiên bản gần đây của cả hai chương trình đều dùng cơ chế plug-in, hỗ trợ nhiều định dạng lưu trữ khác nhau và dựa trên p7zip để hỗ trợ cho 7z, dựa trên Gna! unrar hỗ trợ cho RAR. Mặc dù vậy, để giải quyết vấn đề không tương thích của các file RAR3 mới, bạn vẫn cần cài đặt chương trình unrar có bản quyền trên máy của mình.

    Như đã đề cập đến ở phần đầu, cả 7z và RAR đều hỗ trợ phân tách các file lớn thành nhiều phần nhỏ hơn. Nhưng trong chương trình kiểm tra, cả File Rooler và Ark đều nhận ra rằng một thư mục đầy đủ với các file được đánh số lần lượt myfile.7z.001, myfile.7z.002, myfile.7z.003, v.v… tạo một file 7z phân tách thành các đoạn có kích thước theo bite.

    Do đó, để có dữ liệu bên trong, bạn cần liên kết các file phân tách lại thành một file hoàn chỉnh trên dòng lệnh, sử dụng lệnh cat: cat ten_file.7z.001 ten_file.7z.002 ten_file.7z.003 > ten_file.7z. Một file hoàn chỉnh gắn lại từ các phần sẽ được tạo, đặt tên là ten_file.7z. Tại thời điểm đó, bạn có thể mở lưu trữ trong File Roller hoặc Ark. Nhưng sẽ nhanh hơn nếu gõ 7z x ten_file.7z.
  6. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Một số tiện ích cơ bản cho Linux Admin

    1. Quản trị packages

    - rpm
    dùng để install, update, xem thông tin ... các gói packets

    vd: rpm -ivh <package_name.rpm> : cài đặt
    rpm -Uvh <package_name.rpm> : cập nhật
    rpm -qvl <package_name.rpm> : xem thông tin chi tiết

    - yum
    : trình dùng để cài đặt, và cập nhật gói tin qua mạng Internet ( yêu câu máy bạn phải kết nối Internet, và cài packet yum, thường ở fedora, gói này được cài theo mặc định )

    Trước khi sử dụng, bạn phải edit file /etc/yum.conf để chỉ ra nơi mà yum sẽ tìm các package.

    vd : yum install <package_name>
    yum update <package_name>
    yum search <package_name>

    Tham khảo thêm http://www.fedorafaq.org/#installsoftware
    Trang chủ: http://linux.duke.edu/projects/yum/ Tips: Để tìm kiếm .rpm :
    http://rpmseek.com : trang tìm kiếm
    google với keyword: inurl:fedora "index of" ( với packages cho fedora)

    - install from source code


    Các chương trình trên *nix thường ở 2 dạng : mã nguồn ( .tar, .tar.bz, .tar.gz... ) và dạng đóng gói ( .rpm với Redhat, fedora, .deb với Debian )
    Trên tôi đã nói về cách cài đặt với loại đã đóng gói. Giờ tôi sẽ nói thêm về cài đặt qua mã nguồn.

    -- Chuẩn bị: trước khi cài đặt bạn phải có mã nguồn của chương trình, có thể tìm kiếm trên Internet

    Tips: http://sourceforge.net
    http://freshmeat.net
    google với từ khóa: inurl:<package_name> "index of"

    Sau đó giải nén vào thư mục ( thường là /tmp ). Các bước cài đặt phổ biến là:
    . ./configure ( có thể tùy biến một số module trên lệnh này )
    . make
    . make install

    2. Quản trị hệ thống

    - netstat

    dùng để xem các "kết nối" tới server của mình. Các kết nối này có thể ở trong các trạng thái establish, time_wait, closed_wait, fin_wait, ... chi tiết xem bài " Bảo mật ứng dụng phần mềm mã nguồn mở của anh mrro )
    vd: netstat
    netstat | grep 80 : xem những kết nối đến port 80
    netstat | grep 80 | wc -l : tổng số kết nối đến port 80
    netstat -p | grep 0.0.0.0:80 | grep LISTENING : xem pid của dịch vụ httpd.

    - uptime
    : hệ thống đã chạy được bao lâu và tải trung bình ( load average )

    - top
    : theo dõi các process trên hệ thống cùng với CPU, memory sử dụng( process nào đang chạy, process nào đang free); đồng thời xem lượng CPU, memory, swap sử dụng, còn free.

    Để xem help, gõ "top", rồi ấn "h".

    - ps

    ps giúp bạn hiển thị các tiến trình hiện tại đang chạy ( currently running process ) trên hệ thống. Nó cũng tương tự như "Task_manager' bên Windows. Bên cạnh các process, ps cũng hiển thị các "process id" tương ứng, từ các id này bạn có thể stop một process bất kì thông qua lệnh kill ( kill <process_id> , chi tiết gõ "man kill" )

    vd: ps -aux : hiển thị tất cả các process cùng với thông tin chi tiết về nó
    ps -U <username> : hiển thị các process được khởi động bởi người dùng username

    - /sbin/service

    /sbin/service giúp bạn quản trị các dịch vụ đã cài đặt trong hệ thống, vd vsftpd, httpd, snmpd, postfix, iptables, smb ... các dịch vụ này được liệt kê trong /etc/rc.d/init.d.

    Cấu trúc ( phổ biến ): /sbin/service <service_name> start | stop | restart | status ( status để xem dịch vụ này đang ở trạng thái gì, start, hay stop )

    vd: /sbin/service httpd status
    /sbin/service iptables start

    Note: xem thêm "chkconfig"

    - kill
    : công cụ này dùng để kill ( diệt ) tiến trình dựa vào "process id" của nó ( process id dựa vào netstat -p hay ps -aux ở trên ). Kill có nhiều mức, mức 9 là mạnh nhất ( tôi sẽ ko đi sau về nó, chi tiết bạn xem man )

    vd: kill 19345
    kill -9 19345

    - /sbin/setup


    Đây là tiện ích cho phép bạn setup một số thao tác quản trị qua giao diện menu rất trực quan và dễ dàng, bao gồm: thiết lập địa chỉ IP ( subnet mask, default gateway, dns, ... ), thiết lập firewall, thiết lập các xác thực ...

    - ifconfig

    đây là tool cho phép bạn cấu hình hay hiển thị cấu hình các địa chỉ IP cho các interface ( giao diện mạng ). Hẳn các bạn đã biết bên Windows có lệnh ipconfig, thì ở bên Linux, chúng ta lại có ifconfig, nhưng ifconfig còn làm được nhiều việc hơn.

    vd: ifconfig cho phép bạn gán nhiều địa chỉ IP lên một interface. Lệnh sau sẽ gán thêm IP 66.193.175.173 vào giao tiếp eth0
    #ifconfig eth0:1 66.193.175.173 netmask 255.255.254.0

    - route


    Cho phép bạn quản lý bảng định tuyến, bảng định tuyến là gì ? Nói ngắn gọn là khi các packets từ máy bạn muốn ra ngoài, thì nó phải dựa vào bảng định tuyến này để tìm đường đi "đầu tiên" cho mình, tương tự như cái "cửa" vậy. Tuy nhiên sau khi ra ngoài thì nó phải thực hiện một quá trình định tuyến ( routing ) để đi đến đích, đây cũng là một vấn đề lớn , ko thể trình bày chi tiết ở đây được.

    vd: route --> nó sẽ hiện thị routing table .

    - cron


    Trình này cho phép bạn thiết lập các schedular job ( công việc theo lịch ), lưu ý là daemon crond phải được chạy, bạn có thể tìm hiểu rõ thêm ở đây http://www.unixgeeks.org/security/ne...ix/cron-1.html, đây tôi xin nêu một ví dụ nhỏ:
    Mục đích của tôi là cứ 2h sáng 0 phút mỗi ngày máy sẽ thực hiện tự động file backup.pl trong /home/linet/script

    #crontab -e : dùng để edit file cron
    Thêm vào dòng sau:
    00 2 * * * linet /home/linet/script/backup.pl

    - chmod, chown, chcon


    chmod: thiết lập các thuộc tính read, write, execute của file, thư mục đối với từng người dùng
    vd: chmod 777 myfile.php --> cho phép tất cả người dùng có quyền ghi, đọc, thực thi với file này

    chown: thiết lập chủ sở hữu của file, thư mục
    vd: chown linet:admin myfile.php ---> chủ sở hữu của myfile.php là linet ( thuộc nhóm admin )

    chcon: thay đổi security context, lệnh này tôi cũng chưa hiểu rõ lắm, nên mời mọi người chỉ giúp.

    - ping, traceroute


    Đây là hai lệnh khá phổ biến với mọi người, tôi cũng xin nêu ngắn gọn về chúng

    ping: là lệnh gửi các ICMP echo-request đến máy khác và đợi các ICMP echo-reply gửi về, nó thường được dùng để kiểm tra xem một host có đang chạy hay không, dựa vào sự tồn tại của echo-reply.
    Nhiều người đã sử dụng ping với ứng dụng là ping flood, tức là gửi đi gói tin request với kích thước rất lớn trong thời gian rất nhanh để cho máy kia luôn phải " trả lời", tiêu tốn tài nguyên của hệ thống.

    traceroute: ( trong Windows có 'tracert' ) là lệnh dò tìm đường đi từ máy hiện tại đến máy đích. Lệnh này hiện thị ra các router mà packets phải đi qua để đến được đích.

    vd: ping hvaonline.net
    traceroute hvaonline.net

    - df, du

    Hiện thị không gian sử dụng filesystem
    vd: df -h

    - ls, cat, vi

    Đây là những lệnh cơ bản nhất cho người dùng Linux, nhưng cũng là những lệnh thường dùng nhất, ls tương tự như dir, cat dùng để xem nội dung file, vi là trình soạn thảo.

    - more, grep, awk

    Lệnh trong Linux console có một tính năng rất mạnh là nó có thể kết hợp nhiều lệnh để tạo ra kết quả.

    grep: lọc thông tin
    vd: ps -aux | grep httpd -> hiển thị các tiến trình phục vụ cho dịch vụ httpd ( bình thường ps -aux sẽ hiển thị tất cả tiến trình )

    more: giúp cho việc hiển thị kết quả stdout được phân từng trang, tiện cho việc theo dõi khi kết quả quá dài
    vd: cat error_log | more

    awk hay gawk : tôi được biết đây là một command rất hay

    - mc

    Các bạn dùng bên Windows có NC thì bên Linux có MC, chức năng và cách dùng cũng tương tự nhau.
  7. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Cài đặt chương trình trong linux ( file rpm )

    Phần hướng dẫn này mang tính chất thông tin thêm về các file PRM và tất cả toán tử, tùy chọn của nó. Có hai kiểu gói RPM:

    - File rpm nguồn với đuôi mở rộng .src.rpm.

    - Mã nhị phân với đuôi mở rộng: .rpm.

    Cả hai gói đều có thể dùng được với lệnh RPM. Trong bài viết này chúng ta sẽ nói về các file BINAR (nhị phân), còn kiểu file rpm nguồn bạn có thể tham khảo cũng theo cách tương tự. Đối với những người mới bắt đầu, nên chú ý tới phiên bản của gói RPM. Nó phải hợp với cấu trúc của máy tính đích (i386, i586, i686, sparc; thông thường là dành cho các máy i386). Hầu hết các gói này đều được tổ chức trên server FTP. Bạn chỉ cần tìm kiếm ở thư mục bên phải.

    Sau khi download file về, vấn đề cài đặt thư mục ở đâu dường như không cần bận tâm lắm. Thậm chí, RedHat còn có một thư mục đặc biệt (DIRECTORY) dùng để lưu trữ các gói này trước khi cài đặt. Bạn không cần phải dùng nó nếu máy tính của bạn là hệ thống đa người dùng. Điều đó có thể giúp mọi thứ có tính tổ chức cao hơn.

    Thư mục chúng ta đang nói về có thể tìm thấy ở /usr/src/redhat/RPMS trên các phân phối RedHat. Bây giờ, chúng ta sẽ cùng bắt đầu tìm hiểu về cách cài đặt các gói RPM.

    Nếu bạn là người mới bắt đầu, nên dùng lệnh "rpm -- help" để xem qua tất cả các tùy chọn của RPM. RPM có rất nhiều tùy chọn, bạn có thể phải xem tới 2 trang hoặc hơn. Để tóm tắt lại, bạn nên dùng lệnh "rpm --help | less" hoặc ấn phím Shift+PageUp/PageDown để cuộn lên, cuộn xuống trong khi xem.

    Lệnh cơ bản để cài đặt gói RPM là "rpm -i ". Ví dụ: "rpm -i daniel.rpm" sẽ cài đặt gói daniel.rpm. Cũng rất hữu ích khi bạn thêm vào các tùy chọn -vf trong phần hiển thị thanh tiến trình. Dùng thanh tiến trình để kết thúc với câu lệnh "rpm -ivh daniel.rpm".

    Chương trình quản lý gói RedHat (Red Hat Package Manager -RPM) cũng hỗ trợ UPDATE các file bằng lệnh: "rpm -U new_daniel.rpm". Bạn có thể thêm phần mở rộng -vf trong thanh tiến trình. Nếu có sai sót nào đó trong quá trình update, trở lại bản cũ bằng lệnh: "rpm -U --oldpackage ". Ví dụ: "rpm -U --oldpackage daniel.rpm".

    Nếu muốn UNINSTALL (gỡ bỏ) một gói, bạn có thể dùng lệnh: "rpm -e ", ví dụ: "rpm -e new_daniel.rpm". Có một số tùy chọn thực sự hữu ích cho trường hợp này. Ví dụ "--nodeps" được dùng theo cú pháp "rpm -e --nodeps new_daniel" sẽ gỡ bỏ gói, nhưng không cần kiểm tra nếu các thành phần gói khác bị phá hủy. Bạn nên dùng tùy chọn SIMULATE the UNINSTALL trước khi thực sự tiến hành gỡ bỏ. Câu lệnh "rpm -e --test new_danie.rpm" sẽ thể hiện danh sách tất cả thành phần có nguy cơ hư hại nếu quá trình UNINSTALL xuất hiện lỗi.

    Bên cạnh các toán tử này, bạn có thể dùng RPM COMMAND (lệnh RPM) cho các hoạt động khác như:

    rpm -q -a # thể hiện một danh sách các gói đã được cài đặt trên hệ thống.

    rpm -q -l new_daniel #thể hiện một danh sách các file nằm trong gói này.

    rpm -q -c new_daniel #thể hiện các file cấu hình của gói "daniel".

    rpm -q -d new_daniel # thể hiện các file trợ giúp (HELP) của gói.

    rpm -q -i new_daniel #thể hiện thông tin về gói (kích thước, đường dẫn url, mô tả tóm tắt)

    rpm -q -R #thể hiện tất cả các lệ thuộc gói.
    Cơ bản về Cron trên Unix/Linux
    Trên Unix/Linux bạn thường nghe đến cái tên Cron...
    Vậy Cron là cái gì nhỉ? Trước hết Cron là một chương trình. Do sự tiện dụng và cần thiết của nó lên đã được nâng lên làm deadmon.
    Vậy nó có chức năng gì ? Chắc bạn không lạ gì chương trình Scheduling Agent chuyên được dùng để thực hiện các tác vụ theo định kỳ đã được lên kế hoạch và thời gian trước. Thì Cron sẽ thay bạn thực hiện tính năng này trong Unix/Linux.



    Trên Unix/Linux bạn thường nghe đến cái tên Cron...
    Vậy Cron là cái gì nhỉ? Trước hết Cron là một chương trình. Do sự tiện dụng và cần thiết của nó lên đã được nâng lên làm deadmon.
    Vậy nó có chức năng gì ? Chắc bạn không lạ gì chương trình Scheduling Agent chuyên được dùng để thực hiện các tác vụ theo định kỳ đã được lên kế hoạch và thời gian trước. Thì Cron sẽ thay bạn thực hiện tính năng này trong Unix/Linux.

    Thường thì cron được cài đặt mặc định và chạy trên các hệ thống Unix/Linux rồi. Nếu hệ thống của bạn chưa được cài đặt Cron thì bạn có thể Dowload nó từ: http://www.freshmeat.net/ Và cần cho khởi động nó như một deadmon trên hệ thống của bạn bằng lệnh:
    root@localhost#: crond start

    Bây giờ chúng ta cùng bắt tay cấu hình cho Cron. Để sử dụng Cron bạn phải, bạn cần một file cấu hình dạng text, còn gọi là file "lịch" (để lên lịch chạy của các chương trình). Ngoài ra bạn sẽ phải dùng thêm chương trình crontab (có sau khi cài cron) để đăng ký file lịch với hệ thống, xem thông tin về file lịch của user...

    Bạn có thể đặt tên cho file lịch là jobs.txt hoặc schedule.txt hay tên gì đó cũng được, miễn nó là file text. Cấu trúc của file lịch như sau:

    * File lịch gồm có 2 phần, phần đầu là phần cấu hình, có dạng TÊN_BIẾN = GIÁ TRỊ
    * Phần thứ hai là lịch trình chạy của các chương trình
    * Các chú thích bắt đầu bằng ký tự #
    (bạn xem thêm thông tin qua lệnh man crontab)

    Phần cấu hình của file lịch (có thể) như sau:
    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=abc
    HOME=/ # run-parts

    Dòng đầu tiên cho biết là bạn dùng shell bash để chạy các chương trình, dòng thứ 2 thiết lập đường dẫn cho các chương trình (tuỳ chọn), dòng thứ 3 biểu thị rằng output của các chương trình sẽ được gởi tới email cho user abc (tuỳ chọn, mặc định sẽ gởi email tới cho user chủ sở hữu của file lịch, nếu bạn không muốn gởi email thì bạn đặt MAILTO=""), dòng thứ 4 sẽ báo cho cron biết rằng phải cd về thư mục gốc trước khi thi hành lệnh.

    Phần lịch trình chạy các chương trình có dạng như sau:
    phút giờ ngày tháng thứ chương_trình_cần_chạy
    Phút có giá trị từ 0 đến 59 hoặc là *
    Giờ có giá trị từ 0 đến 23 hoặc *
    Ngày có giá trị 1 đến 31 hoặc *
    Tháng có giá trị từ 1 đến 12 hoặc *
    Thứ có giá trị 0 (Chủ nhật), 1 (thứ hai)...6 (thứ 7) hoặc *

    Ví dụ bạn muốn chạy chương trình abc vào lúc 2g1' sáng ngày 12 tháng 5 (bất kể thứ) thì lịch chạy như sau:
    1 2 12 5 * abc
    (* biểu thị everything, tức là bất kể thứ nào)

    Nếu bạn muốn chạy 1 file tên def trong thư mục /bin vào 15g chiều vào chủ nhật (bất kể ngày tháng) thì lịch chạy như sau:
    0 15 * * 0 /bin/def

    và nếu bạn muốn chạy 1 chương trình tên xyz vào mỗi giờ trong ngày (bắt đầu ở phút thứ 8 của giờ đó) thì:
    8 * * * * xyz

    còn nếu bạn muốn chương trình cứ 3 ngày chạy 1 lần vào đúng 4g10' sáng? thì đây:
    10 4 */3 * * tên_chương_trình
    (*/3 biểu thị cứ cách 3 đơn bị thì thực hiện 2 lần, ở ví dụ trên 1 đơn vị là 1 ngày nên 3 ngày chương trình sẽ chạy 1 lần)

    Nếu bạn muốn chạy chương trình ngày 3 lần (cứ 8 tiếng đồng hồ thì chạy 1 lần) vào lúc 13 phút hàng tuần (trừ Thứ 7 và Chủ nhật) thì:
    13 */8 * * 1-5 tên_chương_trình
    (1-5 biểu thị trong giới hạn từ 1 đến 5 thì thực hiện, ở ví dụ trên 1 là thứ 2, 5 là thứ 6, 1-5 biểu thị từ thứ 2 đến thứ 6)

    Và cuối cùng, sau khi soạn thảo và lưu lai file lịch ở dạng text. Bạn đăng ký file lịch với hệ thống qua lệnh crontab:
    crontab schedules.txt

    Mỗi user trên hệ thống linux của bạn có thể tạo 1 file lịch khác nhau và đăng ký với hệ thống, 2 user khác nhau sẽ có file lịch khác nhau và không sợ bị ghi dè lên nhau.

    lệnh crontab -l sẽ liệt kê file lịch mà bạn đã đăng ký với hệ thống. Nếu bạn đăng ký nhiều file lịch, thì file sau sẽ ghi đè lên file trước.
    lệnh crontab -r sẽ rút tên file lịch mà bạn đã đăng ký trên hệ thống ra (không đăng ký lịch nữa).


    Nguồn Nhất Nghệ

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí