text:
Lệnh thống kê dung lượng thư mục Linux
[root@unix1 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.
[root@hautp ~]#
Bạn xem thông tin về user mình đang login bằng lệnh: id
[root@hautp ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(whe el) 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
[root@hautp ~]# 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
[quantrihethong@hautp 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.
[root@hautp ~]# 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
[root@hautp ~]# su quantrihethong
bạn kiểm tra lại bằng cách đánh lệnh : id
[quantrihethong@hautp 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
[quantrihethong@hautp 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 :
[quantrihethong@hautp 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
[root@hautp ~]# whereis bash
bash: /bin/bash /usr/share/man/man1/bash.1.gz
[root@hautp ~]# usermod -s /bin/bash quantrihethong
Tiếp theo lại su về user quantrihethong
[quantrihethong@hautp 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:
[root@hautp /]# 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:
[root@hautp ~]# cd /
[root@hautp /]# 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
[root@hautp /]# 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
[root@hautp /]# 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 <tên file>
[root@hautp /]# 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
[root@hautp /]# more hello
hello world !
[root@hautp /]#
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
<ESC>
Cursor Movement (command mode):
Scroll Backward 1 screen
<ctrl>b
Scroll Up 1/2 screen
<ctrl>u
Go to beginning of line
0
Go to line n
nG
Go to end of line
$
Scroll Down 1/2 screen
<ctrl>d
Go to line number ##
:##
Scroll Forward 1 screen
<ctrl>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/<tên user>, ví dụ ở đây là /home/hautp
[root@hautp /]# cd /home/
[root@hautp home]# cd quantrihethong/
[root@hautp 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
[root@hautp quantrihethong]# more .bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
[root@hautp 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ì ?
Các lệnh căn bản trong linux ( tt )
Các lệnh thông dụng trên hệ thống Unix
Tôi chỉ đưa ra các lệnh kèm chưc năng, các tham số của nó thì bạn cần xem thêm.
1. Lệnh man, info và apropos : thông tin về lệnh
2. Lệnh cd : chuyển thư mục
3. Lệnh ls : liệt kê file thông thường hay dùng ls -al hoặc ls -l
4. Lệnh file : xem thông tin loại file của 1 file file <tên file>
5. Lệnh more và less : xem nội dung file more <tên file>
6. Lệnh cat và tail : xem nội dung file cat <tên file>
7. Lệnh cp : lệnh copy
8. Lệnh mv : lệnh di chuyển hoặc đổi tên file, thư mục
9. Lệnh mkdir : tạo thư mục mới
10. Lệnh rm và rmdir : xóa file và xóa thư mục rỗng
11. Lệnh dir : bằng với ls -l
12. Lệnh pwd : xem vị trí thư mục hiện thời
13. Lệnh date : xem ngày
14. Lệnh cal : xem lich, ví dụ cal 2006
15. Lệnh exit : thoát khỏi terminal
Còn sau đây là một số lệnh yêu thích :
1. Lệnh touch : tạo file
2. Lệnh find : tìm kiếm (sẽ có 1 bài viết riêng về lệnh này)
3. Lệnh grep : tìm kiếm nội dung file hỗ trợ regular expression
4. Lệnh who, whoami, whatis, whereis, which : đúng như nghĩa của các từ này
5. Lệnh echo : hiển thị nội dung 1 biến ,...
Các lệnh dành cho quản trị hệ thống :
1. Lệnh last : hiển thị các user login gần đây
2. Lệnh df : xem thông tin ổ đĩa, thông thường hay dùng df -h
3. Lệnh du : xem thông tin dung lượng file, thư mục
4. Lệnh top : cái giống như taskmanager của windows, nó sẽ hiển thị thông tin về các processes
5. Lệnh free : xem tình hình bộ nhớ
6. Lệnh ps : xem thông tin processes
7. Lệnh kill : tắt process
8. Lệnh mount và unmount :
9. Lệnh chmod : thay đổi permissions đối với file
10. Lệnh chown : thay đổi người sở hữu đối với file
11. Lệnh chgrp : thay đổi group đối với file
12. Lệnh chroot
Ngoài các lệnh trên còn có rất nhiều lệnh khác, có thể tham khảo tại đây :
http://www.ss64.com/bash/
Backup sao lưu giữ liệu với UNIX
Các lệnh cần dùng : tar, gzip, gunzip
Ví dụ với tar :
tar -czvf MyArchive Source_file
hoặc
tar --create --gzip --verbose --file=MyArchive Source_file
tar -xzvf MyArchive Source_file
hoặc
tar --extract --gunzip --verbose --file=MyArchive Source_file
gzip là một phần của tar, tuy nhiên gzip và gunzip vần dùng được độc lập.
Việc backup và sao lưu nên viết thành các job để hệ thống tự động làm.
Ví dụ tôi cần backup dữ liệu của mysql hàng tuần vào Chủ nhật.
#!/bin/bash
Date=`date '+%a'`
Day=`date '+%m%d'`
if [ $Date == 'Sun' ]
then
cd /mysqldata
for ix in *
do
if [ -d $ix ]
then
tar -czvf /quantrihethong/backup/database_$Day.$ix.tar $ix
fi
done
fi
Đoạn script bạn cho vào 1 file, ví dụ : db_backup.sh
Sau đó chmod +x cho file db_backup.sh có nghĩa là cho file này có quyền chạy sau đó tạo schedule cho file này.
Cái này nó tương tự như schedule task của windows.
Để tạo schedule trên Linux bạn dùng crontab.
[root@hautp etc]# ls -l| grep cron
-rw-r--r-- 1 root root 329 Feb 11 2006 anacrontab
drwxr-xr-x 2 root root 4096 Feb 16 2006 cron.d
drwxr-xr-x 2 root root 4096 Aug 3 13:43 cron.daily
-rw-r--r-- 1 root root 0 Aug 3 13:21 cron.deny
drwxr-xr-x 2 root root 4096 Dec 11 2005 cron.hourly
drwxr-xr-x 2 root root 4096 Aug 3 13:18 cron.monthly
-rw-r--r-- 1 root root 255 Dec 11 2005 crontab
drwxr-xr-x 2 root root 4096 Aug 3 13:21 cron.weekly
[root@hautp etc]# more crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
Các job này sẽ được đặt trong các file trên hoặc trong thư mục : /var/spool/cron/crontabs
Sử dụng crontab - l để biết các jobs của user hiện tại. Nếu chưa có dùng lệnh crontab -e để tạo jobs.
Cú pháp 1 dòng trong crontab :
Minute(0-59) Hour (0-23) Day of Month (1-31) Month (1-12 or Jan-Dec) Day of Week (0-6 or Sun-Sat) Command
0 2 12 * 0,6 /usr/bin/find
Tham khảo : Cron and Crontab usage and examples.
Cài đặt và cập nhật phần mềm trong Linux
Trên windows các file cài đặt có định dạng .exe, .msi, .vis,... việc cài đặt rất dễ dàng bằng việc chạy các file này. Trên unix cũng tương tự như thế. Tuy nhiên trong các bài viết này tôi chỉ dùng terminal, không dùng chế độ giao diện.
Vậy việc cài đặt trên trên linux như thế nào ?
* RPM : Red Hat Package Manager
Các chương trình sẽ có đuôi .rpm, cú pháp như sau :
rpm -i new_program.rpm
--> cài đặt chương trình mới (-i là viết tắt của install)
rpm -q program_name --> kiểm tra xem 1 chương trình đã được cài hay chưa ?
Ví dụ với Fedora 5/6:
[root@hautp sysconfig]# rpm -q mysql
mysql-5.0.18-2.1
[root@hautp sysconfig]# rpm -q firefox
firefox-1.5.0.1-9
Bây giờ cần nâng cấp nên Firefox 2.0
Tham khảo : http://fedoraproject.org/wiki/Firefox2
Chạy lệnh :
yum -y install firefox
Các lệnh cơ bản với yum:
Cài đặt : yum -y install <tên phần mềm(gói)>
Gỡ bỏ : yum -y remove <tên phần mềm>
Xem các gói đã cài : yum list <tên phần mềm>
Ví dụ : xem các gói đã cài của php :
[root@web ~]# yum list php*
Loading "installonlyn" plugin
Setting up repositories
core 100% |=========================| 1.1 kB 00:00
updates 100% |=========================| 1.2 kB 00:00
extras 100% |=========================| 1.1 kB 00:00
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 306 kB 00:01
################################################## 1072/1072
Installed Packages
php.i386 5.1.6-3.1.fc6 installed
php-Smarty.noarch 2.6.13-1.fc6 installed
php-bcmath.i386 5.1.6-3.1.fc6 installed
php-cli.i386 5.1.6-3.1.fc6 installed
php-common.i386 5.1.6-3.1.fc6 installed
php-gd.i386 5.1.6-3.1.fc6 installed
php-mbstring.i386 5.1.6-3.1.fc6 installed
Chi tiết các lệnh với yum : yum -h
Khi hết swap thì ta cần thêm swap file, ví dụ cần thêm 1G swap :
/usr/sbin/mkfile 1024m /swapfile --> tạo swap file
/usr/sbin/swap -a /swapfile --> cho hệ thống biết swap file mới nằm ở đâu
Đơn vị tính : kilobytes (k), blocks (b), or megabytes (m)
Kiểm tra swap file mới đã được thêm hay chưa ?
swap -l
Nguồn : Some examples of using UNIX find command.
Introduction
The find command allows the Unix user to process a set of files and/or directories in a file subtree.
You can specify the following:
* where to search (pathname)
* what type of file to search for (-type: directories, data files, links)
* how to process the files (-exec: run a process against a selected file)
* the name of the file(s) (-name)
* perform logical operations on selections (-o and -a)
Search for file with a specific name in a set of files (-name)
find . -name "rc.conf" -print
This command will search in the current directory and all sub directories for a file named rc.conf.
Note: The -print option will print out the path of any file that is found with that name. In general -print wil print out the path of any file that meets the find criteria.
How to apply a unix command to a set of file (-exec).
find . -name "rc.conf" -exec chmod o+r '{}' \;
This command will search in the current directory and all sub directories. All files named rc.conf will be processed by the chmod -o+r command. The argument '{}' inserts each found file into the chmod command line. The \; argument indicates the exec command line has ended.
The end results of this command is all rc.conf files have the other permissions set to read access (if the operator is the owner of the file).
How to apply a complex selection of files (-o and -a).
find /usr/src -not \( -name "*,v" -o -name ".*,v" \) '{}' \; -print
This command will search in the /usr/src directory and all sub directories. All files that are of the form '*,v' and '.*,v' are excluded. Important arguments to note are:
* -not means the negation of the expression that follows
* \( means the start of a complex expression.
* \) means the end of a complex expression.
* -o means a logical or of a complex expression.
In this case the complex expression is all files like '*,v' or '.*,v'
The above example is shows how to select all file that are not part of the RCS system. This is important when you want go through a source tree and modify all the source files... but ... you don't want to affect the RCS version control files.
How to search for a string in a selection of files (-exec grep ...).
find . -exec grep "www.ajaxviet.com" '{}' \; -print
This command will search in the current directory and all sub directories. All files that contain the string will have their path printed to standard output.
If you want to just find each file then pass it on for processing use the -q grep option. This finds the first occurrance of the search string. It then signals success to find and find continues searching for more files.
find . -exec grep -q "www.ajaxviet.com" '{}' \; -print
This command is very important for process a series of files that contain a specific string. You can then process each file appropriately. An example is find all html files with the string "www.athabascau.ca". You can then process the files with a sed script to change those occurrances of "www.athabascau.ca" with "intra.athabascau.ca".
linux comand
[HR][/HR] alias Create an alias
apropos Search Help manual pages (man -k)
awk Find and Replace text, database sort/validate/index
break Exit from a loop
builtin Run a shell builtin
bzip2 Compress or decompress named file(s)
cal Display a calendar
case Conditionally perform a command
cat Display the contents of a file
cd Change Directory
cfdisk Partition table manipulator for Linux
chgrp Change group ownership
chmod Change access permissions
chown Change file owner and group
chroot Run a command with a different root directory
cksum Print CRC checksum and byte counts
clear Clear terminal screen
cmp Compare two files
comm Compare two sorted files line by line
command Run a command - ignoring shell functions
continue Resume the next iteration of a loop
cp Copy one or more files to another location
cron Daemon to execute scheduled commands
crontab Schedule a command to run at a later time
csplit Split a file into context-determined pieces
cut Divide a file into several parts
date Display or change the date & time
dc Desk Calculator
dd Data Dump - Convert and copy a file
declare Declare variables and give them attributes
df Display free disk space
diff Display the differences between two files
diff3 Show differences among three files
dir Briefly list directory contents
dircolors Colour setup for `ls'
dirname Convert a full pathname to just a path
dirs Display list of remembered directories
du Estimate file space usage
echo Display message on screen
egrep Search file(s) for lines that match an extended expression
eject Eject removable media
enable Enable and disable builtin shell commands
env Environment variables
ethtool Ethernet card settings
eval Evaluate several commands/arguments
exec Execute a command
exit Exit the shell
expand Convert tabs to spaces
export Set an environment variable
expr Evaluate expressions
false Do nothing, unsuccessfully
fdformat Low-level format a floppy disk
fdisk Partition table manipulator for Linux
fgrep Search file(s) for lines that match a fixed string
file Determine file type
find Search for files that meet a desired criteria
fmt Reformat paragraph text
fold Wrap text to fit a specified width.
for Expand words, and execute commands
format Format disks or tapes
free Display memory usage
fsck File system consistency check and repair
ftp File Transfer Protocol
function Define Function Macros
gawk Find and Replace text within file(s)
getopts Parse positional parameters
grep Search file(s) for lines that match a given pattern
groups Print group names a user is in
gzip Compress or decompress named file(s)
hash Remember the full pathname of a name argument
head Output the first part of file(s)
history Command History
hostname Print or set system name
id Print user and group id's
if Conditionally perform a command
import Capture an X server screen and save the image to file
install Copy files and set attributes
join Join lines on a common field
kill Stop a process from running
less Display output one screen at a time
let Perform arithmetic on shell variables
ln Make links between files
local Create variables
locate Find files
logname Print current login name
logout Exit a login shell
look Display lines beginning with a given string
lpc Line printer control program
lpr Off line print
lprint Print a file
lprintd Abort a print job
lprintq List the print queue
lprm Remove jobs from the print queue
ls List information about file(s)
lsof List open files
make Recompile a group of programs
man Help manual
mkdir Create new folder(s)
mkfifo Make FIFOs (named pipes)
mkisofs Create an hybrid ISO9660/JOLIET/HFS filesystem
mknod Make block or character special files
more Display output one screen at a time
mount Mount a file system
mtools Manipulate MS-DOS files
mv Move or rename files or directories
netstat Networking information
nice Set the priority of a command or job
nl Number lines and write files
nohup Run a command immune to hangups
passwd Modify a user password
paste Merge lines of files
pathchk Check file name portability
ping Test a network connection
popd Restore the previous value of the current directory
pr Prepare files for printing
printcap Printer capability database
printenv Print environment variables
printf Format and print data
ps Process status
pushd Save and then change the current directory
pwd Print Working Directory
quota Display disk usage and limits
quotacheck Scan a file system for disk usage
quotactl Set disk quotas
ram ram disk device
rcp Copy files between two machines.
read read a line from standard input
readonly Mark variables/functions as readonly
remsync Synchronize remote files via email
return Exit a shell function
rm Remove files
rmdir Remove folder(s)
rsync Remote file copy (Synchronize file trees)
screen Terminal window manager
scp Secure copy (remote file copy)
sdiff Merge two files interactively
sed Stream Editor
select Accept keyboard input
seq Print numeric sequences
set Manipulate shell variables and functions
sftp Secure File Transfer Program
shift Shift positional parameters
shopt Shell Options
shutdown Shutdown or restart linux
sleep Delay for a specified time
sort Sort text files
source Run commands from a file `.'
split Split a file into fixed-size pieces
ssh Secure Shell client (remote login program)
strace Trace system calls and signals
su Substitute user identity
sum Print a checksum for a file
symlink Make a new name for a file
sync Synchronize data on disk with memory
tail Output the last part of files
tar Tape ARchiver
tee Redirect output to multiple files
test Evaluate a conditional expression
time Measure Program running time
times User and system times
touch Change file timestamps
top List processes running on the system
traceroute Trace Route to Host
trap Run a command when a signal is set(bourne)
tr Translate, squeeze, and/or delete characters
true Do nothing, successfully
tsort Topological sort
tty Print filename of terminal on stdin
type Describe a command
ulimit Limit user resources
umask Users file creation mask
umount Unmount a device
unalias Remove an alias
uname Print system information
unexpand Convert spaces to tabs
uniq Uniquify files
units Convert units from one scale to another
unset Remove variable or function names
unshar Unpack shell archive scripts
until Execute commands (until error)
useradd Create new user account
usermod Modify user account
users List users currently logged in
uuencode Encode a binary file
uudecode Decode a file created by uuencode
v Verbosely list directory contents (`ls -l -b')
vdir Verbosely list directory contents (`ls -l -b')
vi Text Editor
watch Execute/display a program periodically
wc Print byte, word, and line counts
whereis Report all known instances of a command
which Locate a program file in the user's path.
while Execute commands
who Print all usernames currently logged in
whoami Print the current user id and name (`id -un')
Wget Retrieve web pages or files via HTTP, HTTPS or FTP
xargs Execute utility, passing constructed argument list(s)
yes Print a string until interrupted
.period Run commands from a file
### Comment / Remark
Linux command (tiếng việt )
[HR][/HR] * Các Lệnh Về Khởi Tạo
- rlogin: dùng để điều khiển hoặc thao tác lệnh trên một máy khác.
- exit: thoát khỏi hệ thống (Bourne-Shell).
- logout: thoát khỏi hệ thống C-Shell.
- id: chỉ danh của người sử dụng.
- logname: tên người sử dụng login.
- man: giúp đỡ.
- newgrp: chuyển người sử dụng sang một nhóm mới.
- psswd: thay đổi password của người sử dụng.
- set: xác định các biến môi trường.
- tty: đặt các thông số terminal.
- uname: tên của hệ thống (host).
- who: cho biết những ai đang thâm nhập hệ thống.
* Lệnh Về Trình Báo Màn Hình:
- echo: hiển thị dòng ký tự hay biến.
- setcolor: đặt màu nền và chữ của màn hình.
* Lệnh Về Desktop:
- bc: tính biểu thức số học.
- cal: máy tính cá nhân.
- date: hiển thị và đặt ngày.
- mail: gửi - nhận thư tín điện tử.
- mesg: cấm/cho phép hiển thị thông báo trên màn hình (bởi write/ hello).
- spell: kiểm tra lỗi chính tả.
- vi: soạn thảo văn bản.
- write/hello: cho phép gửi dòng thông báo đến những người sử dụng trong hệ thống.
* Lệnh Về Thư Mục:
- cd: đổi thư mục.
- cp: sao chép 2 thư mục.
- mkdir: tạo thư mục.
- rm: loại bỏ thư mục.
- pwd: trình bày thư mục hiện hành.
* Lệnh về tập tin:
- more: trình bày nội dung tập tin.
- cp: sao chép một hay nhiều tập tin.
- find: tìm vị trí của tập tin.
- grep: tìm vị trí của chuỗi ký tự trong tập tin.
- ls: trình bày tên và thuộc tính của các tập tin trong thư mục.
- mv: di chuyển/đổi tên một tập tin.
- sort: sắp thứ tự nội dung tập tin.
- wc: đếm số từ trong tập tin.
- cat: hiển thị nội dung moat tập tin.
- vi: soạn thảo hoặc sửa đổi nội dung tập tin.
* Lệnh về quản lý tiến trình:
- kill: hủy bỏ một tiến trình.
- ps: trình bày tình trạng của các tiến trình.
- sleep: ngưng hoạt động một thời gian.
* Các Lệnh Về Phân Quyền:
- chgrp: chuyển chủ quyền tập tin, thư mục từ một nhóm sang một nhóm khác.
- chmod: thay đổi quyền sở hữu của tập tin hay thư mục.
- chown: thay đổi người sở hữu tập tin hay thư mục.
* Lệnh Về Kiểm Soát In:
- cancel: ngưng in.
- lp: in tài liệu ra máy in.
Các lệnh Shell cơ bản trong Linux
[HR][/HR] Khi mở một shell, bạn cần đến tài khoản kích hoạt vào thư mục chủ (thông thường nằm trong /home/tên_người_dùng).
Chú ý rằng mỗi lệnh đều có nhiều tùy chọn riêng của mình. Để xem các tùy chọn cho một lệnh cụ thể, đơn giản bạn chỉ cần gõ "man <command>" (trong đó: man là từ khóa; command là tên lệnh). Một điểm quan trọng cần chú ý là trong các hệ điều hành Linux, câu lệnh có phân biệt chữ hoa, chữ thường. “A” sẽ được hệ điều hành hiểu là khác so với “a”.
Để vào hệ thống file, dùng:
- pwd: đưa ra ngoài màn hình thư mục đang hoạt động (ví dụ: /etc/ssh).
- cd: thay đổi thư mục (ví dụ: cd .. – ra một cấp thư mục hiện tại; cd vidu – vào thư mục /vidu).
- ls: đưa ra danh sách nội dung thư mục.
- mkdir: tạo thư mục mới (mkdir tên_thumuc).
- touch: tạo file mới (touch ten_file).
- rmdir: bỏ một thư mục (rmdir ten_thumuc).
- cp: copy file hoặc thư mục (cp file_nguồn file_đích).
- mv: di chuyển file hoặc thư mục; cũng được dùng để đặt lại tên file hoặc thư mục (mv vị_trí_cũ vị_trí_mới hoặc mv tên_cũ tên_mới).
- rm: loại bỏ file (rm tên_file).
Để tìm kiếm file, bạn có thể dùng:
- find <tiêu chuẩn tìm kiếm>: dùng cho các tên file.
- grep < tiêu chuẩn tìm kiếm>: để tìm nội dung trong file.
Để xem một file, bạn có thể dùng:
- more <tên file>: hiển thị file theo từng trang.
- cat < tên file>: hiển thị tất cả file.
- head < tên file>: hiển thị các dòng đầu tiên.
- tail < tên file>: hiển thị các dòng cuối cùng (có thể hữu ích trong những trường hợp như khi bạn muốn xem thông tin cuối cùng của một file hệ thống).
Để chính sửa file, bạn phải sử dụng trình soạn thảo tích hợp sẵn trên dòng lệnh. Thông thường, đây là vi và được dùng với cú pháp: vi <tên file>.
Để giải nén một lưu trữ (thông thường có đuôi tar.gz), bạn phải dùng lệnh tar với cú pháp tar -xvf <tên_file>.
Để in một file, dùng lệnh lpr <tên_file>. Chú ý là bạn phải có một số daemon hoạt động để quản lý máy in. Thông thường đây là các cup (chủ yếu là UNIX Printing System) có thể sử dụng cho tất cả các phân phối chính.
Để loại bỏ file khỏi hàng đợi ở máy in (bạn có thể lên danh sách hàng đợi bằng lệnh lpq), sử dụng câu lệnh lprm <tên_file>.
Để lắp hoặc gỡ bỏ thiết bị (thêm vào hệ thống file với vai trò như một phương tiện được phép sử dụng), dùng:
- mount /mnt/floppy: lắp thêm ổ mềm.
- umount /mnt/floppy: gỡ bỏ ổ mềm.
- mount /mnt/cdrom: lắp ổ CD-ROM.
- mount /mnt/cdrom: gỡ ổ DC-ROM.
Các thiết bị này thường được cài và cho phép sử dụng một cách tự động. Nhưng có thể một ngày đẹp trời nào đó bạn lại phải tự mình thực hiện công việc này khi có lỗi xảy ra. Đừng lo lắng!
Để tạo một phân vùng
Đầu tiên, tạo một thư mục trong /mnt (mkdir /mnt/ổ_đĩa_mới). Sau đó sử dụng lệnh mount (mount /dev/source /mnt/ ổ_đĩa_mới), trong đó /dev/source là thiết bị (tức phân vùng) bạn muốn lắp thêm vào hệ thống file.
Nếu muốn kết nối tới một host từ xa, sử dụng lệnh ssh. Cú pháp là ssh <tên_host>.
Quản lý hệ thống:
- ps: hiển thị các chương trình hiện thời đang chạy (rất hữu ích: ps là cái nhìn toàn bộ về tất cả các chương trình).
Trong danh sách đưa ra khi thực hiện lệnh ps, bạn sẽ thấy có số PID (Process identification - nhân dạng tiến trình).
Con số này sẽ được hỏi đến khi muốn ngừng một dịch vụ hay ứng dụng, dùng lệnh kill <PID>.
- top: hoạt động khá giống như Task Manager trong Windows. Nó đưa ra thông tin về tất cả tài nguyên hệ thống, các tiến trình đang chạy, tốc độ load trung bình… Lệnh top -d <delay> thiết lập khoảng thời gian làm tươi lại hệ thống. Bạn có thể đặt bất kỳ giá trị nào, từ .1 (tức 10 mili giây) tới 100 (tức 100 giây) hoặc thậm chí lớn hơn.
- uptime: thể hiện thời gian của hệ thống và tốc độ load trung bình trong khoảng thời gian đó, trước đây là 5 phút và 15 phút.
Thông thường tốc độ load trung bình được tính toán theo phần trăm tài nguyên hệ thống (vi xử lý, RAM, ổ cứng vào/ra, tốc độ load mạng) được dùng tại một thời điểm. Nếu tốc độ được tính toán là 0.37, tức có 37% tài nguyên được sử dụng. Giá trị lớn hơn như 2.35 nghĩa là hệ thống phải đợi một số dữ liệu, khi đó nó sẽ tính toán nhanh hơn 235% mà không gặp phải vấn đề gì. Nhưng giữa các phân phối có thể khác nhau một chút.
- free: hiển thị thông tin trên bộ nhớ hệ thống.
- ifconfig <tên_giao_diện>: để xem thông tin chi tiết về các giao diện mạng; thông thường giao diện mạng ethernet có tên là eth(). Bạn có thể cài đặt các thiết lập mạng như địa chỉ IP hoặc bằng cách dùng lệnh này (xem man ifconfig). Nếu có điều gì đó chưa chính xác, bạn có thể stop hoặc start (tức ngừng hoặc khởi_động) giao diện bằng cách dùng lệnh ifconfig <tên_giao_diện> up/down.
- passwd: cho phép bạn thay đổi mật khẩu (passwd người_dùng_sở_hữu_mật_khẩu hoặc tên người dùng khác nếu bạn đăng nhập hệ thống với vai trò root).
- useradd: cho phép bạn thêm người dùng mới (xem man useradd).
Dù ở phân phối nào, bạn cũng có thể dùng phím TAB để tự động hoàn chỉnh một lệnh hoặc tên file. Điều này rất hữu ích khi bạn quen với các lệnh. Bạn cũng có thể sử dụng các phím lên, xuống để cuộn xem các lệnh đã nhập. Bạn có thể dùng lệnh đa dòng trên một dòng. Ví dụ như, nếu muốn tạo ba thư mục chỉ trên một dòng, cú pháp có thể là: mkdir thư_mục_1 ; mkdir thư_mục_2 ; mkdir thư_mục_3.
Một điều thú vị khác nữa là các lệnh dạng pipe. Bạn có thể xuất một lệnh thông qua lệnh khác. Ví dụ: man mkdir | tail sẽ đưa ra thông tin các dòng cuối cùng trong trang xem "thủ công" của lệnh mkdir.
Nếu lúc nào đó được yêu cầu phải đăng nhập với tài khoản gốc (tức "siêu" admin của hệ thống), bạn có thể đăng nhập tạm thời bằng cách dùng lệnh su. Tham số -1 (su-1) dùng để thay đổi thư mục chủ và cho các lệnh đã hoặc đang dùng. Chú ý là bạn cũng sẽ được nhắc một mật khẩu.
Cài đặt Hệ điều hành Linux
[HR][/HR] Mục đích sử dung:
Dù cài đặt hệ thống Linux để phục vụ cho mục đích nào đi nữa thì vẫn dùng chung một bộ đĩa cài đặt. Có một số tùy chọn khi cài đặt dó là: Dùng làm máy cá nhân( Pesonal Desktop), máy trạm trong hệ thống mạng (Workstation) hay máy chủ (Server) nếu:
Dùng ở gia đình thì chọn Pesonal Desktop.
- Dùng làm máy trạm trong các mạng cục bộ thì chọn Workstation
- Dùng làm máy chủ cho các phòng máy hay các mạng thì chọn Server
- Nếu dung lượng đĩa cho phép thì nên chọn mục Custom và cài tất cả các packages để phục vụ cho việc học tập và tìm hiểu thêm về hệ thống linux (Cí này mình khuyến khích các bạn làm đó nghen )
I. Quá trình cài đặt:
Để cấu hình và tùy biến Linux thì khá phức tạp, vì có rất nhiều thứ mà bạn có thể thay đổi được trong Linux mà. Nhưng nếu cài đặt theo chế độ mặc định thì lại cực kì đơn giản. Quá trình cài đặt giống hệt như thèng ku Windows, chỉ khác một điều duy nhất là… bạn không phải nhập Serial number (Sướng hén J)) Nếu bạn là người mới bắt đàu thì cứ cài như vậy đã.
Ngoài ra mốtố bản Linux cho phép bạn khởi động ngay trực tiếp từ đĩa CD luôn (thậm chí là đĩa mềm nữa nè) mà không cần phải cài đặt (nếu bạn là một chuyên gia thì thoai khỏi phải bàn nữa, việc tạo ra các đĩa như thế này quá bèo hén)
Thông thường thì trên các đĩa của bản phân phối Linux và cả trên mạng Internet đều có hướng dẫn khá chi tiết về cách cài đặt Linux. Do đó ở đây tui sẽ không nói rõ về quá trình cài đặt như thế nào mà các bạn hãy tự tìm tài liệu và tham khảo đi nhé.
Vấn đề ở chỗ, con người Việt Nam trước khi học Linux đã làm quen và có thể có kinh nghiệm sử dụng dòng HĐH Windows 98’SE, Windows 2000, Windows XP. Người dùng rrã làm việc với HDH windows thì họ không muốn mất đi môi trường làm việc quen thuộc của mình cũng như những gì đã tạo ra và cấu hình dưới thời Windows. Nhưng rất may là không nhất thiết phải đánh mất tất cả những điều đó. Bởi vì trên một máy tính có thể cùng chung sống hòa bình hai HĐH hoặc hơn thế nữa.
Và ở trong pham jvi bài viết này, em sẽ sử dụng phiên bản RedHat Linux 9.0
RedHad là một hệ điều hành có tính linh hoạt rất cao. Tai sao vây? Đó chính là do RedHat 9.0 có thể ngốn tới 4.5 GB đĩa cứng của bạn tuy nhiên bạn cũng có thể cài Linux… trên một chiếc đĩa mềm (Giống như với MS-DOS ngày xưa ấy). tất cả phụ thuộc vào cách mà bạn cấu hình Linux (cài các tiện ích…) Nếu cài Linux như một HĐH mạng thì cấu hình yêu cầu là rất lớn, nhưng người ta cũng có thể cài nhân Linux vào các thiết bị cầm tay (với bộ nhớ rât nhỏ). Tuy nhiên đối với bản RedHad 9.0 để có thể chạy trơn tru thì cấu hình yêu cầu như sau:
1.CPU: Pentium
- Chế độ Text: 200MH trở lên
- Chế độ Graphic: 400MH trở lên
2. Dung lượng đĩa cứng: (Tùy theo ứng dụng cần cài đặt)
- Tối thiểu: 475 MB
- Server: 850 MB
- Pesonal Desktop: 1,7 GB
- Workstation: 2,1 GB
- Tất cả: 5 GB
3. Bộ nhớ:
- Chế độ Text: 64 MB trở lên
- Chế độ Graphic: 128 Mb trở lên
4 Card mạng:
- Đối với máy Redserv.com.vn: 01 Card mạng
- Đối với máy Blueserv.com.vn: 01 Card mạng
- Đới với máy Firewall.com.vn: 02 card mạng
5. Ổ CDROM
Tóm lại nếu bạn đã từng cài đặt HĐH Windows thì việt cài đặt Linux RedHat cũng không có gì quá khó cả. Để làm được điều đó bạn cần tiến hành như sau:
- Trước tiên bạn cần có một bộ cài Linux RedHat 9.0
- Tiến hành khởi động hệ thống từ bộ đĩa CDROM cài đặt (Disk 1)
- Chọn chế độ cài đặt (Text hoặc Graphic)
- Thông qua từng bước wizard để thiết lập các thông số về hệ thống như: Bàn phím, chuột, ngôn ngữ hiển thị trong quá trình cài đặt, giừo hệ thống…
- Chọn kiểu cài đặt
- Thiết lập phân vùng cài Linux RedHat
- Cài đặt boot loader
- Cấu hình Account
- Các lưu ý lựa chọn gói phần mềm cài đặt
- Cấu hình X-Windown.
II. Một vài lừoi khuyên trước khi tiên hành cài đặt:
Trước khi cài đặt Linux bạn nên thực hiện một vài thao tác phòng xa, vì rất có thể bạn phân vùng lại ổ đĩa, thay đổi bản ghi khởi động (Boot Record) và làm việc với các têph tin khởi dộng cũng như tập tin cấu hình. Các thao tác này không phải lúc nào xung đem lạukết quả theo ý muốn. trong trường hợp xấu. con PC của bạn có thể không khởi động lại được nữa. Biết chá thaót khởi tình huống này và phục hồi dữ liệu là một câu hỏi lứon. Nhưng rơi vào tình huống như vậy đối với người mới bắt đầu rất dễ xảy ra đóa.
Chính vì vậy bước đầu tiên là bạntạo một đĩa mềm khởi động hay đĩa mềm giúp phục hồi hệ thống. Bước tiếp theo, bạn cần ghi lại những dữ liệu có giá trị (backup). Cuối cùng là phải chuẩn bị đầy đủ các tập tin cài đặt cảu hệ thống cũ (CD, Đĩa mềm). Một lời khuyên quan trọng khác là nếu xảy ra cái gì ngoài ý muốn thì đừng nên hoang mang, bạn hãy nên thử mọi cách để tìm ra nguyên nhân, kiểm tra lại nhiều lần thao tác của mình và hãy đọc kĩ tài liệu để xem mình có làm gì sai thao tác nào hay không.
III. Chuẩn bị các phân vùng trên đĩa:
Lời khuyên khi tạo phân vùng: Linux sử dụng cơ chế truy xuất ổ đĩa thông qua tập tin. Mỗi ổ đĩa được gắn với một tập tin trong thư mục /dev/. Ký hiệu ổ đĩa fd cho ổ mềm, hd cho ổ cứng, sd dành cho ổ SCSI. Ký tự a, b, c… gắn thêm vào để xác định các ổ đĩa khác nhau cùng loại. Ví dụ: Ổcứng thứ nhất là had, ổ cứng thứ 2 là hdb… xác định các Partition trong ổ đĩa người ta dùng các số đi kèm. Theo qui định partition chính và mở rộng được gán số từ 1-4. Các partition logic được gán các giá trị từ 5 trở đi.
Ví dụ: Như hình vẽ trên là các Partition của ổ cứng thứ nhất had: Có 2 partition chính ký hiệu là hda1 và hda2, một partition mở rộng là hda3. Trong partition mở rộng hda3 có 2 partition logic có kí hiệu là hda6 và hda5.
Trong Linux bắt buộc phảo có tối thiểu 2 partition sau:
Partition chính (Linux native filesystem) chứa thư mục gốc (/) và hạt nhân. Độ lớn khỏang 6GB nếu muốn cài đặt tất cả các packages của RedHat Linux 9.0 và 50-100 MB dành cho phần /boot (phần này phải được đạt tại Primary Partition của HDD để khởi động HĐH)
Partition swap (Linux swap space) được dùng làm không giảntao đổi dữ liệu khi vùng nhớ chính đầy. Không có công thứuc tinh chỉnh thức nào dành cho phần này, nhưng thuaờng là dung lượng cho phân này khỏang gấp 2 đến gấp 3 lần dung lượng bộ nhớ vật lý của hệ thống. Tuy nhiên chỉ nên dùng khoảng 256 MB trở lại, nhiều hơn nữa là không cân thiết với mộtmáy tính chíử dụng cho mục đích máy tính cá nhân.
Nếu có ý địng cài đặt Linux chung với một hệ điều hành khác trên cùng hệ thống thì phải có kế haọch trước cho việc phân hoặc đĩa cứng, mỗi hệ điều hành phải đặt trên một Primảy Partition khác nhau.
IV. Chương trình phân vùng ổ đĩa:
Sau khi hoàn thành kế hoạch phân chia ổ bạn cần lựa chọn công cụ để đưa kế hoạch này thành hiện thực. Chương trình được biết đến nhiều nhất là Fdisk. Và không cần gì hơn nữa ngoài chương trình này nếu phân chia ổ trắng, không chừa bất cứ dữ liwuj nào . Nhưng ta đang xem xét trường hợp máy đang có HĐH nào đó mà cần phân chưa ổ mà không mất thông tin. Fdisk không phù hợp với điều đó.
Có một chương trình hay và khá nổi tiếng trong việc phân vùng nhanh mà an toàn, đó là Partition Magic. Thư nhât chương trình này cho phép phân chia lại ổ đĩa mà không làm mất thông tin (tât cả những cài đặt và cấu hình trứoc đó sẽ được ghi lại). Thứ hai, chương trình nàycung cấp một giao diện đồ họa dễ sử dụng (ngay cả trong DOS), hỗ trợ dùng chuột, các thao tác thay đổi rất tõ ràng và đều được hiển thị trên màn hình

markdown:
Lệnh thống kê dung lượng thư mục Linux
[root@unix1 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.
[root@hautp ~]#
Bạn xem thông tin về user mình đang login bằng lệnh: id
[root@hautp ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(whe el) 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
[root@hautp ~]# 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
[quantrihethong@hautp 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.
[root@hautp ~]# 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
[root@hautp ~]# su quantrihethong
bạn kiểm tra lại bằng cách đánh lệnh : id
[quantrihethong@hautp 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
[quantrihethong@hautp 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 :
[quantrihethong@hautp 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
[root@hautp ~]# whereis bash
bash: /bin/bash /usr/share/man/man1/bash.1.gz
[root@hautp ~]# usermod -s /bin/bash quantrihethong
Tiếp theo lại su về user quantrihethong
[quantrihethong@hautp 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:
[root@hautp /]# 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:
[root@hautp ~]# cd /
[root@hautp /]# 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
[root@hautp /]# 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
[root@hautp /]# 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 <tên file>
[root@hautp /]# 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
[root@hautp /]# more hello
hello world !
[root@hautp /]#
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.ss64.com/bash/vi.html) [http://www.eng.hawaii.edu/Tutor/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
<ESC>
Cursor Movement (command mode):
Scroll Backward 1 screen
<ctrl>b
Scroll Up 1/2 screen
<ctrl>u
Go to beginning of line
0
Go to line n
nG
Go to end of line
$
Scroll Down 1/2 screen
<ctrl>d
Go to line number ##
:##
Scroll Forward 1 screen
<ctrl>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/<tên user>, ví dụ ở đây là /home/hautp
[root@hautp /]# cd /home/
[root@hautp home]# cd quantrihethong/
[root@hautp 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
[root@hautp quantrihethong]# more .bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
[root@hautp 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ì ?
**Các lệnh căn bản trong linux ( tt )**
Các lệnh thông dụng trên hệ thống Unix
Tôi chỉ đưa ra các lệnh kèm chưc năng, các tham số của nó thì bạn cần xem thêm.
1. Lệnh man, info và apropos : thông tin về lệnh
2. Lệnh cd : chuyển thư mục
3. Lệnh ls : liệt kê file thông thường hay dùng ls -al hoặc ls -l
4. Lệnh file : xem thông tin loại file của 1 file file <tên file>
5. Lệnh more và less : xem nội dung file more <tên file>
6. Lệnh cat và tail : xem nội dung file cat <tên file>
7. Lệnh cp : lệnh copy
8. Lệnh mv : lệnh di chuyển hoặc đổi tên file, thư mục
9. Lệnh mkdir : tạo thư mục mới
10. Lệnh rm và rmdir : xóa file và xóa thư mục rỗng
11. Lệnh dir : bằng với ls -l
12. Lệnh pwd : xem vị trí thư mục hiện thời
13. Lệnh date : xem ngày
14. Lệnh cal : xem lich, ví dụ cal 2006
15. Lệnh exit : thoát khỏi terminal
Còn sau đây là một số lệnh yêu thích :
1. Lệnh touch : tạo file
2. Lệnh find : tìm kiếm (sẽ có 1 bài viết riêng về lệnh này)
3. Lệnh grep : tìm kiếm nội dung file hỗ trợ regular expression
4. Lệnh who, whoami, whatis, whereis, which : đúng như nghĩa của các từ này
5. Lệnh echo : hiển thị nội dung 1 biến ,...
Các lệnh dành cho quản trị hệ thống :
1. Lệnh last : hiển thị các user login gần đây
2. Lệnh df : xem thông tin ổ đĩa, thông thường hay dùng df -h
3. Lệnh du : xem thông tin dung lượng file, thư mục
4. Lệnh top : cái giống như taskmanager của windows, nó sẽ hiển thị thông tin về các processes
5. Lệnh free : xem tình hình bộ nhớ
6. Lệnh ps : xem thông tin processes
7. Lệnh kill : tắt process
8. Lệnh mount và unmount :
9. Lệnh chmod : thay đổi permissions đối với file
10. Lệnh chown : thay đổi người sở hữu đối với file
11. Lệnh chgrp : thay đổi group đối với file
12. Lệnh chroot
Ngoài các lệnh trên còn có rất nhiều lệnh khác, có thể tham khảo tại đây :
[http://www.ss64.com/bash/](http://www.ss64.com/bash/)
Backup sao lưu giữ liệu với UNIX
Các lệnh cần dùng : tar, gzip, gunzip
Ví dụ với tar :
tar -czvf MyArchive Source_file
hoặc
tar --create --gzip --verbose --file=MyArchive Source_file
tar -xzvf MyArchive Source_file
hoặc
tar --extract --gunzip --verbose --file=MyArchive Source_file
gzip là một phần của tar, tuy nhiên gzip và gunzip vần dùng được độc lập.
Việc backup và sao lưu nên viết thành các job để hệ thống tự động làm.
Ví dụ tôi cần backup dữ liệu của mysql hàng tuần vào Chủ nhật.
#!/bin/bash
Date=`date '+%a'`
Day=`date '+%m%d'`
if [ $Date == 'Sun' ]
then
cd /mysqldata
for ix in *
do
if [ -d $ix ]
then
tar -czvf /quantrihethong/backup/database_$Day.$ix.tar $ix
fi
done
fi
Đoạn script bạn cho vào 1 file, ví dụ : db_backup.sh
Sau đó chmod +x cho file db_backup.sh có nghĩa là cho file này có quyền chạy sau đó tạo schedule cho file này.
Cái này nó tương tự như schedule task của windows.
Để tạo schedule trên Linux bạn dùng crontab.
[root@hautp etc]# ls -l| grep cron
-rw-r--r-- 1 root root 329 Feb 11 2006 anacrontab
drwxr-xr-x 2 root root 4096 Feb 16 2006 cron.d
drwxr-xr-x 2 root root 4096 Aug 3 13:43 cron.daily
-rw-r--r-- 1 root root 0 Aug 3 13:21 cron.deny
drwxr-xr-x 2 root root 4096 Dec 11 2005 cron.hourly
drwxr-xr-x 2 root root 4096 Aug 3 13:18 cron.monthly
-rw-r--r-- 1 root root 255 Dec 11 2005 crontab
drwxr-xr-x 2 root root 4096 Aug 3 13:21 cron.weekly
[root@hautp etc]# more crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
Các job này sẽ được đặt trong các file trên hoặc trong thư mục : /var/spool/cron/crontabs
Sử dụng crontab - l để biết các jobs của user hiện tại. Nếu chưa có dùng lệnh crontab -e để tạo jobs.
Cú pháp 1 dòng trong crontab :
Minute(0-59) Hour (0-23) Day of Month (1-31) Month (1-12 or Jan-Dec) Day of Week (0-6 or Sun-Sat) Command
0 2 12 * 0,6 /usr/bin/find
Tham khảo : Cron and Crontab usage and examples.
Cài đặt và cập nhật phần mềm trong Linux
Trên windows các file cài đặt có định dạng .exe, .msi, .vis,... việc cài đặt rất dễ dàng bằng việc chạy các file này. Trên unix cũng tương tự như thế. Tuy nhiên trong các bài viết này tôi chỉ dùng terminal, không dùng chế độ giao diện.
Vậy việc cài đặt trên trên linux như thế nào ?
* RPM : Red Hat Package Manager
Các chương trình sẽ có đuôi .rpm, cú pháp như sau :
rpm -i new_program.rpm
--> cài đặt chương trình mới (-i là viết tắt của install)
rpm -q program_name --> kiểm tra xem 1 chương trình đã được cài hay chưa ?
Ví dụ với Fedora 5/6:
[root@hautp sysconfig]# rpm -q mysql
mysql-5.0.18-2.1
[root@hautp sysconfig]# rpm -q firefox
firefox-1.5.0.1-9
Bây giờ cần nâng cấp nên Firefox 2.0
Tham khảo :
[http://fedoraproject.org/wiki/Firefox2](http://fedoraproject.org/wiki/Firefox2)
Chạy lệnh :
yum -y install firefox
Các lệnh cơ bản với yum:
Cài đặt : yum -y install <tên phần mềm(gói)>
Gỡ bỏ : yum -y remove <tên phần mềm>
Xem các gói đã cài : yum list <tên phần mềm>
Ví dụ : xem các gói đã cài của php :
[root@web ~]# yum list php*
Loading "installonlyn" plugin
Setting up repositories
core 100% |=========================| 1.1 kB 00:00
updates 100% |=========================| 1.2 kB 00:00
extras 100% |=========================| 1.1 kB 00:00
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 306 kB 00:01
################################################## 1072/1072
Installed Packages
php.i386 5.1.6-3.1.fc6 installed
php-Smarty.noarch 2.6.13-1.fc6 installed
php-bcmath.i386 5.1.6-3.1.fc6 installed
php-cli.i386 5.1.6-3.1.fc6 installed
php-common.i386 5.1.6-3.1.fc6 installed
php-gd.i386 5.1.6-3.1.fc6 installed
php-mbstring.i386 5.1.6-3.1.fc6 installed
Chi tiết các lệnh với yum : yum -h
Khi hết swap thì ta cần thêm swap file, ví dụ cần thêm 1G swap :
/usr/sbin/mkfile 1024m /swapfile --> tạo swap file
/usr/sbin/swap -a /swapfile --> cho hệ thống biết swap file mới nằm ở đâu
Đơn vị tính : kilobytes (k), blocks (b), or megabytes (m)
Kiểm tra swap file mới đã được thêm hay chưa ?
swap -l
Nguồn : Some examples of using UNIX find command.
Introduction
The find command allows the Unix user to process a set of files and/or directories in a file subtree.
You can specify the following:
* where to search (pathname)
* what type of file to search for (-type: directories, data files, links)
* how to process the files (-exec: run a process against a selected file)
* the name of the file(s) (-name)
* perform logical operations on selections (-o and -a)
Search for file with a specific name in a set of files (-name)
find . -name "rc.conf" -print
This command will search in the current directory and all sub directories for a file named rc.conf.
Note: The -print option will print out the path of any file that is found with that name. In general -print wil print out the path of any file that meets the find criteria.
How to apply a unix command to a set of file (-exec).
find . -name "rc.conf" -exec chmod o+r '{}' \;
This command will search in the current directory and all sub directories. All files named rc.conf will be processed by the chmod -o+r command. The argument '{}' inserts each found file into the chmod command line. The \; argument indicates the exec command line has ended.
The end results of this command is all rc.conf files have the other permissions set to read access (if the operator is the owner of the file).
How to apply a complex selection of files (-o and -a).
find /usr/src -not \( -name "*,v" -o -name ".*,v" \) '{}' \; -print
This command will search in the /usr/src directory and all sub directories. All files that are of the form '*,v' and '.*,v' are excluded. Important arguments to note are:
* -not means the negation of the expression that follows
* \( means the start of a complex expression.
* \) means the end of a complex expression.
* -o means a logical or of a complex expression.
In this case the complex expression is all files like '*,v' or '.*,v'
The above example is shows how to select all file that are not part of the RCS system. This is important when you want go through a source tree and modify all the source files... but ... you don't want to affect the RCS version control files.
How to search for a string in a selection of files (-exec grep ...).
find . -exec grep "www.ajaxviet.com" '{}' \; -print
This command will search in the current directory and all sub directories. All files that contain the string will have their path printed to standard output.
If you want to just find each file then pass it on for processing use the -q grep option. This finds the first occurrance of the search string. It then signals success to find and find continues searching for more files.
find . -exec grep -q "www.ajaxviet.com" '{}' \; -print
This command is very important for process a series of files that contain a specific string. You can then process each file appropriately. An example is find all html files with the string "www.athabascau.ca". You can then process the files with a sed script to change those occurrances of "www.athabascau.ca" with "intra.athabascau.ca".
**linux comand**
[HR][/HR] alias Create an alias
apropos Search Help manual pages (man -k)
awk Find and Replace text, database sort/validate/index
break Exit from a loop
builtin Run a shell builtin
bzip2 Compress or decompress named file(s)
cal Display a calendar
case Conditionally perform a command
cat Display the contents of a file
cd Change Directory
cfdisk Partition table manipulator for Linux
chgrp Change group ownership
chmod Change access permissions
chown Change file owner and group
chroot Run a command with a different root directory
cksum Print CRC checksum and byte counts
clear Clear terminal screen
cmp Compare two files
comm Compare two sorted files line by line
command Run a command - ignoring shell functions
continue Resume the next iteration of a loop
cp Copy one or more files to another location
cron Daemon to execute scheduled commands
crontab Schedule a command to run at a later time
csplit Split a file into context-determined pieces
cut Divide a file into several parts
date Display or change the date & time
dc Desk Calculator
dd Data Dump - Convert and copy a file
declare Declare variables and give them attributes
df Display free disk space
diff Display the differences between two files
diff3 Show differences among three files
dir Briefly list directory contents
dircolors Colour setup for `ls'
dirname Convert a full pathname to just a path
dirs Display list of remembered directories
du Estimate file space usage
echo Display message on screen
egrep Search file(s) for lines that match an extended expression
eject Eject removable media
enable Enable and disable builtin shell commands
env Environment variables
ethtool Ethernet card settings
eval Evaluate several commands/arguments
exec Execute a command
exit Exit the shell
expand Convert tabs to spaces
export Set an environment variable
expr Evaluate expressions
false Do nothing, unsuccessfully
fdformat Low-level format a floppy disk
fdisk Partition table manipulator for Linux
fgrep Search file(s) for lines that match a fixed string
file Determine file type
find Search for files that meet a desired criteria
fmt Reformat paragraph text
fold Wrap text to fit a specified width.
for Expand words, and execute commands
format Format disks or tapes
free Display memory usage
fsck File system consistency check and repair
ftp File Transfer Protocol
function Define Function Macros
gawk Find and Replace text within file(s)
getopts Parse positional parameters
grep Search file(s) for lines that match a given pattern
groups Print group names a user is in
gzip Compress or decompress named file(s)
hash Remember the full pathname of a name argument
head Output the first part of file(s)
history Command History
hostname Print or set system name
id Print user and group id's
if Conditionally perform a command
import Capture an X server screen and save the image to file
install Copy files and set attributes
join Join lines on a common field
kill Stop a process from running
less Display output one screen at a time
let Perform arithmetic on shell variables
ln Make links between files
local Create variables
locate Find files
logname Print current login name
logout Exit a login shell
look Display lines beginning with a given string
lpc Line printer control program
lpr Off line print
lprint Print a file
lprintd Abort a print job
lprintq List the print queue
lprm Remove jobs from the print queue
ls List information about file(s)
lsof List open files
make Recompile a group of programs
man Help manual
mkdir Create new folder(s)
mkfifo Make FIFOs (named pipes)
mkisofs Create an hybrid ISO9660/JOLIET/HFS filesystem
mknod Make block or character special files
more Display output one screen at a time
mount Mount a file system
mtools Manipulate MS-DOS files
mv Move or rename files or directories
netstat Networking information
nice Set the priority of a command or job
nl Number lines and write files
nohup Run a command immune to hangups
passwd Modify a user password
paste Merge lines of files
pathchk Check file name portability
ping Test a network connection
popd Restore the previous value of the current directory
pr Prepare files for printing
printcap Printer capability database
printenv Print environment variables
printf Format and print data
ps Process status
pushd Save and then change the current directory
pwd Print Working Directory
quota Display disk usage and limits
quotacheck Scan a file system for disk usage
quotactl Set disk quotas
ram ram disk device
rcp Copy files between two machines.
read read a line from standard input
readonly Mark variables/functions as readonly
remsync Synchronize remote files via email
return Exit a shell function
rm Remove files
rmdir Remove folder(s)
rsync Remote file copy (Synchronize file trees)
screen Terminal window manager
scp Secure copy (remote file copy)
sdiff Merge two files interactively
sed Stream Editor
select Accept keyboard input
seq Print numeric sequences
set Manipulate shell variables and functions
sftp Secure File Transfer Program
shift Shift positional parameters
shopt Shell Options
shutdown Shutdown or restart linux
sleep Delay for a specified time
sort Sort text files
source Run commands from a file `.'
split Split a file into fixed-size pieces
ssh Secure Shell client (remote login program)
strace Trace system calls and signals
su Substitute user identity
sum Print a checksum for a file
symlink Make a new name for a file
sync Synchronize data on disk with memory
tail Output the last part of files
tar Tape ARchiver
tee Redirect output to multiple files
test Evaluate a conditional expression
time Measure Program running time
times User and system times
touch Change file timestamps
top List processes running on the system
traceroute Trace Route to Host
trap Run a command when a signal is set(bourne)
tr Translate, squeeze, and/or delete characters
true Do nothing, successfully
tsort Topological sort
tty Print filename of terminal on stdin
type Describe a command
ulimit Limit user resources
umask Users file creation mask
umount Unmount a device
unalias Remove an alias
uname Print system information
unexpand Convert spaces to tabs
uniq Uniquify files
units Convert units from one scale to another
unset Remove variable or function names
unshar Unpack shell archive scripts
until Execute commands (until error)
useradd Create new user account
usermod Modify user account
users List users currently logged in
uuencode Encode a binary file
uudecode Decode a file created by uuencode
v Verbosely list directory contents (`ls -l -b')
vdir Verbosely list directory contents (`ls -l -b')
vi Text Editor
watch Execute/display a program periodically
wc Print byte, word, and line counts
whereis Report all known instances of a command
which Locate a program file in the user's path.
while Execute commands
who Print all usernames currently logged in
whoami Print the current user id and name (`id -un')
Wget Retrieve web pages or files via HTTP, HTTPS or FTP
xargs Execute utility, passing constructed argument list(s)
yes Print a string until interrupted
.period Run commands from a file
### Comment / Remark
**Linux command (tiếng việt )**
[HR][/HR] * Các Lệnh Về Khởi Tạo
- rlogin: dùng để điều khiển hoặc thao tác lệnh trên một máy khác.
- exit: thoát khỏi hệ thống (Bourne-Shell).
- logout: thoát khỏi hệ thống C-Shell.
- id: chỉ danh của người sử dụng.
- logname: tên người sử dụng login.
- man: giúp đỡ.
- newgrp: chuyển người sử dụng sang một nhóm mới.
- psswd: thay đổi password của người sử dụng.
- set: xác định các biến môi trường.
- tty: đặt các thông số terminal.
- uname: tên của hệ thống (host).
- who: cho biết những ai đang thâm nhập hệ thống.
* Lệnh Về Trình Báo Màn Hình:
- echo: hiển thị dòng ký tự hay biến.
- setcolor: đặt màu nền và chữ của màn hình.
* Lệnh Về Desktop:
- bc: tính biểu thức số học.
- cal: máy tính cá nhân.
- date: hiển thị và đặt ngày.
- mail: gửi - nhận thư tín điện tử.
- mesg: cấm/cho phép hiển thị thông báo trên màn hình (bởi write/ hello).
- spell: kiểm tra lỗi chính tả.
- vi: soạn thảo văn bản.
- write/hello: cho phép gửi dòng thông báo đến những người sử dụng trong hệ thống.
* Lệnh Về Thư Mục:
- cd: đổi thư mục.
- cp: sao chép 2 thư mục.
- mkdir: tạo thư mục.
- rm: loại bỏ thư mục.
- pwd: trình bày thư mục hiện hành.
* Lệnh về tập tin:
- more: trình bày nội dung tập tin.
- cp: sao chép một hay nhiều tập tin.
- find: tìm vị trí của tập tin.
- grep: tìm vị trí của chuỗi ký tự trong tập tin.
- ls: trình bày tên và thuộc tính của các tập tin trong thư mục.
- mv: di chuyển/đổi tên một tập tin.
- sort: sắp thứ tự nội dung tập tin.
- wc: đếm số từ trong tập tin.
- cat: hiển thị nội dung moat tập tin.
- vi: soạn thảo hoặc sửa đổi nội dung tập tin.
* Lệnh về quản lý tiến trình:
- kill: hủy bỏ một tiến trình.
- ps: trình bày tình trạng của các tiến trình.
- sleep: ngưng hoạt động một thời gian.
* Các Lệnh Về Phân Quyền:
- chgrp: chuyển chủ quyền tập tin, thư mục từ một nhóm sang một nhóm khác.
- chmod: thay đổi quyền sở hữu của tập tin hay thư mục.
- chown: thay đổi người sở hữu tập tin hay thư mục.
* Lệnh Về Kiểm Soát In:
- cancel: ngưng in.
- lp: in tài liệu ra máy in.
**Các lệnh Shell cơ bản trong Linux**
[HR][/HR] Khi mở một shell, bạn cần đến tài khoản kích hoạt vào thư mục chủ (thông thường nằm trong /home/tên_người_dùng).
Chú ý rằng mỗi lệnh đều có nhiều tùy chọn riêng của mình. Để xem các tùy chọn cho một lệnh cụ thể, đơn giản bạn chỉ cần gõ "man <command>" (trong đó: man là từ khóa; command là tên lệnh). Một điểm quan trọng cần chú ý là trong các hệ điều hành Linux, câu lệnh có phân biệt chữ hoa, chữ thường. “A” sẽ được hệ điều hành hiểu là khác so với “a”.
Để vào hệ thống file, dùng:
- pwd: đưa ra ngoài màn hình thư mục đang hoạt động (ví dụ: /etc/ssh).
- cd: thay đổi thư mục (ví dụ: cd .. – ra một cấp thư mục hiện tại; cd vidu – vào thư mục /vidu).
- ls: đưa ra danh sách nội dung thư mục.
- mkdir: tạo thư mục mới (mkdir tên_thumuc).
- touch: tạo file mới (touch ten_file).
- rmdir: bỏ một thư mục (rmdir ten_thumuc).
- cp: copy file hoặc thư mục (cp file_nguồn file_đích).
- mv: di chuyển file hoặc thư mục; cũng được dùng để đặt lại tên file hoặc thư mục (mv vị_trí_cũ vị_trí_mới hoặc mv tên_cũ tên_mới).
- rm: loại bỏ file (rm tên_file).
Để tìm kiếm file, bạn có thể dùng:
- find <tiêu chuẩn tìm kiếm>: dùng cho các tên file.
- grep < tiêu chuẩn tìm kiếm>: để tìm nội dung trong file.
Để xem một file, bạn có thể dùng:
- more <tên file>: hiển thị file theo từng trang.
- cat < tên file>: hiển thị tất cả file.
- head < tên file>: hiển thị các dòng đầu tiên.
- tail < tên file>: hiển thị các dòng cuối cùng (có thể hữu ích trong những trường hợp như khi bạn muốn xem thông tin cuối cùng của một file hệ thống).
Để chính sửa file, bạn phải sử dụng trình soạn thảo tích hợp sẵn trên dòng lệnh. Thông thường, đây là vi và được dùng với cú pháp: vi <tên file>.
Để giải nén một lưu trữ (thông thường có đuôi tar.gz), bạn phải dùng lệnh tar với cú pháp tar -xvf <tên_file>.
Để in một file, dùng lệnh lpr <tên_file>. Chú ý là bạn phải có một số daemon hoạt động để quản lý máy in. Thông thường đây là các cup (chủ yếu là UNIX Printing System) có thể sử dụng cho tất cả các phân phối chính.
Để loại bỏ file khỏi hàng đợi ở máy in (bạn có thể lên danh sách hàng đợi bằng lệnh lpq), sử dụng câu lệnh lprm <tên_file>.
Để lắp hoặc gỡ bỏ thiết bị (thêm vào hệ thống file với vai trò như một phương tiện được phép sử dụng), dùng:
- mount /mnt/floppy: lắp thêm ổ mềm.
- umount /mnt/floppy: gỡ bỏ ổ mềm.
- mount /mnt/cdrom: lắp ổ CD-ROM.
- mount /mnt/cdrom: gỡ ổ DC-ROM.
Các thiết bị này thường được cài và cho phép sử dụng một cách tự động. Nhưng có thể một ngày đẹp trời nào đó bạn lại phải tự mình thực hiện công việc này khi có lỗi xảy ra. Đừng lo lắng!
Để tạo một phân vùng
Đầu tiên, tạo một thư mục trong /mnt (mkdir /mnt/ổ_đĩa_mới). Sau đó sử dụng lệnh mount (mount /dev/source /mnt/ ổ_đĩa_mới), trong đó /dev/source là thiết bị (tức phân vùng) bạn muốn lắp thêm vào hệ thống file.
Nếu muốn kết nối tới một host từ xa, sử dụng lệnh ssh. Cú pháp là ssh <tên_host>.
Quản lý hệ thống:
- ps: hiển thị các chương trình hiện thời đang chạy (rất hữu ích: ps là cái nhìn toàn bộ về tất cả các chương trình).
Trong danh sách đưa ra khi thực hiện lệnh ps, bạn sẽ thấy có số PID (Process identification - nhân dạng tiến trình).
Con số này sẽ được hỏi đến khi muốn ngừng một dịch vụ hay ứng dụng, dùng lệnh kill <PID>.
- top: hoạt động khá giống như Task Manager trong Windows. Nó đưa ra thông tin về tất cả tài nguyên hệ thống, các tiến trình đang chạy, tốc độ load trung bình… Lệnh top -d <delay> thiết lập khoảng thời gian làm tươi lại hệ thống. Bạn có thể đặt bất kỳ giá trị nào, từ .1 (tức 10 mili giây) tới 100 (tức 100 giây) hoặc thậm chí lớn hơn.
- uptime: thể hiện thời gian của hệ thống và tốc độ load trung bình trong khoảng thời gian đó, trước đây là 5 phút và 15 phút.
Thông thường tốc độ load trung bình được tính toán theo phần trăm tài nguyên hệ thống (vi xử lý, RAM, ổ cứng vào/ra, tốc độ load mạng) được dùng tại một thời điểm. Nếu tốc độ được tính toán là 0.37, tức có 37% tài nguyên được sử dụng. Giá trị lớn hơn như 2.35 nghĩa là hệ thống phải đợi một số dữ liệu, khi đó nó sẽ tính toán nhanh hơn 235% mà không gặp phải vấn đề gì. Nhưng giữa các phân phối có thể khác nhau một chút.
- free: hiển thị thông tin trên bộ nhớ hệ thống.
- ifconfig <tên_giao_diện>: để xem thông tin chi tiết về các giao diện mạng; thông thường giao diện mạng ethernet có tên là eth(). Bạn có thể cài đặt các thiết lập mạng như địa chỉ IP hoặc bằng cách dùng lệnh này (xem man ifconfig). Nếu có điều gì đó chưa chính xác, bạn có thể stop hoặc start (tức ngừng hoặc khởi_động) giao diện bằng cách dùng lệnh ifconfig <tên_giao_diện> up/down.
- passwd: cho phép bạn thay đổi mật khẩu (passwd người_dùng_sở_hữu_mật_khẩu hoặc tên người dùng khác nếu bạn đăng nhập hệ thống với vai trò root).
- useradd: cho phép bạn thêm người dùng mới (xem man useradd).
Dù ở phân phối nào, bạn cũng có thể dùng phím TAB để tự động hoàn chỉnh một lệnh hoặc tên file. Điều này rất hữu ích khi bạn quen với các lệnh. Bạn cũng có thể sử dụng các phím lên, xuống để cuộn xem các lệnh đã nhập. Bạn có thể dùng lệnh đa dòng trên một dòng. Ví dụ như, nếu muốn tạo ba thư mục chỉ trên một dòng, cú pháp có thể là: mkdir thư_mục_1 ; mkdir thư_mục_2 ; mkdir thư_mục_3.
Một điều thú vị khác nữa là các lệnh dạng pipe. Bạn có thể xuất một lệnh thông qua lệnh khác. Ví dụ: man mkdir | tail sẽ đưa ra thông tin các dòng cuối cùng trong trang xem "thủ công" của lệnh mkdir.
Nếu lúc nào đó được yêu cầu phải đăng nhập với tài khoản gốc (tức "siêu" admin của hệ thống), bạn có thể đăng nhập tạm thời bằng cách dùng lệnh su. Tham số -1 (su-1) dùng để thay đổi thư mục chủ và cho các lệnh đã hoặc đang dùng. Chú ý là bạn cũng sẽ được nhắc một mật khẩu.
**Cài đặt Hệ điều hành Linux**
[HR][/HR] Mục đích sử dung:
Dù cài đặt hệ thống Linux để phục vụ cho mục đích nào đi nữa thì vẫn dùng chung một bộ đĩa cài đặt. Có một số tùy chọn khi cài đặt dó là: Dùng làm máy cá nhân( Pesonal Desktop), máy trạm trong hệ thống mạng (Workstation) hay máy chủ (Server) nếu:
Dùng ở gia đình thì chọn Pesonal Desktop.
- Dùng làm máy trạm trong các mạng cục bộ thì chọn Workstation
- Dùng làm máy chủ cho các phòng máy hay các mạng thì chọn Server
- Nếu dung lượng đĩa cho phép thì nên chọn mục Custom và cài tất cả các packages để phục vụ cho việc học tập và tìm hiểu thêm về hệ thống linux (Cí này mình khuyến khích các bạn làm đó nghen )
I. Quá trình cài đặt:
Để cấu hình và tùy biến Linux thì khá phức tạp, vì có rất nhiều thứ mà bạn có thể thay đổi được trong Linux mà. Nhưng nếu cài đặt theo chế độ mặc định thì lại cực kì đơn giản. Quá trình cài đặt giống hệt như thèng ku Windows, chỉ khác một điều duy nhất là… bạn không phải nhập Serial number (Sướng hén J)) Nếu bạn là người mới bắt đàu thì cứ cài như vậy đã.
Ngoài ra mốtố bản Linux cho phép bạn khởi động ngay trực tiếp từ đĩa CD luôn (thậm chí là đĩa mềm nữa nè) mà không cần phải cài đặt (nếu bạn là một chuyên gia thì thoai khỏi phải bàn nữa, việc tạo ra các đĩa như thế này quá bèo hén)
Thông thường thì trên các đĩa của bản phân phối Linux và cả trên mạng Internet đều có hướng dẫn khá chi tiết về cách cài đặt Linux. Do đó ở đây tui sẽ không nói rõ về quá trình cài đặt như thế nào mà các bạn hãy tự tìm tài liệu và tham khảo đi nhé.
Vấn đề ở chỗ, con người Việt Nam trước khi học Linux đã làm quen và có thể có kinh nghiệm sử dụng dòng HĐH Windows 98’SE, Windows 2000, Windows XP. Người dùng rrã làm việc với HDH windows thì họ không muốn mất đi môi trường làm việc quen thuộc của mình cũng như những gì đã tạo ra và cấu hình dưới thời Windows. Nhưng rất may là không nhất thiết phải đánh mất tất cả những điều đó. Bởi vì trên một máy tính có thể cùng chung sống hòa bình hai HĐH hoặc hơn thế nữa.
Và ở trong pham jvi bài viết này, em sẽ sử dụng phiên bản RedHat Linux 9.0
RedHad là một hệ điều hành có tính linh hoạt rất cao. Tai sao vây? Đó chính là do RedHat 9.0 có thể ngốn tới 4.5 GB đĩa cứng của bạn tuy nhiên bạn cũng có thể cài Linux… trên một chiếc đĩa mềm (Giống như với MS-DOS ngày xưa ấy). tất cả phụ thuộc vào cách mà bạn cấu hình Linux (cài các tiện ích…) Nếu cài Linux như một HĐH mạng thì cấu hình yêu cầu là rất lớn, nhưng người ta cũng có thể cài nhân Linux vào các thiết bị cầm tay (với bộ nhớ rât nhỏ). Tuy nhiên đối với bản RedHad 9.0 để có thể chạy trơn tru thì cấu hình yêu cầu như sau:
1.CPU: Pentium
- Chế độ Text: 200MH trở lên
- Chế độ Graphic: 400MH trở lên
2. Dung lượng đĩa cứng: (Tùy theo ứng dụng cần cài đặt)
- Tối thiểu: 475 MB
- Server: 850 MB
- Pesonal Desktop: 1,7 GB
- Workstation: 2,1 GB
- Tất cả: 5 GB
3. Bộ nhớ:
- Chế độ Text: 64 MB trở lên
- Chế độ Graphic: 128 Mb trở lên
4 Card mạng:
- Đối với máy Redserv.com.vn: 01 Card mạng
- Đối với máy Blueserv.com.vn: 01 Card mạng
- Đới với máy Firewall.com.vn: 02 card mạng
5. Ổ CDROM
Tóm lại nếu bạn đã từng cài đặt HĐH Windows thì việt cài đặt Linux RedHat cũng không có gì quá khó cả. Để làm được điều đó bạn cần tiến hành như sau:
- Trước tiên bạn cần có một bộ cài Linux RedHat 9.0
- Tiến hành khởi động hệ thống từ bộ đĩa CDROM cài đặt (Disk 1)
- Chọn chế độ cài đặt (Text hoặc Graphic)
- Thông qua từng bước wizard để thiết lập các thông số về hệ thống như: Bàn phím, chuột, ngôn ngữ hiển thị trong quá trình cài đặt, giừo hệ thống…
- Chọn kiểu cài đặt
- Thiết lập phân vùng cài Linux RedHat
- Cài đặt boot loader
- Cấu hình Account
- Các lưu ý lựa chọn gói phần mềm cài đặt
- Cấu hình X-Windown.
II. Một vài lừoi khuyên trước khi tiên hành cài đặt:
Trước khi cài đặt Linux bạn nên thực hiện một vài thao tác phòng xa, vì rất có thể bạn phân vùng lại ổ đĩa, thay đổi bản ghi khởi động (Boot Record) và làm việc với các têph tin khởi dộng cũng như tập tin cấu hình. Các thao tác này không phải lúc nào xung đem lạukết quả theo ý muốn. trong trường hợp xấu. con PC của bạn có thể không khởi động lại được nữa. Biết chá thaót khởi tình huống này và phục hồi dữ liệu là một câu hỏi lứon. Nhưng rơi vào tình huống như vậy đối với người mới bắt đầu rất dễ xảy ra đóa.
Chính vì vậy bước đầu tiên là bạntạo một đĩa mềm khởi động hay đĩa mềm giúp phục hồi hệ thống. Bước tiếp theo, bạn cần ghi lại những dữ liệu có giá trị (backup). Cuối cùng là phải chuẩn bị đầy đủ các tập tin cài đặt cảu hệ thống cũ (CD, Đĩa mềm). Một lời khuyên quan trọng khác là nếu xảy ra cái gì ngoài ý muốn thì đừng nên hoang mang, bạn hãy nên thử mọi cách để tìm ra nguyên nhân, kiểm tra lại nhiều lần thao tác của mình và hãy đọc kĩ tài liệu để xem mình có làm gì sai thao tác nào hay không.
III. Chuẩn bị các phân vùng trên đĩa:
Lời khuyên khi tạo phân vùng: Linux sử dụng cơ chế truy xuất ổ đĩa thông qua tập tin. Mỗi ổ đĩa được gắn với một tập tin trong thư mục /dev/. Ký hiệu ổ đĩa fd cho ổ mềm, hd cho ổ cứng, sd dành cho ổ SCSI. Ký tự a, b, c… gắn thêm vào để xác định các ổ đĩa khác nhau cùng loại. Ví dụ: Ổcứng thứ nhất là had, ổ cứng thứ 2 là hdb… xác định các Partition trong ổ đĩa người ta dùng các số đi kèm. Theo qui định partition chính và mở rộng được gán số từ 1-4. Các partition logic được gán các giá trị từ 5 trở đi.
Ví dụ: Như hình vẽ trên là các Partition của ổ cứng thứ nhất had: Có 2 partition chính ký hiệu là hda1 và hda2, một partition mở rộng là hda3. Trong partition mở rộng hda3 có 2 partition logic có kí hiệu là hda6 và hda5.
Trong Linux bắt buộc phảo có tối thiểu 2 partition sau:
Partition chính (Linux native filesystem) chứa thư mục gốc (/) và hạt nhân. Độ lớn khỏang 6GB nếu muốn cài đặt tất cả các packages của RedHat Linux 9.0 và 50-100 MB dành cho phần /boot (phần này phải được đạt tại Primary Partition của HDD để khởi động HĐH)
Partition swap (Linux swap space) được dùng làm không giảntao đổi dữ liệu khi vùng nhớ chính đầy. Không có công thứuc tinh chỉnh thức nào dành cho phần này, nhưng thuaờng là dung lượng cho phân này khỏang gấp 2 đến gấp 3 lần dung lượng bộ nhớ vật lý của hệ thống. Tuy nhiên chỉ nên dùng khoảng 256 MB trở lại, nhiều hơn nữa là không cân thiết với mộtmáy tính chíử dụng cho mục đích máy tính cá nhân.
Nếu có ý địng cài đặt Linux chung với một hệ điều hành khác trên cùng hệ thống thì phải có kế haọch trước cho việc phân hoặc đĩa cứng, mỗi hệ điều hành phải đặt trên một Primảy Partition khác nhau.
IV. Chương trình phân vùng ổ đĩa:
Sau khi hoàn thành kế hoạch phân chia ổ bạn cần lựa chọn công cụ để đưa kế hoạch này thành hiện thực. Chương trình được biết đến nhiều nhất là Fdisk. Và không cần gì hơn nữa ngoài chương trình này nếu phân chia ổ trắng, không chừa bất cứ dữ liwuj nào . Nhưng ta đang xem xét trường hợp máy đang có HĐH nào đó mà cần phân chưa ổ mà không mất thông tin. Fdisk không phù hợp với điều đó.
Có một chương trình hay và khá nổi tiếng trong việc phân vùng nhanh mà an toàn, đó là Partition Magic. Thư nhât chương trình này cho phép phân chia lại ổ đĩa mà không làm mất thông tin (tât cả những cài đặt và cấu hình trứoc đó sẽ được ghi lại). Thứ hai, chương trình nàycung cấp một giao diện đồ họa dễ sử dụng (ngay cả trong DOS), hỗ trợ dùng chuột, các thao tác thay đổi rất tõ ràng và đều được hiển thị trên màn hình


text:
(Xây dựng) - Năm 2015 đánh dấu một bước đột phá lớn trên thị trường BĐS Việt Nam, hàng chục ngàn căn hộ đã được tiêu thụ (chỉ tính trên 2 TP lớn Hà Nội và TP.HCM), để có được thành quả này phải nói đến những chính sách tốt có hiệu lực từ đầu tháng 7/2015 đã tác động trực tiếp lên thị trường BĐS như
Ngày đăng: 29-12-2015
Theo thời gian, cùng với sự phát triển bùng nổ của thị trường bất động sản, đặc biệt là thị trường nhà ở trong giai đoạn vừa qua, phát triển khu đô thị “nóng” đã bộc lộ một số những tồn tại về mô hình phát triển và quản lý ảnh hưởng trực tiếp đến sự tồn tại và phát triển bền vững của hệ thống
Ngày đăng: 25-12-2015
Theo lãnh đạo Bộ Xây dựng, vấn đề cốt lõi để tháo gỡ khó khăn cho thị trường là phải khắc phục sự lệch pha “cung - cầu”, điều chỉnh cơ cấu hàng hóa một cách hợp lý để sản phẩm BĐS đến được với mọi đối tượng, phù hợp với nhu cầu và khả năng thanh toán thực của thị trường.
Ngày đăng: 16-12-2015
Chủ đầu tư BIM Group - Syrena Việt Nam vừa chính thức giới thiệu Green Bay Village - một dự án bất động sản thuộc Khu đô thị Halong Marina, Hùng Thắng, Hạ Long, Quảng Ninh
Ngày đăng: 14-12-2015
(Xây dựng) - Tại Hội nghị các bên tham gia Công ước khung của Liên hợp quốc về biến đổi khí hậu (BĐKH) lần thứ 21 (COP 21) đang diễn ra tại Paris, Việt Nam đã cam kết đóng góp 1 triệu USD vào Quỹ Khí hậu xanh. Quyết định này được xem là một nỗ lực toàn diện của Việt Nam đóng góp vào công cuộc ứng ph
Ngày đăng: 10-12-2015
Theo Quy chế quản lý quy hoạch, kiến trúc khu phố cũ Hà Nội của UBND TP Hà Nội ban hành ngày 13/8/2015 thì những công trình kiến trúc xây mới cần tuân thủ quy định nghiêm ngặt về thiết kế, chiều cao, bố cục vật thể kiến trúc…
Ngày đăng: 09-12-2015
(Xây dựng) - Khi thiết kế nhà, gia chủ thường đưa hoa, cây cảnh vào không gian nội thất để tăng hiệu quả thẩm mỹ, góp phần thanh lọc không khí, có lợi cho sức khỏe. Song, theo phong thủy, yếu tố mộc có thể mang lại những tác dụng tích cực cho tài lộc của gia chủ.
Ngày đăng: 07-12-2015
Các nhà nghiên cứu đã chế tạo được một loại vật liệu nano mới, có khả năng “hô biến” các bong bóng sinh ra từ trạng thái sôi thông thường. Phát hiện này có thể giúp tìm ra phương pháp ngăn chặn các vụ nổ trong những nhà máy điện hạt nhân.
Ngày đăng: 04-12-2015
Vào những ngày lễ, tết ở Hà Nội không bị tắc đường, giao thông rất thuận tiện, êm ả, dân cư ở có sao đâu? Bản chất của vấn đề gây ùn tắc là người đi học và đi làm cứ tập trung vào vùng trung tâm”, nguyên Giám đốc Sở QH&KT; Hà Nội Nguyễn Văn Hải trao đổi với PV bên lề kỳ họp HĐND thành phố ngày 2/12
Ngày đăng: 03-12-2015
Bộ Xây dựng đang lấy ý kiến góp ý vào dự thảo Nghị định định quy định xử phạt vi phạm hành chính trong hoạt động đầu tư xây dựng; khai thác, chế biến, kinh doanh khoáng sản làm vật liệu xây dựng, sản xuất, kinh doanh vật liệu xây dựng; quản lý công trình hạ tầng kỹ thuật; kin
Ngày đăng: 02-12-2015

markdown:
(Xây dựng) - Năm 2015 đánh dấu một bước đột phá lớn trên thị trường BĐS Việt Nam, hàng chục ngàn căn hộ đã được tiêu thụ (chỉ tính trên 2 TP lớn Hà Nội và TP.HCM), để có được thành quả này phải nói đến những chính sách tốt có hiệu lực từ đầu tháng 7/2015 đã tác động trực tiếp lên thị trường BĐS như
*Ngày đăng: 29-12-2015*
Theo thời gian, cùng với sự phát triển bùng nổ của thị trường bất động sản, đặc biệt là thị trường nhà ở trong giai đoạn vừa qua, phát triển khu đô thị “nóng” đã bộc lộ một số những tồn tại về mô hình phát triển và quản lý ảnh hưởng trực tiếp đến sự tồn tại và phát triển bền vững của hệ thống
*Ngày đăng: 25-12-2015*
Theo lãnh đạo Bộ Xây dựng, vấn đề cốt lõi để tháo gỡ khó khăn cho thị trường là phải khắc phục sự lệch pha “cung - cầu”, điều chỉnh cơ cấu hàng hóa một cách hợp lý để sản phẩm BĐS đến được với mọi đối tượng, phù hợp với nhu cầu và khả năng thanh toán thực của thị trường.
*Ngày đăng: 16-12-2015*
Chủ đầu tư BIM Group - Syrena Việt Nam vừa chính thức giới thiệu Green Bay Village - một dự án bất động sản thuộc Khu đô thị Halong Marina, Hùng Thắng, Hạ Long, Quảng Ninh
*Ngày đăng: 14-12-2015*
(Xây dựng) - Tại Hội nghị các bên tham gia Công ước khung của Liên hợp quốc về biến đổi khí hậu (BĐKH) lần thứ 21 (COP 21) đang diễn ra tại Paris, Việt Nam đã cam kết đóng góp 1 triệu USD vào Quỹ Khí hậu xanh. Quyết định này được xem là một nỗ lực toàn diện của Việt Nam đóng góp vào công cuộc ứng ph
*Ngày đăng: 10-12-2015*
Theo Quy chế quản lý quy hoạch, kiến trúc khu phố cũ Hà Nội của UBND TP Hà Nội ban hành ngày 13/8/2015 thì những công trình kiến trúc xây mới cần tuân thủ quy định nghiêm ngặt về thiết kế, chiều cao, bố cục vật thể kiến trúc…
*Ngày đăng: 09-12-2015*
(Xây dựng) - Khi thiết kế nhà, gia chủ thường đưa hoa, cây cảnh vào không gian nội thất để tăng hiệu quả thẩm mỹ, góp phần thanh lọc không khí, có lợi cho sức khỏe. Song, theo phong thủy, yếu tố mộc có thể mang lại những tác dụng tích cực cho tài lộc của gia chủ.
*Ngày đăng: 07-12-2015*
Các nhà nghiên cứu đã chế tạo được một loại vật liệu nano mới, có khả năng “hô biến” các bong bóng sinh ra từ trạng thái sôi thông thường. Phát hiện này có thể giúp tìm ra phương pháp ngăn chặn các vụ nổ trong những nhà máy điện hạt nhân.
*Ngày đăng: 04-12-2015*
Vào những ngày lễ, tết ở Hà Nội không bị tắc đường, giao thông rất thuận tiện, êm ả, dân cư ở có sao đâu? Bản chất của vấn đề gây ùn tắc là người đi học và đi làm cứ tập trung vào vùng trung tâm”, nguyên Giám đốc Sở QH&KT; Hà Nội Nguyễn Văn Hải trao đổi với PV bên lề kỳ họp HĐND thành phố ngày 2/12
*Ngày đăng: 03-12-2015*
Bộ Xây dựng đang lấy ý kiến góp ý vào dự thảo Nghị định định quy định xử phạt vi phạm hành chính trong hoạt động đầu tư xây dựng; khai thác, chế biến, kinh doanh khoáng sản làm vật liệu xây dựng, sản xuất, kinh doanh vật liệu xây dựng; quản lý công trình hạ tầng kỹ thuật; kin
*Ngày đăng: 02-12-2015*

WARC-Type: response

Content-Type: application/http; msgtype=response

WARC-Identified-Payload-Type: application/xhtml+xml

Connection: close

Pragma: no-cache

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Vary: Accept-Encoding,User-Agent

Content-Type: text/html


text:
Đỗ Tấn Hưng
Vì sao tôi không thích nước Mỹ
Vì sao tôi không thích nước Mỹ
Khi tới Mỹ, tôi chẳng gặp khó khăn gì trong công việc cả. Tôi chỉ không tìm thấy lý do gì để nên ở lại sống trên đất nước này mà thôi. Tôi đơn giản
Nguyễn Phú Trung
Thủy Bún
Lê Phương
Nguyễn Minh Đức
Vũ Mai Hương
Hoàng Phúc Thịnh
Ngô Duy Khang
Lại Hồng Điệp
Phạm Huyền
Thành Tâm
Trần Đăng Hòa
Lê Hoàng Quang Trung
Hoàng Phương
Nguyễn Anh Quân
Đặng Vũ Bảo Anh
Phạm Hiệp
Nguyễn Thị Hồng Thanh
Bùi Hoàng Tùng
Ngô Anh Tuấn
Ngô Thiên Chương
Hoàng Thị Kim Tuyến
Phan Vi
Trần Hữu Đức
Nguyễn Thị Hồng Hà
Phan Thảo
Nguyễn Huyền Trân
Tôn Hồng Đức
Nguyễn Hồng Phương
Vũ Văn Trọng
Nguyễn Sĩ Hiếu
Khuất Thanh Thúy
Hoàng Thị Xuân Lai
Dương Hồng Hưng
Bùi Quang Hiếu
Phạm Hiền
Trần Thanh Trà
Trần Ái Mỹ
Tăng Xuân Lý
Bùi Quang Ngọc
Đỗ Tấn Hưng
Vũ Ngọc Lương
Nguyễn Hồng Đào
Minh Hoàng
Nguyễn Trung Nam
Dương Nguyễn Thúy Vi
Đỗ Đăng Tiến
Hoàng Phương Mai
Trần Thị Thu Trang

markdown:
Đỗ Tấn Hưng
[
Vì sao tôi không thích nước Mỹ
](http://chungta.vn/tin-tuc/goc-nhin/vi-sao-toi-khong-thich-nuoc-my-48970.html)
[
Vì sao tôi không thích nước Mỹ
](http://chungta.vn/tin-tuc/goc-nhin/vi-sao-toi-khong-thich-nuoc-my-48970.html)
Khi tới Mỹ, tôi chẳng gặp khó khăn gì trong công việc cả. Tôi chỉ không tìm thấy lý do gì để nên ở lại sống trên đất nước này mà thôi. Tôi đơn giản
Nguyễn Phú Trung
Thủy Bún
Lê Phương
Nguyễn Minh Đức
Vũ Mai Hương
Hoàng Phúc Thịnh
Ngô Duy Khang
Lại Hồng Điệp
Phạm Huyền
Thành Tâm
Trần Đăng Hòa
Lê Hoàng Quang Trung
Hoàng Phương
Nguyễn Anh Quân
Đặng Vũ Bảo Anh
Phạm Hiệp
Nguyễn Thị Hồng Thanh
Bùi Hoàng Tùng
Ngô Anh Tuấn
Ngô Thiên Chương
Hoàng Thị Kim Tuyến
Phan Vi
Trần Hữu Đức
Nguyễn Thị Hồng Hà
Phan Thảo
Nguyễn Huyền Trân
Tôn Hồng Đức
Nguyễn Hồng Phương
Vũ Văn Trọng
Nguyễn Sĩ Hiếu
Khuất Thanh Thúy
Hoàng Thị Xuân Lai
Dương Hồng Hưng
Bùi Quang Hiếu
Phạm Hiền
Trần Thanh Trà
Trần Ái Mỹ
Tăng Xuân Lý
Bùi Quang Ngọc
Đỗ Tấn Hưng
Vũ Ngọc Lương
Nguyễn Hồng Đào
Minh Hoàng
Nguyễn Trung Nam
Dương Nguyễn Thúy Vi
Đỗ Đăng Tiến
Hoàng Phương Mai
Trần Thị Thu Trang

WARC-Truncated: length

WARC-Identified-Payload-Type: text/html

Server: XAMPP

Set-Cookie: device_env=4; expires=Thu, 24-Aug-2017 21:26:16 GMT; path=/; domain=chungta.vn

Vary: Accept-Encoding

Content-Type: text/html; charset=utf-8