[Full A-Z] Linux toàn tập

Thảo luận trong 'Tài liệu' bắt đầu bởi trec, 04/11/13, 11:11 AM.

  1. trec

    trec W-------

    Tham gia: 01/11/13, 03:11 PM
    Bài viết: 25
    Đã được thích: 1
    Điểm thành tích:
    16
    Giới thiệu về CentOS

    CentOS (tên viết tắt của Community ENTerprise Operating System) là một phân phối Linux tập trung vào lớp doanh nghiệp, xây dựng từ nhiều nguồn miễn phí (theo GPL và một số bản quyền tương tự) của Red Hat. CentOS 4 dựa trên nền tảng Red Hat Enterprise Linux 4, hỗ trợ dòng x86 (i586 và i686), dòng x86_64 (AMD64 và Intel EMT64), các cấu trúc IA64, Alpha, S390 và S390x.

    Đĩa Single Server CD có hầu hết tất cả các thành phần cần thiết cho quá trình cài đặt server cơ bản, ngoại trừ GUI (giao diện đồ hoạ người dùng). Nó phù hợp cho những ai muốn cài đặt chức năng một cách nhanh chóng. Do không có giao diện GUI, bạn có thể chạy một server cơ sở chỉ với RAM 128. Nhưng tất nhiên dung lượng RAM sẽ phải tăng lên nếu cần triển khai các cơ sở dữ liệu lớn.

    Cài đặt

    Quá trình cài đặt Single Server CD khá dễ dàng, nhất là khi bạn đã cài một phân phối Linux khác. Bạn cần download Single Server CD từ một bản ở máy cục bộ, ghi nó vào đĩa và khởi động (boot) server từ đĩa đó.

    Cho dù Single Server CD không chứa giao diện GUI, quá trình cài đặt vẫn sử dụng một giao diện đồ hoạ, giúp bạn dễ dàng thao tác với từng phần. Làm theo các hướng dẫn trên màn hình, công việc trở nên đơn giản.

    Mẹo nhỏ: Nếu server của bạn không chứa bất kỳ dữ liệu nào khác và không gặp phải vấn đề gì khi format lại toàn bộ ổ đĩa, nên sử dụng tuỳ chọn “automatically partition” (phân vùng tự động) khi quá trình cài đặt đến bước Disk Partitioning Setup. Nó sẽ giúp bạn tiết kiệm được khá nhiều thời gian.

    Bạn nên tạm ngừng sử dụng SELinux và tắt chức năng tường lửa, nhất là khi server được đặt an toàn bên trong mạng cục bộ. Bạn có thể thay đổi các thiết lập tường lửa sau nếu muốn với lệnh system-config-securitylevel.

    Bạn có thể chọn cài đặt mặc định các gói phần mềm một cách an toàn. Phương thức cài đặt này sẽ cung cấp một hệ thống CentOS cơ bản với Web, mail và các server FTP, DNS, chức năng chia sẻ file qua Samba. Với máy có cấu hình hiện đại, quá trình cài đặt chỉ mất dưới 20 phút.

    Không phải tất cả các gói trên CD đều được cài. Chẳng hạn, nếu muốn dùng PostgreSQL, bạn sẽ phải cài đặt nó sau từ đĩa. Muốn cài đặt PostgreSQL, đưa đĩa vào ổ đọc (mount/media/cdrom), dùng lệnh yum để cài các thư viện client và server:

    yum localinstall /media/cdrom/CentOS/RPMS/postgresql-7*
    yum localinstall /media/cdrom/CentOS/RPMS/postgresql-server-7*


    Khả năng mạnh của CentOS nằm ở chỗ đáng tin cậy và ổn định. Nó được xây dựng dựa trên các gói đã qua thử nghiệm cho kết quả tốt chứ không dựa trên phần mềm bleeding-edge. Tuy nhiên cũng có một hạn chế là một số phần mềm mới nhất không thể cài đặt được trên phần phối này. Thiếu sót quan trọng nhất, theo ý kiến của tôi, là PHP 5 và MySQL 5. Nhưng các phần mềm này cũng đã được tích hợp vào trong CentOS Plus Repository.

    Mặc định, CentOS 4.4 sử dụng PHP 4.3.9. Muốn nâng cấp lên PHP 5, trước tiên phải đảm bảo máy bạn đã được kết nối với Internet, sau đó chạy lệnh:

    yum --enablerepo=centosplus upgrade php*

    Tương tự với MySQL. Phiên bản mặc định trong CentOS 4.4 là MySQL 4.1.20. Muốn nâng cấp lên MySQL 5, dùng các lệnh sau:

    yum --enablerepo=centosplus upgrade mysql*
    yum --enablerepo=centosplus install mysql-server-5*


    Quản trị đơn giản

    Do CentOS 4.4 Single Server CD không có giao diện GUI, bạn cần thực hiện tất cả cấu hình qua dòng lệnh. Dưới đây là một số lệnh quan trọng cơ bản và các file giúp bạn cấu hình server.

    Để khởi động và ngừng dịch vụ, dùng:

    service XYZ start
    service XYZ stop


    Trong đó, XYZ là tên server, ví dụ như postgresql.

    Để cấu hình mạng, chạy lệnh:

    netconfig

    Để cấu hình máy in, chạy lệnh:

    system-config-printer

    Mặc định có một số dịch vụ hệ thống không được khởi động trong thời gian boot hệ thống như Web server, MySQL server. Muốn đảm bảo cho các dịch vụ này được chạy ngay từ khi khởi động máy, thực hiện các lệnh sau:

    chkconfig --levels 235 httpd on
    chkconfig --levels 235 mysql on
    chkconfig --levels 235 smb on
    chkconfig --levels 235 vsftpd on


    Nếu cần dịch vụ POP3 và IMAP, bạn cần cấu hình dovecot daemon. Mặc định, dovecot daemon chỉ cung cấp các dịch vụ IMAP. Muốn có POP3, bạn phải chỉnh sửa /etc/dovecot.conf và đặt vào dòng:

    protocols = imap imaps pop3 pop3s

    Dovecot cũng không được khởi động mặc định (nhưng được cài đặt như một trong các gói tiêu chuẩn). Muốn dovecot được khởi động khi máy khởi động, gõ lệnh:

    chkconfig --levels 235 dovecot on

    Sau khi mọi thành phần đã được cấu hình chính xác, bạn nên khởi động lại hệ thống. Không phải bởi Linux cần khởi động lại mà đơn giản chỉ để chắc chắn rằng mọi thứ đã được cài đặt phù hợp và chạy như mong đợi.

    Link http://nhatnghe.com/forum
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  2. trec

    trec W-------

    Tham gia: 01/11/13, 03:11 PM
    Bài viết: 25
    Đã được thích: 1
    Điểm thành tích:
    16
    Hướng dẫn cài VMware + Linux CentOS

    Tôi học CentOS nên tôi cũng sẽ nói về CentOS thôi, bạn xem thông tin và download hệ điều hành này tại website http://www.centos.org/

    Bạn có thể dùng máy thật để cài Centos, nhưng tôi khuyên các bạn nên dùng máy ảo, vì nếu cài máy thật chung window nếu thao tác không đúng toàn bộ dữ liệu của các bạn sẽ mất hết, máy ảo ở đây tôi dùng là VMware Workstation, bạn vào website http://www.vmware.com/ xem thêm thông tin nhé. Bạn có thể ra ngoài tiệm bán đĩa CD để tìm mua chương trình này. Hay cũng có thể dùng Virtual PC 2007 của Microsoft, cái này free, tham khảo tại và download tại http://www.microsoft.com/downloads/d...DisplayLang=en, link download trực tiếp http://download.microsoft.com/downlo...0BIT/setup.exe

    Cấu hình yêu cầu là: Ổ cứng nên trống từ 4Gb trở lên, ram từ 256 Mb trở lên, tốt nhất là 1Gb, tốc độ cpu không cần nhiều p3 1Gb trở lên là được rồi, tất nhiên là cấu hình càng cao càng tốt.

    Nếu dùng máy ảo bạn lên website của Centos download cái iso của Centos đi, khoảng 3.5Gb, bạn không cần phải ghi ra DVD làm gì, chương trình Vmware có thể cài từ file iso, bạn download từ link này http://isoredirect.centos.org/centos/5/isos/i386/, nếu không có điều kiện download thì ra tiệm bán đĩa CD mua nhé, nhưng trên CD dễ bị lỗi lúc cài lắm đó.

    Mời bạn xem bài lab cài và cấu hình VMware tại link http://files.myopera.com/hautp/linux/VMware.htm

    Do không thể quay phim trong VMware nên tôi đã quay phim hướng dẫn cài linux dưới dạng file .avi, các bạn download chương trình KMPlayer để xem, cái này hổ trợ rất tốt xem file .avi và các file định dạng khác http://www.kmplayer.com/beta/kmp.zip, và tôi cũng không có host để upload fie nén nên tôi upload lên megaupload, bạn có thể xem trình tự cài linux centos bằng film (có 3 file bạn xem lần lược file 1 2 3), download tại http://www.megaupload.com/?d=XMI5M9VA (3.15 Mb) (do phim quay nhanh quá mong các bạn thông cảm nhé, cán bạn dùng chế độ xem chậm lại đi nhé, KMPlayer giải quyết tốt tình trạng này)

    Nếu bạn không xem được phim hướng dẫn cài đặt trên vì quá nhanh thì hãy download trên veoh.com về xem nhé (có thể bạn xem online không được thì download về xem)

    http://www.veoh.com/videos/v554051tHnfcstW
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  3. trec

    trec W-------

    Tham gia: 01/11/13, 03:11 PM
    Bài viết: 25
    Đã được thích: 1
    Điểm thành tích:
    16
    Các lệnh căn bản trong linux


    Lệnh thống kê dung lượng thư mục Linux
    [[email protected] webhostings]# du -sh *
    Bài viết này không nói về cách cài đặt mà đi vào chi tiết, sau khi cài đặt xong sử dụng như thế nào.Đầu tiên bạn cần login vào hệ thống, bạn login vào với user root, mật khẩu do bạn đặt lúc cài đặt.User root là user có quyền tối cao (hay quyền cao nhất đối với một hệ thống Unix).Để xử dụng dòng lệnh bạn cần bật command shell lên, cái này tương tự như MS DOS của windows.
    [[email protected] ~]#


    Bạn xem thông tin về user mình đang login bằng lệnh: id


    [[email protected] ~]# id
    uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=root:system_r:unconfined_t:SystemLow-SystemHigh


    Các chỉ số uid và gid sẽ cho biết quyền hạn của bạn trên hệ thống. 0 là quyền cao nhất rồi.Bây giờ bạn muốn login với user mới bạn sử dụng lệnh : useradd


    [[email protected] ~]# useradd quantrihethong


    vậy là bạn đã có user mới là quantrihethong trong hệ thống. Lệnh useradd có rất nhiều tham số khác nhau, để xem chi tiết bạn dùng lệnh man


    [[email protected] root]$ man useradd


    Lúc trước khi tạo user quantrihethong chúng ta chưa tạo mật khẩu, bây giờ tạo mật khẩu cho user này, bằng lệnh passwd.


    [[email protected] ~]# passwd quantrihethong


    Changing password for user quantrihethong .


    New UNIX password:


    Sau đó nhập mật khẩu vào.Để chuyển sang user này bạn dùng lệnh : su


    [[email protected] ~]# su quantrihethong


    bạn kiểm tra lại bằng cách đánh lệnh : id


    [[email protected] root]$ id
    uid=501(quantrihethong) gid=501(quantrihethong) groups=501(quantrihethong) context=root:system_r:unconfined_t:SystemLow-SystemHigh


    Tiếp theo là các lệnh cơ bản với thư mục :Bạn cần biết hiện tại đang ở thư mục nào bạn dùng : pwd


    [[email protected] root]$ pwd
    /root


    Vậy là user quantrihethong đang ở thư mục /root.Các lệnh về thư mục ở trên unix tương tự như trên MS DOS của windows, chỉ có một số điểm khác biệt.Lệnh ls sẽ tương đương với dir.


    rm : xóa file


    rmdir : xóa thư mục


    mv : di chuyển hoặc đổi tên file


    cp : copy file, thư mục


    cd : chuyển thư mục


    Thực hành :


    [[email protected] root]$ ls
    ls: .: Permission denied


    Vậy là lỗi rồi, user quantrihethong không có quyền sử dụng lệnh ls. Lúc trước khi tạo user tôi chưa thêm shell cho user nên user sẽ không có quyền sử dụng lệnh này. Bây giờ tôi sẽ thêm shell cho user.Trước tiên cần chuyển về user root bằng lệnh : su root, nó sẽ hỏi mật khẩu --> nhập mật khẩu của root vào.Bạn dùng lệnh : usermod để thay đổi thông tin người dùng, cú pháp như sau:


    SYNTAX
    usermod [options] [user]


    Bạn chưa biết shell nằm ở đâu, nên cần dùng lệnh whereis để xem vị trí của shell


    [[email protected] ~]# whereis bash
    bash: /bin/bash /usr/share/man/man1/bash.1.gz


    [[email protected] ~]# usermod -s /bin/bash quantrihethong


    Tiếp theo lại su về user quantrihethong


    [[email protected] root]$ ls
    ls: .: Permission denied


    a ah, vẫn bị lỗi. Vậy là không phải rồi, lúc này ta đã hiểu sai. Không phải user quantrihethong không có quyền dùng shell,vì vẫn dùng được lệnh pwd,... Mà là user quantrihethong không có quyền đối với thư mục /root


    Đây là điểm rất khác biệt với windows, ở Unix phân quyền rất chặt chẽ dựa theo các quyền :


    Read - Write - Execute (Đọc - Ghi - Thực thi)


    Các quyền này được thể hiện bằng ký hiệu : r - w - x hoặc 4 - 2 -1


    Và với một thư mục quyền sẽ được phân cho : Owner - Group - others (người sử hữu - nhóm - người khác)


    Để xem quyền của thư mục root ta dùng lệnh ls với tham số al:


    [[email protected] /]# ls -al...drwxr-x--- 20 root root 4096 Nov 28 14:35 root...


    Nhìn vào dòng trên ta sẽ nhận được thông tin như sau :


    Owner là root


    Group là root


    drwxr-x--- : quyền đối với người dùng, chữ d ở đầu có nghĩa đây là thư mục, tiếp theo là quyền của owner :


    rwx :--> owner có toàn quyền trên thư mục này, owner là root nên user root có toàn quyền trên thư mục này.


    r-x :--> group có quyền đọc và chạy file, không có quyền ghi vào thư mục này.


    --- :--> others không có quyền gì đối với thư mục này.


    quantrihethong không thuộc group root nên không có quyền gì.


    Nói thêm về cách thể hiện quyền đối với thư mục, như ở trên cói nói về cách thể hiện các quyền.drwxr-x--- sẽ tương đương 740, khi thư mục để quyền tự do nhất là rwxrwxrwx - 777 tức là bất kỳ ai cũng có đầy đủ các quyền với thư mục đó.Để thay đổi quyền bạn dùng lệnh CHMOD, để thay đổi owner bạn dùng lệnh chown, để thay đổi group bạn dùng lệnh chgroup.Việc đặt quyền hạn đúng sẽ là cực kỳ quan trọng đối với một hệ thống, không chỉ UNIX.


    Hệ thống thư mục trên * NIX, bài này tôi lấy ví dụ cụ thể là Fedora 6.


    Khi ở thư mục gốc / bạn đánh ls sẽ nhận được:


    [[email protected] ~]# cd /
    [[email protected] /]# ls
    bin boot dev etc home lib lost+found media misc mnt
    net opt proc root sbin selinux srv sys tmp usr var


    Đó là các thư mục trên một hệ thống Unix.


    * Thư mục /bin


    Đây là thực mục cực kỳ quan trong của 1 hệ thống unix, thư mục này chứa gần như tất cả các lệnh của hệ thống.


    * Thư mục /etc


    Thư mục này chứa các các file con file của hệ thống, cũng như chứa thông tin về các service cần khỏi động khi hệ điều hành chạy.


    Đối với hệ điều hành Linux thì các service chạy lúc khởi động sẽ được đặt trong thư mục init.d.


    Đối với hệ điều hành SUN Solaris thì các service chạy lúc khởi động sẽ được đặt trong thư mục rc2.d.


    Các thư mục trên sẽ thay đổi tùy hệ thống.


    *Thư mục /usr


    Thư mục này chứa file và chương trình của các user trên hệ thống.


    Một điều thú vị trên hệ thống Unix là tất cả đều là file, kể cả cái gọi là thư mục cũng là file.smile_regular


    *Thư mục /dev


    Khi vào thư mục này đánh lệnh ls bạn sẽ thấy rất nhiều file màu vàng.


    Đó chính là tất cả các thiết bị phần cứng mà hệ điều hành dùng, trên hệ thống Unix tất cả đều là file, như tôi đã nói ở trên.


    Ví dụ : ổ cứng sẽ là /dev/hda, có thể có 2 loại ổ cứng IDE và SCSI, ổ ở nhà bạn dùng thông thường là IDE, ổ SCSI thường được dùng cho các máy chủ và dung lượng thường là 36GB, 72GB,...


    *Thư mục /boot


    Thư mục này chứa "lõi" của hệ điều hành hay còn gọi là kernel. Ví dụ đây là kernel máy của tôi :


    Trên hệ điều hành SUN nó sẽ không phải là thư mục /boot, nó là thư mục /platform


    Để biết thông tin về kernel bạn dùng lệnh : uname -an


    [[email protected] /]# uname -an
    Linux hautp 2.6.17-1.2157_FC5 #1 Tue Jul 11 22:55:46 EDT 2006 i686 i686 i386 GNU/Linux


    * Thư mục root - thư mục của user root


    Khi bạn dùng một user khác truy nhập vào thư mục này, bạn sẽ không có quyền gì với thư mục này, giống như user quantrihethong ở phần trước.


    Đây chính là "Users home directory" thư mục riêng của user. Trên hệ thốnh Unix khi một user mới tạo ra nó sẽ tạo kèm theo 1 thư mục cho user đó. Thông thường các thư mục này sẽ nằm trong thư mục /home. Nhân tiện đây tôi nói luôn về thư mục /home.


    Thư mục /home là thư mục chứa các thư mục của người dùng:


    * Thư mục /sbin


    Thư mục này là một thư mục giới hạn quyền hạn, nó chứa các chương trình kiểu như thư mục /bin. Nhưng bạn không thể làm gì đến nó được. Chỉ những user có quyền root mới có thể Shutdown các chương trình ở đây.


    * Thư mục /tmp


    Thư mục này đúng như tên của nó, nó chứa các file tạm do hệ thống sinh ra. Vì để chia sẻ cho bất kỳ chương trình nào nên thư mục này được đặt quyền hạn rất thoải mái :


    drwxrwxrwt 11 root root 4096 Nov 29 04:05 tmp


    Chức năng của nó cũng giống như thư mục temp của windows.


    * Thư mục /var


    Thư mục này để chứa các file có thể thay đổi kích thước (variable size), nên thông thường trong thư mục này sẽ chứa các database như : mysql,.. hay mail server,...


    * Thư mục /lib


    Lib là viết tắt của library. Thư mục /lib chứa các file thư viện chương trình. Mỗi một chương trình sẽ có thư viện riêng của mình.


    * Các thư mục khác :


    - /mnt


    - /cdrom


    - /floppy


    Ban đầu tất cả các thư mục này đều rỗng. Khi bạn cắm USB vào nó sẽ nằm trong /mnt hoặc bạn cần mount nó vào trong /mnt (cái này nói sau happy). Khi cho đĩa CDROM vào thì dữ liệu sẽ được tự động mount vào thư mục /cdrom. Tương tự đối với floppy.
    Phần này nói về cách : tắt máy như thế nào ? khởi động như thế nào ?


    * Lệnh : shutdown


    Sử dụng lệnh : man shutdown để xem thông tin về lệnh này


    SYNTAX
    shutdown [options] when [message]


    OPTIONS
    -c Cancel a shutdown that is in progress.


    -f Reboot fast, by suppressing the normal call to fsck
    when rebooting.
    -h Halt the system when shutdown is complete.


    -k Print the warning message, but suppress actual shutdown.


    -n Perform shutdown without a call to init.


    -r Reboot the system when shutdown is complete.


    -t sec


    Ví dụ :
    Tắt ngay lập tức :
    shutdown -h now


    Khởi động lại ngay lập tức:
    shutdown -r now


    Tắt máy vào lúc 8 tối (pm):
    shutdown -h 20:00


    Sau 10 phút thì tắt máy:
    shutdown -h +10


    * Lệnh : halt, reboot, poweroff


    Từ kernel 2.74 trờ về sau này, lệnh halt, reboot không được gọi trực tiếp mà nó đã được tích hợp vào trong lệnh shutdown như bạn thấy ở trên. Nếu bạn dùng các kernel cũ thì vẫn dùng được các lệnh này.


    rình soạn thảo văn bản.


    Trên windows có rất nhiều trình soạn thảo khác nhau như office, wordpad, notepad... Trên *nix cũng vậy, nhưng trình soạn thảo ưa thích có lẽ là vi.


    Trình soạn thảo này có lẽ là phổ biến nhất và thông dụng nhất trên các hệ thống Unix cũng tương tự như notepad của windows.


    Để truy nhập vi trong của sổ terminal bạn đánh : vi


    [[email protected] /]# vi


    Trình soạn thảo sẽ hiện ra. Như bản Fedora tôi đang dùng thì nó đã thay thế vi bởi VIM :


    VIM soạn thảo "thuận tay hơn" vi happy bạn dùng thử mà xem big grin


    Để tạo 1 file mới bạn đánh : vi


    [[email protected] /]# vi hello


    Bạn nhấn phím "i" để kích hoạt chế độ Insert, sau đó bạn đánh "Hello world!"


    Để ghi lại file bạn bấm phím "ESC" để thoát khỏi chế độ Insert. Sau đó đánh ":qw" để lưu lại và thoát ra khỏi vi.


    "hello" [New] 1L, 14C written
    [[email protected] /]# more hello
    hello world !
    [[email protected] /]#


    Chi tiết các lệnh của vi có lẽ phải thực hành nhiều một chút mới nhớ được.


    Tham khảo :


    http://www.ss64.com/bash/vi.html


    http://www.eng.hawaii.edu/Tutor/vi.html


    VI Editor Commands


    Switch to Text or Insert mode:


    Open line above cursor
    O
    Insert text at beginning of line
    I
    Insert text at cursor
    i
    Insert text after cursor
    a
    Append text at line end
    A


    Open line below cursor
    o


    Switch to Command mode:
    Switch to command mode



    Cursor Movement (command mode):


    Scroll Backward 1 screen
    b


    Scroll Up 1/2 screen
    u
    Go to beginning of line
    0
    Go to line n
    nG
    Go to end of line
    $


    Scroll Down 1/2 screen
    d
    Go to line number ##
    :##


    Scroll Forward 1 screen
    f


    Go to last line
    G
    Scroll by sentence f/b ( )
    Scroll by word f/b w b Move left, down, up, right h j k l
    Left 6 chars
    6h
    Directional Movement Arrow Keys
    Go to line #6
    6G


    Deleting text (command mode):
    Change word
    cw
    Replace one character
    r
    Delete word
    dw
    Delete text at cursor
    x
    Delete entire line (to buffer)
    dd


    Delete current to end of line
    D
    Delete 5 lines (to buffer)
    5dd


    Delete lines 5-10
    :5,10d


    Editing (command mode):
    Copy line
    yy
    Copy n lines
    nyy
    Copy lines 1-2/paste after 3
    :1,2t 3
    Paste above current line
    P




    Paste below current line
    p
    Move lines 4-5/paste after 6
    :4,5m 6


    Join previous line
    J
    Search backward for string
    ?string
    Search forward for string
    /string Find next string occurrence n
    % (entire file) s (search and replace) /old text with new/ c (confirm) g (global - all)
    :%s/oldstring/newstring/cg
    Ignore case during search
    :set ic
    Repeat last command
    .
    Undo previous command
    u
    Undo all changes to line
    U


    Save and Quit (command mode):
    Save changes to buffer
    :w
    Save changes and quit vi
    :wq
    Save file to new file
    :w file


    Quit without saving
    :q!
    Save lines to new file
    :10,15w file


    Shells là gì ?


    Bạn có thể hiểu nôm na shell là 1 cách để computer giao tiếp với người dùng hay nói cách khác là cách để computer nhận lệnh từ người dùng. Thồn thường trên Linux dùng "bash" shell.


    Shell là giúp người dùng làm việc với máy tính dễ dàng hơn với những câu lệnh "thân thiện" mang tính chất gợi nhớ.


    Ví dụ : cần copy tất cả các file trong thư mục A vào thư mục B cậu lệnh là : cp /A/* /B


    * File '.bashrc'


    Mỗi một user khi được tạo ra sẽ có 1 shell cho nó như tôi đã nói phần trước, định nghĩa shell cho user nằm trong file .bashrc trong thư mục /home/, ví dụ ở đây là /home/hautp


    [[email protected] /]# cd /home/
    [[email protected] home]# cd quantrihethong/
    [[email protected] quantrihethong]# ls -al
    total 56
    drwxr-xr-x 2 quantrihethong quantrihethong 4096 Nov 29 06:00 .
    drwxr-xr-x 4 root root 4096 Nov 28 14:49 ..
    -rw-r--r-- 1 quantrihethong quantrihethong 24 Nov 28 14:49 .bash_logout
    -rw-r--r-- 1 quantrihethong quantrihethong 191 Nov 28 14:49 .bash_profile
    -rw-r--r-- 1 quantrihethong quantrihethong 124 Nov 28 14:49 .bashrc
    -rw-r--r-- 1 quantrihethong quantrihethong 120 Nov 28 14:49 .gtkrc
    -rw------- 1 quantrihethong quantrihethong 35 Nov 29 06:00 .lesshst


    [[email protected] quantrihethong]# more .bashrc
    # .bashrc


    # Source global definitions
    if [ -f /etc/bashrc ]; then
    . /etc/bashrc
    fi


    # User specific aliases and functions
    [[email protected] quantrihethong]# more .bash_profile
    # .bash_profile


    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi


    # User specific environment and startup programs


    PATH=$PATH:$HOME/bin


    export PATH
    unset USERNAME


    Trong file .bashrc có nói đến các alias do người dùng định nghĩa. # User specific aliases and functions


    Alias là gì ?


    alias thông thường được hiểu là một cái tên khác. Alias ở đây cũng gần như thế.


    ví dụ tôi thêm dòng :


    alias rm='rm -i'


    Thì điều này có nghĩa là khi tôi đánh lệnh rm trong terminal thì lệnh này sẽ được hiểu là rm -i đây chính là alias của rm.


    Vì sao lại cần đến alias ?


    Ở trên trong lệnh rm có tham số -i, i tức là interactive (prompt before any removal) có nghĩa là khi có tham xóa -i thì bất cứ file nào bị xóa hệ điều hành sẽ hỏi xem ta có chắc chắn xóa không.


    Nếu dùng tham số -f : force (ignore nonexistent files, never prompt) thì hệ điều hành sẽ xóa mà không cần hỏi. Khi bạn muốn xóa nhanh thì hãy dùng tham số này.


    Việc dùng alias nhằm mục đích tạo 1 "route" cho người dùng. Đặc biệt đối với những máy tính quan trọng như máy chủ chẳng hạn việc xóa file cần phải hết sức thận trọng, nếu như bạn dùng lệnh sau : rm -R -f * mà không tạo alias như trên sẽ khiến toàn bộ số file trong thư mục hiện tại của bạn biến mất ngay lập tức --> mặt dài như cái bơm smile_confused


    Bạn có thể tạo alias tạm thời bằng cách dùng lệnh alias hoặc xóa 1 alias bằng lệnh unalias:


    SYNTAX
    alias [-p] [name[=value] ...]


    unalias [-a] [name ... ]


    Vậy là bạn đã hiểu sơ qua shell là gì ?
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
    Newbie-Noob thích bài này.
  4. Newbie-Noob

    Newbie-Noob New Member

    Tham gia: 24/05/18, 09:05 PM
    Bài viết: 2
    Đã được thích: 0
    Điểm thành tích:
    1
    Cho em hỏi, học Linux như trên có đủ không ạ? Hay là phải tìm hiểu thêm(nếu tìm hiểu thêm cho em xin thêm tài liệu với ạ!)?
     
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  5. whf

    whf Super Moderator Thành viên BQT

    Tham gia: 06/07/13, 03:07 AM
    Bài viết: 963
    Đã được thích: 649
    Điểm thành tích:
    113
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan