http://man.linuxde.net/
https://www.lamp168.com/read.php?tid-1.html
p1.spaceit-sz.com
p2.spaceit-sz.com
################## 开关机重启操作 ##################
shutdown -r [-h] [时间] ctrl + c 取消 now
################## 常用工作命令 ##################
pwd 显示当前工作目录
ls 打印当前目录内容
ll -a 打印全部文件 包括隐藏文件
cat 查看文件内容
################## 用户/组操作 ##################
用户 + 组
创建用户 useradd 用户名
更改密码 passwd 用户名
查看用户 cat /etc/passwd
查看组 cat /etc/group
删除用户 usedel 用户名 userdel -r
帮助信息 命令名 + --help
创建组 groupadd + 组名
删除组 groupdel
passwd -l lynn 禁止用户登录
passwd -u lynn 解锁用户登录
useradd -s /sbin/nologin -M -g mysql mysql
useradd zhangsan -s /sbin/nologin -M
-s:指定用户登入后所使用的shell。默认值为/bin/bash
-M:不要自动建立用户的登入目录
################## 文件目录操作 ##################
文件curd
创建 touch + 文件名
删除文件 rm y/n
rm file1 -y
删除文件 rm -rf
-r 递归删除
创建目录 mkdir 目录名
删除目录 rmdir
创建级联目录 mkdir -p a/b/c/d
粘贴复制改名
mv
cp
################## 常用运维命令 ##################
cpu cat /proc/cpuinfo
内存 free -h
硬盘 df -h fdisk -l
负载状况 top -d second
进程查看
新硬盘 分区 格式化 写入文件系统 ext2 ext3 ext4
fdisk /dev/sdc
mkfs /dev/sdc1
挂载 mount
卸载 umount 挂载点
################## 管道符 重定向 ######################
w | grep 'load' | awk NR==1'{print $8}' | cut -d, -f1
| > >>
################## vim编辑器 ##################
vim编辑器 vi
vim 文件名 1.php
终端模式 i
编辑模式
esc 回到终端模式
shift + : 进入命令行模式
w 保存 q 退出 !w !q !wq
显示行号
光标移动
w b 单词级别
h l 字符级别
k j 换行级别
$ 行尾
^ 行首
插入位置
i 当前位置插入
I 行首插入
a 当前位置后一个字符插入
A 行位插入
o 下一行
O 上一行
x 当先位置删除
复制剪切粘贴复制
dd
dnd
dw
de
d$
d^
yy
yny
p
v
命令撤销
u
:/s查找 n N
begin,ends/find/new 查找替换
Ctrl+u:向文件首翻半屏;
Ctrl+d:向文件尾翻半屏;
Ctrl+f:向文件尾翻一屏;
Ctrl+b:向文件首翻一屏;
Ctrl + {
Ctrl + }
################## 文件目录权限 ##################
权限命令 rwx 可读 可写 可执行
chmod u+xwr g+ o+
chmod 755 644 目录或者文件
################## 软件安装卸载 ##################
软件安装 nginx mysql php memcache redis lnmp组合
三大安装:
1.yum 安装系统内核软件
yum search 软件名
yum install 软件名
yum list installed | grep httpd
yum remove 软件名
2.rpm
wget 目标文件地址
3.源码编译安装 LNMP linux nginx mysql php memcached redis mongdb
3.1 nginx
http://nginx.org/
查看当前系统端口 netstat -pant | grep 8088 netstat -pant
http://nginx.org/en/download.html xxx.tar.gz z xxx.tar.bz2 j
wget
解压软件 tar vfxz 包名
configure
./configure --prefix=/root/mnt/nginx /usr/local/nginx_c
yum install pcre pcre-devel -y
make 编译
make install
3.2 mysql
https://dev.mysql.com/downloads/mysql/
#aei>t:Cr2%M
3.3 php
http://php.net/get/php-7.1.21.tar.gz/from/a/mirror
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm
3.4 memcached
3.5 redis
https://redis.io/download
139.198.17.83 root ZhangZhuang0269
############ 目录结构 #############
***** 重启 关机
***** 用户增删改查
***** 文件权限操作
***** 文件目录操作
***** 文件内容查找 链接操作
***** 文件压缩解压
***** vim编辑器
***** 时间日期操作
***** shell流程控制语法
***** ACL权限管理
***** ssh连接远程服务器
***** 服务状态检测
***** 任务查看进程服务
***** 查看系统版本信息
***** 常用运维命令
***** linux备份还原命令
***** linux核优化
####################### 文件权限操作 #######################
chmod -R 755 ./
chmod u+x,g-x,o+w
chmod a+x
rwx
针对文件
r 读取文件的内容
w 编辑文件内容
x 执行文件
针对目录
r 列出目录下的文件
w 添加 删除目录中的文件
x 是否可以进入该目录
chown -R nobody /usr/local/nginx/html/www
chgrp -R nobody /usr/local/nginx/html/www
查看系统默认缺省权限 umask -S
修改方式 umask 022 用755 - 022
who am i
w
last
lastlog
查看文件 目录 重定向
> >>
echo
ls
ll
ll -h
ls -al
ls -ali
ls -a -l -d -h -i
pwd print working directory
more 空格 b
less
head
tail
跟踪查看文件 tail -f nginx.log
文本内容操作
grep nobody /etc/passwd
awk '{print $1}'
awk NR==1'{print $1}'
tail
跟踪查看文件 tail -f nginx.log
文本内容操作
grep nobody /etc/passwd
awk '{print $1}'
awk NR==1'{print $1}'
awk '/age/{printf("%s\t%s\t%s\n",$1,$2,$3)}' awk.data
cut -d # -g 1 a.php
####################### ssh连接远程服务器 ##############################
ssh root@123.207.146.102
ssh root@123.207.146.102 -i private.key
####################### 服务状态检测 ###################################
检测服务运行状态
pgrep -x
检测服务状态
nmap -sT localhost | grep 80/tcp | awk '{print $2}'
运用cut命令
cat abc | cut -d @ -f 2 | grep aaa
测负载状态 运用awk
w | grep load | awk '{print $8 $9 $10}' >> ./load_average.dat
经典用法实例
netstat -apnt | grep :80 | awk '{print $5}' | awk -F: '{print $1}' | uniq -c
同时追踪文件后10行内容
####################### shell流程控制语法 ##############################
tail -f filename example tail -f sql.log
log_size=$(du -sb ./dump.rdb)
f_total=$(ls -l /etc | wc -l)
####################### 重启 关机 #######################
shutdown -h now
shutdown -r now
shutdown -c 取消上一次关机命令
reboot
halt
reboot, halt, poweroff - reboot or stop the system
init 0 关机
init 6 重启
runlevel
####################### 创建删除用户 #######################
添加用户 useradd -r zhangsan 不创建家目录
删除用户 userdel -r zhangsan 同时删除家目录
修改用户 usermod -n
修改用户所在分组 usermod -g 组名 用户名 usermod -g demogroup zhangsan
chage -l root 列出用户详细密码状态
chage -d 0 root 强制用户第一次登陆更改密码
groupadd zhangsan
groupdel zhangsan
groupmod
修改密码 passwd root
切换账户 su - su zhangsan
passwd -l zhangsan 锁定用户
passwd -u zhangsan 解锁用户
su - root 注意 - 连带用户的环境
id root 查看用户id
who
whoami
who am i
which ls
whereis ls
whatis ls
查看系统配置文件说明 man 5 /etc/hosts
查看系统命令说明 man ls
info
help 查看shell内置命令帮助
例如 help umask
write root 推送消息
write zhangzhuang 推送消息 ctrl + d 确认发送操作
sudo -l
sudo
visudo
w
last
lastlog
who
####################### ACL权限管理 #######################
查看磁盘分区是否支持acl权限管理
dumpe2fs -h /dev/xxx
设置文件目录acl权限
针对用户
setfacl -m u:zhangsan:rwx /project
针对组
setfacl -m g:demogroup:rwx /project
查看文件目录acl权限
getfacl /project
ll 命令权限未知会出现 +
删除文件目录acl权限
setfacl -b /project
####################### 系统语言 #######################
locale
/etc/sysconfig/i18n
export xxxxx
####################### 文件目录操作 #######################
mkdir rmdir
mkdir -p ./a/b/c 递归创建目录
rmdir 删除空目录
pwd
touch index.php 创建文件
rm index.php 删除文件
rm -rf index.php 强制删除 -r 删除目录 -f 强制删除 focus
cp index.php index2.php 复制
cp -R ./abc ./aaa
cp -p ./abc ./aaa 保留文件属性 修改时间
mv ./abc ./aaa 剪切
####################### 文件内容查找 链接操作 #######################
ln -s /etc/hosts .
ln -s /etc . 软链接可以链接目录,硬链接则不可以
软连接类似windows的快捷方式 删除原文件,会导致软连接失效 显示l
硬链接不能链接目录 删除源文件 对硬链接文件不会产生影响 不显示l inode号与
源文件相同
ln /etc/hosts .
find 路径 条件 值
find . -name '*sh'
find . -name '*sh*' * 通配字符
find . -name '*sh???' ? 匹配单个字符
find . -size
find . -user root 查找用户为root的所有文件
find . -group root 查找用户组为root的所有文件
find 连接操作 -a and -o or
find /etc/ -name '*init*' -exec du -sk {} \;
find /etc -name *init* -exec ll {} \; 将查寻结果进行连贯操作
find ./ -inum 794265 -exec rm {} \; 根据文件inode删除文件
注意: xargs 的用法
find /mnt/hgfs/www-2/leave2/ -name '*php' | xargs grep hasleave
find -name '*.html' . | xargs grep 'www.lamp168.cn'
locate inittab 在资料中查找
updatedb 手动更新资料库
grep 关键词 文件名 -i 不区分大小写 -v 排除指定字串
grep -v ^# /etc/inittab 去除注释内容 反向查找
打印变量信息
name=zhangsan
echo $name
或者 echo ${name}
或者 echo $(echo $name)
######################## vim编辑器 ########################
剪切 dd
剪切3行 d3d
dG 删除光标到结束所有内容
dg 删除光标到开头多有内容
复制 yy
复制3行 y3y
粘贴 p
删除当先字符 x
删除正行 dd
删除单词 dw
删除当前光标后所有字符 d$
删除当前光标前所有字符 d^
删除当前单词 dw de db
v 可视化编辑
文件头部 gg
文件尾部 GG
0 切换到行首部
shift { } 上一段 下一段
快速进入编辑模式
后 a A
前 i I
上下 o O
s
向右移动
l 右移动一个字符
w 单次头部
e 单词尾部
向左移动
h 左移动一个字符
b 左移动一个单词
按照单词挂光标移动 w
移动单词头部 b
移动单词尾部 e
上下光标移动 j k
查找命令 :/demo
替换字符 r R
r 替换当前字符
R 替换多个字符 esc退出
另存新文件
:w file.php
导入新文本
:r /etc/inittab 将inittab中的内容导入到光标所在处
替换字符串
:%s/old/new/g % 全文替换
:ln1,ln2s/old/new/g 指定行范围替换
set nu set nonu
set no nu
ZZ 保存退出
wq
w
q
w!
wq!
####################### 时间日期操作 #######################
cal
date
date -s '2011-2-2 12:20:20'
date -d '+1 day' +%Y%m%d%H%M%S
echo $(date -d '+1 day' +%Y-%m-%d-%H:%M:%S)
clock -w
time
####################### 任务查看进程服务 #######################
kill 进程号
pkill -9 php -9 强杀
nmap -st 127.0.0.1
pgrep -x php
ps aux | grep nginxo
netstat -apnt | grep nginx
ping localhost
traceroute www.baidu.com
wget
curl localhost/1.php
telnet localhost 11211
service mysql status
chkconfig
setup
jobs fg bg
history -c
history -w
history 10
执行历史任务: !1
alias
env
####################### 软件安装卸载 #######################
wget
yum install vsftpd
yum list installed | grep ftp
yum search php
yum clean all
yum remove vsftpd
yum update vsftpd -y
rpm -ivh httpd.rpm
rpm -e httpd
rpm -qa | grep httpd
rpm -qi httpd 详细信息
rpm -ql httpd 查看安装列表
rpm -qf filename 通过文件 反向追查所属rpm包
rpm -V 包名 rpm包校验
-i install 安装
-v verbose 显示详细信息
-h 显示进度
rpm -ivh --nodeps 不检测依赖性
####################### 网络配置 #######################
快速配置ip地址
ifconfig eth0 192.168.1.1
ifconfig
/etc/hosts host文件
/etc/resolve dns配置文件
/etc/sysconfig/network-script/ifcfg-eth0 网卡配置文件
/etc/sysconfig/network
####################### 开机启动项 定时任务 #######################
crontab -e
crontab -l
/etc/rc.local
/ect/rc.d/rc.loacl
####################### 磁盘分区 挂载 #######################
fdisk -l
fdisk
mkfs -t ext4 /dev/sda0
blkid /dev/sda1 查看分区uuid 以及文件系统类型
例子:
blkid /dev/sdb
/dev/sdb: LABEL="YUNIFYSWAP" UUID="f490fae5-73c7-47a0-88df-084f3ed627e0" TYPE="swap"
/etc/fstab 自动挂载分区配置文件
例子:
UUID=185dc58b-3f12-4e90-952e-7acfa3e0b6fb /mnt/sdc ext4 defaults 0 2
修改完 fstab 请使用 “mount -a” 先检查下是否有问题
dumpe2fs /dev/sda1 查看分区中一个数据块的大小有多大
dumpe2fs /dev/sda1 -h
默认一般4k
mount /dev/cdrom /mnt/cdrom 挂载
umount /dev/cdrom 卸载
mount -l 查看系统中已经挂载的设备
mount -a 依据配置文件/etc/fstab的内容自动挂载
####################### 内核优化 #######################
系统内核优化 文件数 连接数优化 释放缓存
echo 1 > /proc/sys/vm/drop_caches
ulimit -n
umimit -a
/etc/sysctl.conf
/etc/security/
####################### 查看系统版本信息 #######################
cat /etc/issue
cat /etc/redhat-realase
uname -a
lsb_realse
####################### 常用运维命令 #######################
df -h
free -m
free -h
du -sm ./ | sort -n
du -sh ./*
wc -l
top -d 1
nginx -s reload > /dev/null 2>&1 &
umask -S
env
info
w
dumpe2fs -h /dev/sda1 检测是否支持ACL权限管理
last
last
lastlog
w
who
dmesg 内核信息检测
dmesg | grep CPU
file /bin/ls 查看当前操作系统位数 23bit 64bit
lsof -p pid
lsof -c nginx 查看进程占用的文件
rsyslogd
history -c
jobs
jobs -l
fg 1
fg 工作号
bg 工作号
chkconfig --list
chkconfig --level 2345 vsftpd on
chkconfig --level 2345 vsftpd off
chkconfig --list
chkconfig --level 2345 vsftpd on
chkconfig --level 2345 vsftpd off
--level 2345 默认 可省略
ntsysv 管理自启服务
service
setup
r:nlevel
日志位置 /var/log
ssh/sftp命令行远程连接
ssh -i lamp168_ssh_private_key root@139.198.1.134
sftp -oidentityfile=lamp168_ssh_private_key root@139.198.1.134 << EOF
get study.txt
quit
EOF
####################### 文件压缩解压 #######################
tar vfxz xx.tar.gz
tar vfcz xx.tar.gz
tar vfxj xx.tar.bz2
tar vfcj xx.tar.bz2
tar
unzip zip
unzip ssl.lamp168.com.zip -d abc 解压zip文件 到指定目录
rar
##################### linux系统备份还原 ##################
1.全量备份
2.增量备份
3.差异备份
dump -0j -f /root.bak.bz2 /root/temp
restore