一、常用命令
1、目录操作命令
1.查看当前目录:pwd
命令提示符由哪几部分组成:命令名 [选项][参数]
2.查看目录:ls -al
ls -l
长格式显示
ls -a
显示所有文件(包含隐藏文件)
ls -al
ls -h
以常用单位显示文件大小
ls -d
只显示目录,不显示目录下子文件
ls -i
显示文件 inode 号
ls -l
文件名
隐藏文件名特点:文件名前面都有个带点的符号;
显示的每一条信息各部分的含义:
权限位 引用计数 属主 属组 大小 最后一次修改时间 文件名
3.切换目录:cd 目录名
使用cd命令切换到上一层目录
使用绝对路径的方式切换到上层目录:cd 具体路径
使用相对路径的方式切换到上层目录:cd …
“ … ”表示上一级目录;“ .”表示当前目录。
4.创建目录:mkdir 目录名
使用mkdir命令在用户主目录下分别使用绝对路径和相对路径的方式创建一个newdir目录
在root目录下进行操作命令分别为:
mkdir /root/newdir
mkdir ./newdir
5.删除目录:rmdir 目录名||rm 目录名||rm -rf 目录名
使用rmdir命令删除刚才创建的newdir目录
rm newdir
(只能删空目录);rm –rf newdir
2、文件操作命令
1.创建空文件:touch 文件名
2.删除文件:rm -rf 文件名
3.查看文件内容:cat 文件名
4.分屏显示文件内容:more 文件名
5.分行显示文件内容:less 文件名
6.显示文件头:head 文件名
head -n 行数 文件名
指定显示文件头几行
7.显示文件尾:tail -n 行数 文件名
3、目录和文件操作命令
1.删除文件或目录:rm ||rm -rf
2.复制文件或目录:cp 源文件 目标位置
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于 -pdr
可进行原名复制和改名复制
3.移动或重命名文件或目录:mv 源文件 目标位置
4.链接文件
硬链接:ln 源文件 目标文件
可以看作是同一个文件进行复制
不能跨分区
不能针对目录使用
软链接:ln -s 源文件 目标文件
文件名都必须写绝对路径
类似 于Windows 快捷方式
软链接文件权限都为 rwxrwxrwx
修改任意文件,另一个都改变
删除原文件,软链接不能使用
4、权限管理
1.权限位
-rw-r–r-- 1 root root 0 08-11 01:45 aa
属主权限 u
属组权限 g
其他人权限 o
权限对文件的含义
r 读:读取文件内容 cat more head tail 4
w 写:编辑、新增、修改文件内容(但是不包含删除文件) vi echo 2
x 执行:可执行 1
权限对目录的含义
r:可以查询目录下文件名 ls
w:具有修改目录结构的权限 touch rm mv cp
x:可以进入目录 cd
2.修改权限
chmod u+x aa
aa文件的属主加上执行权限
chmod u-x aa
aa文件的属主减去执行权限
chmod g+w,o+w aa
aa文件的属组和其他人加上写权限
chmod u=rwx aa
aa文件的属主赋读写和执行权限
chmod 755 aa
chmod 644 aa
文件和目录默认权限:umask
0022
文件: 666 022 644
目录: 777 022 755
3.属主和属组命令
chown 用户名 文件名
改变文件属主
chown 用户名:属组名 文件名
改变属主同时改变属组
useradd 用户名
添加用户
passwd 用户名
设定用户密码
chgrp 属组名 文件名
改变属组
5、帮助命令
man 命令名
查看命令的帮助
help 内部命令
查看内部命令帮助
命令 --help
查看命令的常见选项
info 命令
进入子帮助页面(带有*号标记)
6、查找命令
which 命令名
查找命令的命令,能看到相关别名
whereis 命令名
查找命令的命令,同时看到帮助文档位置
locate 文件名
按照文件名查找 按照数据库查找 updatedb
强制更新数据库
1.find 查找位置 -name 文件名
按照文件名查找
按照时间查找
-ctime
按照文件状态修改时间(天) change
-mtime
按照文件数据修改时间 modify
-atime
按照访问时间 access
如:find / -ctime +4
按照用户
-uid 数字
按照用户属主 ID 查找文件
-gid 数字
按照属组组 ID 查找文件
-user 用户名
按照属主用户名查找文件
-group 组名
按照属组组名查找文件
-nouser
找没有属主的文件 find / -nouser
按照文件权限
-name
按照文件名
-size
按照文件大小。+50k:大于 50k,-50k:小于 50k,50k:等于50k
如:find / -size +50k
-type 类型
按照文件类型 。f:普通 d:目录 l:链接
-perm 755
按照权限查找
如:find . -perm 644
-inum
按照 i 节点 ls -i
如:find . -inum 节点数
-iname
按照文件名查找,不区分大小写
2.grep "字符串" 文件名
查找符合条件的字串行
grep -i "root" /etc/passwd
-v
反向选择
-i
忽略大小写
|
管道符
命令 1 | 命令 2
命令 1 的结果,作为命令 2 的执行条件
7、压缩和解压缩
(1).zip格式
压缩:
zip 压缩之后产生的包名 源文件
如:zip -r test.zip /test
-r 压缩目录
解压缩:
unzip 压缩包
(2).gz格式
不会打包
压缩:
gzip -c 源文件 > 压缩文件
如:gzip -c cangls > cangls.gz
gzip -r 源目录
不能压缩目录,压缩目录下所有内容
解压缩:
gzip -d 压缩包
(3).bz2格式
不能压缩目录
压缩:
bzip2 源文件
如:bzip2 aa
bzip2 -k 源文件
压缩之后保留源文件
解压缩:
bzip2 -d 压缩文件
如:bzip2 -d aa.bz2
另一种:bunzip2 压缩文件
解压缩:-k 保留压缩文件
(4).tar格式
打包命令,不压缩
打包:
tar -cvf 打包文件名 源文件
如:tar -cvf aa.tar aa
-c 打包 -v 显示打包过程 -f 指定生产后的文件名
解打包:
tar -xvf 打包文件名
如:tar -xvf aa.tar
.gz 格式
压缩同时打包:
tar -zcvf 压缩文件名 源文件
如:tar -zcvf aa.tar.gz aa
-z 识别.gz 格式
解压缩同时解打包:
tar -zxvf 压缩文件名
.bz2格式
压缩同时打包:
tar -jcvf 压缩文件名
源文件压缩同时打包
如:tar -jcvf aa.tar.bz2 aa
解打包同时解压缩:
tar -jxvf aa.tar.bz2
查看不解包
tar -ztvf aa.tar.gz
查看不解包
tar -jtvf aa.tar.bz2
-t 只查看,不解压
指定解压缩文件位置:
tar -jxvf root.tar.bz2 -C /tmp/
指定解压缩位置
8、常用网络命令
w
查询当前登录服务器的所有用户
who
查询登录用户
last
列出登录系统的相关信息
lastlog
显示所有账户最后一次的登录时间
write 用户名
给在线用户写信息
如:write root tty1
写内容给 tty1 登录的 root,ctrl+d
保存,发送
wall
对所有在线用户说话
mail
邮件命令
ping -c 次数 ip
探测网络通畅
ping -s 65536 ip
指定探测数据包的大小
ifconfig
查询本机网络信息
ifconfig eth0 192.168.140.252 netmask 255.255.255.0
临时生效
eth0:0
第一块网卡的第一模拟网卡
netstat
查看网络状态
telnet ip 端口
测试端口是否可以正常连接
netstat -tlun
查看本机所有监听端口
-t tcp -u udp -l 监听 -n 以 IP 和端口号显示
9、关机、重启命令
关机命令:
shutdown -h now
init 0
halt
poweroff
重启命令:
shutdown -r now
reboot
init 6
10、挂载命令
首先选择光盘镜像,然后连接光盘镜像,最后挂载
挂载光盘
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
卸载光盘
umount /dev/cdrom
umount /mnt/cdrom
二、软件安装
rpm包安装
1、挂载光盘
2、进入/mnt/cdrom/Server/
3、执行命令rpm -ivh 包全名
-i
install安装
-v
显示更详细信息
-h
打印#显示安装进度
4、服务启动
service 服务名 start|stop|restart|status
三、用户管理
1、用户相关文件
/etc/passwd
用户信息文件
root:x:0:0:root:/root:/bin/bash
第一列:用户名
第二列:密码位
第三列:用户 ID
/etc/shadow
影子文件
root:$6$9w5Td6lg$bgpsy3olsq9WwWvS5Sst2W3ZiJpuCGDY.4w4MRk3ob/i85fI38RH15wzVoomff 9isV1PzdcXmixzhnMVhMxbv0:15775:0:99999:7:::
第一列:用户名
第二列:加密密码
/etc/group
组信息文件
root:x:0:root
第一列:组名
第二列:组密码位
第三列:GID
第四列:此组中支持的其他用户.附加组是此组的用户
/etc/gshadow
组密码文件
2、用户管理命令
1.添加用户
添加用户:useradd 用户名
手工指定选项添加用户:
创建用户组lamp1:groupadd 组名
建立用户qwzf:
useradd -u 550 -g lamp1 -G root -d /home/lamp1 -c "test user" -s /bin/bash qwzf
同时查看三个文件:
grep "qwzf" /etc/passwd /etc/shadow /etc/group
查看用户家目录:ll -d /home/qwzf
2.设置密码
passwd 用户名
3.用户信息修改
usermod -L 用户名
锁定用户
usermod -U 用户名
解锁
usermod -l 新名 旧名
用户改名
4.删除用户
userdel -r 用户名
5.添加组
groupadd 组名
6.删除组
groupdel 组名
(必须是空组)
7.把已经存在的用户加入组
usermod -G 组名 用户名
gpasswd -a 用户名 组名
把用户从组中删除:gpasswd -d 用户名 组名
3、用户权限赋予
例:/test 目录,要求aa、bb、cc有rwx。
useradd aa
(bb、cc)
passwd aa
(bb、cc)
groupadd testgrp
gpasswd -a aa testgrp
把aa、bb、cc、加入组
chmod 770 /test
修改组权限
chgrp testgrp /test
修改属组
四、权限管理
1、ACL权限
getfacl 文件名
查询文件的acl权限
setfacl 选项(-m设定权限、-b删除权限) 文件名
设定acl权限
1.设置acl权限
setfacl -m u:用户名:权限 文件名
如:setfacl -m u:qwzf:rwx /test
给test目录赋予qwzf是rwx的acl权限
setfacl -m g:组名:权限 文件名
2.删除acl权限
setfacl -b 文件名
3.acl默认权限
默认权限只能赋予目录
如:setfacl -m d:u:aa:rwx -R /test
2、sudo授权
/sbin/
在此目录下命令只有超级用户才能使用
/usr/sbin/
1.赋予普通用户权限命令
visudo
如:让qwzf用户有root所有权限
useradd qwzf
passwd qwzf
visudo
添加一行如下信息:
qwzf ALL=(ALL) ALL
让qwzf用户可以添加其他普通用户:
qwzf ALL=/usr/sbin/useradd
qwzf ALL=/usr/bin/passwd
执行sudo /usr/sbin/useradd aa
qwzf用户添加aa用户
3、文件特殊权限SetUID、SetGID、Sticky BIT
1.SetUID
(1)命令执行者要对该程序有x(执行)权限
(2)命令执行者在执行该程序时获得该程序文件属主的身份。
(3)SetUID权限只在该程序执行过程中有效。
如:qwzf对/usr/bin/vi
具有执行权限
chmod u+s /usr/bin/vi
执行完之后,qwzf执行vi,实际以root身份执行
2.SetGID
针对文件的作用
(1)命令执行者要对该程序有x(执行)权限
(2)命令执行者在执行该程序时组身份升级为该程序文件的属组。
(3)SetGID权限只在该程序执行过程中有效。
ll /usr/bin/locate
qwzf用户执行该命令时,组身份会升级为slocate组
针对目录的作用
(1)普通用户对此目录有rx权限,才能进入此目录
(2)普通用户在此目录的有效组会变成此目录的属组
(3)若普通用户对此目录有w权限,新建文件默认属组是这个目录的属组。
如:
mkdir /dtest
chmod g+s /dtest
chmod 777 /dtest/ 让普通用户可以写
3.Sticky BIT
4:SUID
2:SGID
1:SBIT
赋予SUID权限
chmod 4755 ftest
赋予SGID权限
chmod 2755 ftest
赋予SBIT权限
SBIT只对目录有效
chmod 1755 dtest/
五、文件系统管理
1、常用磁盘管理命令
1.df命令
df -ahT
-a
显示特殊文件系统
-h
单位不再只用KB,换成习惯单位
-T
多了文件系统类型一列
2.du命令
du [选项][目录或文件名]
-a
显示每个子文件的磁盘占用量
-h
使用习惯单位显示磁盘占用量
-s
统计总占用量,而不列出子目录和子文件的占用量
3.fsck文件系统修复命令
fsck -y /dev/sdb1
4.显示磁盘状态
dumpe2fs /dev/sda2
5.查看文件的详细时间
stat 文件名
6.判断文件类型
file 文件名
判断文件类型
type 命令名
判断命令类型
2、fdisk命令手工分区
1.fdisk -l
查看系统所有硬盘及分区
2.fdisk /dev/sdb
进行磁盘分区
n->p->1(分区好)->1->100->w
分区大小+100M
改变文件系统:n->p->1(分区号)->1->200->t->8e->w
3.partprobe
强制重读所有分区文件,重新挂载分区文件内所有分区
4.格式化分区
mkfs.ext3 /dev/sdb1
5.建立挂载点和挂载
mkdir /disk1
mount /dev/sdb1 /disk1
6.查看
mount
查看所有已经挂载的分区和光盘
fdisk -l
查看系统分区
df
查看分区占用百分比
7、自动挂载
修改分区自动挂载文件
vi /etc/fstab
8、重启测试
mount -a
重新挂载所有内容,用它进行测试
六、高级文件系统管理
1、磁盘配额
1.分区、格式化、挂载、(查看)
分区:fdisk /dev/sdb
n->p->1(分区号)->1->100->w
格式化:mkfs.ext3 /dev/sdb1
挂载:mkdir /disk1
mount /dev/sdb1 /disk1
查看:mount | tail -1
2.磁盘配额的设置
(1)开启配额功能,并建立磁盘配额的配置文件
(2)设置用户和组的配额限制
(3)给用户配额限制:磁盘空间软限制80MB,硬限制100MB
(4)以用户wmm1身份登陆系统进行验证。创建120MB的testfile文件
2、LVM卷的创建和管理
1.创建3个分区,并设置System为Linux LVM
fdisk /dev/sdb
n->p->1(分区号)->1->200->t->8e->w
2.建立物理卷,建立一个名为scvg卷组
3.建立逻辑卷,建立一个wmmlv的逻辑卷。并格式化、挂载、查看
3、raid5卷的创建和使用
1.使用3块硬盘,建立四个分区
2.建立RAID 5,并查看
3.格式化与挂载RAID,并查看
4.设置开机自动挂载
vi /etc/fstab
七、系统管理
定时任务
八、日志管理
常用日志文件:
/var/log/apache2/
/usr/local/apache2/logs
/usr/nginx/logs/