Linux系统管理

旧文迁移,记载一些Linux下的常用命令~

常用命令

文件相关

1
2
3
4
5
6
7
8
9
10
11
12
13
14
pwd                       显示当前工作目录
ls 列出当前目录信息
注意: -a 显示包括隐藏文件
-l 显示详细信息
-h 用MB,Gb这种单位显示
cd <目录> 移动到其他目录
注意: ~ 用户家目录,如root的目录是/root,其他用户的在/home/*中
- 回到上一步的目录
.. 返回上一级的目录
注意: 相对路径,就是相对当前所在目录的路径,直接输入目录名即可,例如 abc/
绝对路径,从更目录开始,一定是/*
mkdir -r <目录> 创建文件夹
rm -rf <文件或目录> 强制删除文件夹或者是目录
mv <源文件或目录> <目标文件或者目录> 移动或者重命名

文件搜索

1
2
3
4
5
6
7
8
9
10
11
whereis    <命令>                  搜索某个命令的路径
locate <文件名> 从数据库中搜索文件,速度快,在非标准文件系统中
(如backtrack)可用于搜索某个命令位置,搜索前可能需要先更新数据库
updatedb 更新数据库
find <目录> <-所有者> <-属性类型> <属性修改时间> <文件(夹)名> 速度慢的强大文件搜索
注意:属性类型:atime 访问时间
ctime 改变属性
mtime 修改内容
时间: +10 过去10天外
-10 过去10天内
10 过去10天那一天

文本相关

1
2
gedit <文件名>            像微软的记事本一样打开一个文件(没有就自动新建)
cat <文本文件> 打印出文件的内容,适用于小文件

解压命令

1
2
3
4
5
unzip <*.zip>            解压zip文件
tar -xvf <*.tar> -C 目标路径(下面也适用)解包tar文件
tar -zcvf <*.tar.gz> 解压tar.gz文件
tar -jcvf <*.tar.bz2> 解压tar.bz2文件
unrar <*.rar> 解压rar文件

系统命令

1
2
shutdown -h now            立刻关机
reboot 立即重启

帮助命令

1
2
3
man <命令>            查看详细的帮助,不一定有
info<命令> 查看详细的帮助,不一定有
<命令> -h/--help 查看帮助信息

用户相关

1
2
3
4
su <用户名>            切换用户
passwd <新密码> <用户名> 更改密码
sudo <命令> 当非root身份时,暂时使用root权限执行命令
useradd <用户名> 新建用户

网络相关

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
ifconfig            
描述
Ifconfig被用来配置本地的网络设备。它的配置在启动时就生效,而且,他只有在系统改变和调试时才被需要
如果不给任何参数,他显示当前激活的网络设备的状态。如果指定设备,他只展示指定设备的状态,使用-a
参数展示所有状态 ,及时没有激活,其他的就是用来配置网络参数了
参数:
ifconfig -a 显示所有设备的信息
ifconfig -s 显示一个简短的列表,想netstat -i
ifconfig eth0 up 激活某个设备
ifconfig wlan0 down 停用某个设备
ifconfig eth0 netmask 255.255.255.255 设置子网掩码地址
ifconfig eth0 broadcast 192.168.99.255 设置广播地址
ifconfig eth0 address 192.168.99.104 设置IP地址
route 列出路由表
netstat -r, --route 展示路由表
-i, --interfaces 展示接口表
-s, --statistics 显示网络统计
-l, --listening 显示监听服务sockets
-a, --all, --listening 显示所有的sockets
arp -a 显示所有的ARP缓存表
arp -d <ip> 删除ip的arp记录

快捷键

1
2
3
4
Ctrl+  c        强制终止命令
z 将命令放入后台
r 搜索先前输入的命令
l 清屏

特殊权限

ACL权限

对于文件,为特定用户赋予权限。
查看是否开启acl权限:

1
dumpe2fs -h /dev/sda1

开启acl权限:

1
2
mount -o remount,acl /			#临时开启
vi /etc/fstab 永久开启

使用:

1
2
getfacl:查看文件/目录的ACL设定内容
setfacl:设置文件/目录的ACL内容

语法:

1
2
3
4
5
6
7
setfacl [-bkRd] [{-m|-x} acl参数] 文件名
-m :设置后续的acl参数
-x :删除后续的acl参数
-b :删除所有的ACL设定参数
-R :递归设置acl参数(此选项极度危险,会使目录下所有文件对特定用户拥有可执行权限)
-d :设置预设的acl参数(只对目录有效,在该目录新建的文件也会使用此ACL默认值)
-k :删除预设的ACL参数

设置格式如下:

1
2
3
4
[d[efault]:] u[ser]:uid [:perms]
[d[efault]:] g[roup]:gid [:perms]
[d[efault]:] m[ask][:] [:perms]
[d[efault]:] o[ther][:] [:perms]

SUDO权限

对于用户,可以在执行特定命令时切换到拥有权限的用户身份。
赋予权限:

1
visudo


查看权限:

1
sudo -l

使用权限:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
-A, --askpass               使用助手程序进行密码提示
-b, --background 在后台运行命令
-g, --group=group 以指定的用户组或 ID 执行命令
-H, --set-home 将 HOME 变量设为目标用户的主目录。
-h, --host=host 在主机上运行命令(如果插件支持)
-i, --login 以目标用户身份运行一个登录 shell;可同时指定一条命令
-K, --remove-timestamp 完全移除时间戳文件
-k, --reset-timestamp 无效的时间戳文件
-P, --preserve-groups 保留组向量,而非设置为目标的组向量
-p, --prompt=prompt 使用指定的密码提示
-r, --role=role 以指定的角色创建 SELinux 安全环境
-S, --stdin 从标准输入读取密码
-s, --shell 以目标用户运行 shell;可同时指定一条命令
-t, --type=type 以指定的类型创建 SELinux 安全环境
-U, --other-user=user 在列表模式中显示用户的权限
-u, --user=user 以指定用户或 ID 运行命令(或编辑文件)
-v, --validate 更新用户的时间戳而不执行命令

SUID权限

针对可执行文件,当文件拥有此权限,用户在执行此文件时身份将会临时成为文件属主身份

1
2
chmod u+s ls		#赋权限(需先拥有x权限才生效)
chmod u-s ls #去权限

SGID权限

对于可执行文件,当文件拥有此权限,用户在执行此文件时身份将属于该用户组
对于目录,当目录拥有此权限,用户在进入此目录后身份将为该目录所属用户组

1
2
chmod g+s ls		#赋权限
chmod g+s /home #赋权限

SBIT权限

针对目录,其他人需要拥有全部权限,此时若有此权限,用户只能删除自己的文件

1
2
chmod o+t /home		#赋权限
chmod o+t /home #去权限

不可变权限

对于文件:不允许对文件进行删除改名添加修改
对于目录:不允许建立删除文件
(理解基础权限,这里就好懂了)
设置权限:

1
2
chattr +i hia.txt			#不允许改变(-i删除)
chattr +a hia.txt #只允许追加内容(-a删除)

查看权限:

1
lsattr hia.txt

服务管理

运行级别

查看:

1
runlevel


含义:

切换:

1
init [级别]

独立服务

自启动:开机后自动启动
查看方式:

1
chkconfig –list

设置方式:

1
2
3
chkconfig --level 2345 httpd on	
ntsysv #图形化界面
vi /etc/rc.d/rc.local #将启动命令写入文件,重启后执行,它和上面两种方式独立,不能同时使用

已启动:服务已经启动,和自启动是独立的概念

1
2
/etc/init.d/服务名 start|stop|status|restart
service 服务名 start|stop|status|restart

基于xinet服务

设置方式:

1
2
/etc/xinetd.d/服务名
Service xinetd restart

源码包服务

启动:进入安装目录寻找启动脚本
自启动:如独立服务第三种方式,写入到那个文件
总图: