一、Linux简介
1、常见的UNIX:
AIX IBM
HP-UX HP
Solaris SUN
2、常见的LINUX:
1)RedHat系列:RHEL、Fedora、CentOS、SUSE、gentoo、红旗、Mantriva、turbolinux;
2)Debian系列:Unbuntu。
3、Linux优点:开源、免费、稳定、安全;缺点:易用性差、厂商支持性差。
4、Linux分区表示:
1)主分区+扩展分区最多只能分4个;
2)扩展分区最多1个,且不能格式化也不能写入数据,它只包含逻辑分区;
例:sda5表示第一块硬盘第一个逻辑分区;
3)根分区、SWAP分区为必须分区;/boot、/home 、/www,为常用分区。
5、注意:
1)Linux下所有内容都是文件,包括硬件;
2)严格区分大小写;
3)不以扩展名区分文件类型,而是靠权限,但有特例,如压缩文件、RPM包文件;
4)所有可存储设备都必须挂载使用,包括硬盘。
6、密码原则:复杂性、易记性、时效性。
7、Linux命令提示符:[当前登录用户@当前主机名 当前所在目录的最后一个目录]#
二、常用命令(一)
格式:命令 [选项/option] [参数/parameter]
>目录操作命令
1、ls (list) (显示目录下的内容)
#ls[-a|-l|-h|-d|-i]
-l long长格式显示
-h human人性化显示,如可自动显示文件大小
2、cd (change directory) 改变目录,shell内置命令
#cd[-|~|..]
相对路径:参照当前所在目录进行查找,一定要先确定当前所在目录;
绝对路径:从根目录开始指定,一级一级递归查找,在任何目录下都能进入指定位置。
3、#pwd(printworking directory) 显示当前所在目录
4、mkdir (makedirectory) 创建目录
#mkdir -p /11/22/33/44 递归建立目录
5、rmdir(remove directory) 只能删除空目录
#rmdir 目录 不常用,一般使用#rm �Crf 目录或文件
6、#tree 目录名 显示指定目录下所有内容的目录树
>文件操作命令
1、#touch 文件名 创建空文件或修改文件时间
2、#rm �Crf 目录或文件名
3、#cat �Cn 文件名 查看文件内容,-n可列出行号
4、#more 文件名 分屏显示文件内容,快捷键:空格、b、q
5、#less 文件名 分行显示文件内容
6、#head -n 行数 文件名 显示文件头;-n 行数(指定显示头几行)
7、#tail -n 行数 文件名 显示文件尾;-f(监听文件尾,不退出,适合监听实时文件)
>文件和目录都能操作的命令
1、#rm 删除文件或目录
2、#cp [-r|-p|-d|-a] 源文件 目标位置
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于-pdr
3、#mv 源文件 目标位置
>链接文件 难点
1、硬链接特征:拥有相同的i节点和存储block块,可以看作是同一个文件;可通过i节点识别;不能跨分区;不能针对目录使用。
#ln 源文件 目标文件
2、软链接特征:类似windows快捷方式;拥有自己的i节点和block块,但是数据块只保存源文件的文件名和i节点号,并没有实际的文件数据;修改任意文件另一个都改变;删除源文件,软链接不能使用;属性lrwxrwxrwx。
#ln -s 源文件 目标文件
>权限管理
1、权限位:共10位,- rw- r- -r- -
第一位为文件类型:- 普通文件;d 目录文件;l 链接文件;b 块设备文件;c 字符设备文件;s 套接字;p 管道
r:4 w:2 x:1
2、修改权限
#chmod u+x aa (change the permission mode of file)
#chmod g+w,o+w aa
#chmod u=rwx aa
#chmod 755 aa 常用权限(755、644)
3、权限意义:
1)权限对文件的含义:r读取文件内容(cat/more/head/tail);w编辑修改文件内容(vi/echo);x可执行
2)权限对目录的含义:r可查阅目录下文件名(ls);w具有修改目录结构的权限,如新建、删除、重命名、剪切此目录下的文件和目录(touch/rm/mv/cp);x可进入该目录。
注意:为系统安全,文件少给x权限,目录少给w权限,一般目录给的权限为0/5/7。
4、属主和属组命令:
#chown 用户名 文件名 (change file ownership)
例:#chown user1:user1 aa (改变属主同时改变属组,user1必须存在)
#chgrp 属组名 文件名 (change file group ownership)
#useradd 用户名 (添加用户)
#passwd 用户名 (设定用户密码,普通用户改密码#passwd直接回车)
5、文件和目录默认权限:umask (the user file-creation mask) shell内置命令
默认0022
#umask (查看系统umask值)
#umask 0002 (临时修改umask值)
#umask -S(大写) (以rwx形式显示权限)
文件:666(rw-rw-rw-)减去默认值022(----w―w-)等于644(-rwr―r--)
目录:777(rwxrwxrwx)减去默认值022(----w―w-)等于755(rwxr-xr-x)
注意:以上是用字母rwx计算,不能单纯用数字相减。
>帮助命令:
1、#man 命令名
#man -f 命令 (whatis,查看命令拥有哪个级别的帮助)
#man -k 命令 (apropos,查看和命令相关的所有帮助)
2、#help 内部命令
3、#命令 �D�Dhelp (查看命令的常规选项)
4、#info 命令 (进入子帮助页面,带有*标记,常用快捷键u/n/p/q,可按h获得帮助)
常用命令(二)
一、查找命令
1、#which 命令名 (查找命令的命令,能看到相关别名)
2、#whereis 命令名 (查找命令的命令,同时看到帮助文档位置)
3、#locate 文件名 (按照文件名在数据库中查找)
#updatedb (强制更新数据库)
/var/lib/mlocate (locate所搜索的后台数据库)
/etc/updatedb.conf (配置文件,用于定义locate命令)
4、#find 查找位置 选项 文件名
-uid 数字 (按用户属主ID查找)
-gid 数字 (按用户属组组ID查找)
-user用户名 (按属主用户名查找)
-group组名 (按属组组名查找)
-nouser (找没有属主的文件)
-size +50k (-50k、50k、例#find . �Csize+5k �Ca �Csize -10k。-a(逻辑与),单位k小写,M大写
-type (f普通文件,d目录,l链接文件)
-perm 755 (按文件权限查找)
-inum 节点号 (按i节点号查找)
-ctime|-mtime|-atime (天)
例:#find / -name 123 -exec(或OK) 命令 选项 {}\;
#cat install.log | grep lib
#命令1 | 命令2 (管道符)
#grep -i|-v “字符串” 文件名 (-i忽略大小写,-v反向选择)
二、压缩解压缩
1、识别.tar.gz格式的包
#tar -zcvf 压缩文件名 源文件
#tar -zxvf 压缩文件名 �CC 位置 (-C指定解压缩位置)
2、识别.tar.bz2格式的包
#tar -jcvf 压缩文件名 源文件
#tar -jxvf 压缩文件名
三、常用网络命令
1、#w (查询当前登录服务器的所有用户)
2、#who (查询登录用户)
3、#last (列出登录系统的相关信息)
4、#lastlog (显示所有账号最后一次的登录时间)
5、#write 用户名 (给在线用户写信息)
#write root tty1 (给tty1登录的root写信息)
6、#wall (对在线所有用户说话)
7、#mail (邮件,常用快捷键h/d/s/x)
8、#ping -c 次数 ip
#ping -s 65536 ip (指定探测数据包的大小,死亡之ping)
9、#ifconfig eth0 192.168.14.252 netmask 255.255.255.0
10、#netstat -tuln (查看网络状态,/etc/services有系统中的所有常见端口)
#netstat -an
11、#telnet ip 端口 (测试端口是否可以正常连接,quit退出)
四、关机命令
#sync;sync;shutdown -r|-h now
#reboot
#init 6|0
#halt
#poweroff
五、挂载
1、#mount -l (查询系统中已经挂载的设备)
# mount -a (依据/etc/fstab的内容,自动挂载)
#mount -t 文件系统 �CL 卷标名 -o 特殊选项 设备文件名 挂载点
2、例:#mount
#mount -o remount,noexec /boot
#cd/boot
#vi hello.sh (内容:echo “helloworld”)
#chmod 755 hello.sh
#./hello.sh
#mount -o remount,exec /boot
3、光盘挂载:
#mount -t iso9660 /dev/cdrom(sr0) /mnt/cdrom
4、U盘挂载:
#mount -t vfat /dev/sdb1 /mnt/usb (vfat:fat32,fat:fat16)
#mount -t vfat -o iocharset=utf8 /dev/sdb1 /mnt/usb
5、使用ntfs-3g安装ntfs文件系统模块
#mount -t ntfs-3g /dev/sdb1 /mnt/win