Linux系统基本操作
Shell
linux命令的分类
Linux命令行的格式
编辑linux命令行
获得命令帮助的方法
Linux目录结构
目录结构介绍
#常用命令
1.查看系统版本:
cat /etc/redhat-release
或安装redhat-lsb-core
yum -y install redhat-lsb-core
lsb_release -a
注:查看系统内核
uname -a
2.查看CPU:
cat /proc/cpuinfo
3.查看内存信息
cat /proc/meminfo
4.关机
poweroff
shutdown -h now/shutdown -h +3 3分钟后再关机,取消是shutdown -c
init 0
5.重启
shutdown -r now/shutdown -r +2 2分钟后再重启,取消是shutdown -c
reboot
init 6
注:
字符界面切换到图形化界面:init 5
图形化界面切换到字符型界面:init 3
6.vi编辑器的使用方式
vi xxx
vim xxx
!vi/!vim 回退且自动打开上次编辑的文件
1】插入内容
a:当前光标后插入内容
A:光标所在的行尾插入内容
i:当前的光标位置前插入内容
I:光标所在的行头插入内容
o:在光标所在行的后面插入一个新行
O:在光标所在行的前面插入一个新行
2】移动
^/0/Home 移动到行首
KaTeX parse error: Expected 'EOF', got '#' at position 32: … 移动到末行 #̲G 移动到指定行 … 删除当前光标到行尾的所有字符
4】复制
yy 复制当前行
#yy 复制从光标处开始的若干行
5】粘贴
p 粘贴到光标处后
P 粘贴到光标处前
6】查找
/xxx n向下找
N向上找
7】撤销
u 撤销最近一近操作
U 撤销对当前行做的所有编辑
8】显示行号
:set nu
9】替换
:【替换范围】 s/旧内容/新内容/g
%:全文范围
n,m:从n行到m行
/g:每一行的所有匹配结果都替换,若没有/g则代表只替换这行的首个匹配旧内容
7.退出
:q
:q!(强制退出)
8.保存退出
:wq
:x
ZZ
9.修改主机名
vi /etc/hostname
xxx
hostnamectl set-hostname xxx
10.网页主页的编辑
1)创建主页结构体
62.centos引导过程
1.开机自检 2.mbr引导 3.GRUB菜单供用户选择 4.加载linux内核 5.init进程初始化
63./sbin/init 是内核第一个加载的程序 ,进程号永远是1.
64.修复MBR扇区故障
故障原因:病毒、木马等造成的破坏,不正确的分区操作,磁盘读写操作
故障现象:找不到引导程序,启动中断,无法加载操作系统,开机后黑屏
应对思路:应提前做好备份文件 以安装光盘引导进入紧急急救模式,重备份文件中恢复。
操作步骤模拟MBR扇区实验
加一块硬盘做实验
进系统查看磁盘
fdisk -l ##看是否有sdb
mkfs -t ext4 /dev/sdb ###格式化sdb
挂载mount /dev/sdb /opt
1、备份MBR扇区数据
dd if=/dev/sda of=/opt/mbr.bak bs=512 count=1
2、模拟MBR扇区故障
dd if=/dev/zero of=/dev/sda bs=512 count=1
重启后观察系统是否有问题
出现
operating system not found
上述就是有故障了MBR挂了
光盘引导,进入急救模式,提示操作
从备份文件中恢复MBR扇区
步骤如下
1.装入光盘,在光盘引导界面选择troubleshooting:
2、进入troubleshooting菜单 选择Rescue a centos system
3、进入引导可以按回车,或者等待
按1 在按回车进入sh-4.2#
4.急救模式下sdb的挂载
mkdir /sdd
mount /dev/sdb /sdd
cd /sdd 查询下该备份文件是否存在
5.dd if=/sdd/mbr.bak of=/dev/sda count=1 bs=512
6.重启reboot 进入系统测试是否正常。
65.grub修复
cd /boot/grub2 ###进入grub2
rm -rf grub.cfg ###删除grub2.cfg 模拟故障
init 6 重启
####出现故障,如下####
grub>
###修复如下###
1.引导急救模式,加载系统镜像
chroot /mnt/sysimage/
2.重新建立加载sda分区
grub2-install /dev/sda
3.重新构建grub菜单配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
4.退出bash环境
exit
5.重启
reboot
66.忘记root密码
sh-4.2#chroot /mnt/sysimage 加载系统镜像
bash-4.2#passwd root
new:
retry:
退出bash环境 exit
重启 reboot
67.chkconfig工具的作用
用于查询或设置系统服务的默认启动状态。
chkconfig --list 查询系统服务的默认启动状态
chkconfig mysqld 35 on 在init 3和5中开启mysqld服务
68.systemd的作用
为了将更多的服务并发启动,从而提高系统启动速度。
69.启动服务
systemctl start xxx
service xxx start
70.关闭服务
systemctl stop xxx
service xxx stop
71.开机自动启动
开启 systemctl enable xxx
关闭 systemctl disable xxx
72.查看系统默认的target(界面)
systemctl get-default
73.设置系统默认的target
systemctl set-default multi-user.target/graphical.target
74.语言设置
查看 localectl
设置 localectl set-locale LANG=zh_CN.UTF-8(可改)
75.时间设置
查看 timedatectl
设置 timedatectl set-time YYYY-MM-DD
timedatectl set-time HH:MM:SS
timedatectl set-timezone time_zone
76.查看进程
ps a 显示当前终端下的所有进程信息
u 显示以用户为主的格式显示进程信息
x 显示当前用户在所有终端下的进程信息
-e 显示系统内的所有进程信息
-l 使用长格式显示进程信息
-f 使用完整格式显示进程信息
例:ps aux
ps -elf
77.查看进程动态信息
top
78.查询进程信息
pgrep -l “xxx” 输出进程名中包含xxx的进程及进程号(pid)
-U aaa 输出由用户aaa运行的进程及进程号(pid)
-t tty1 输出tty1终端上运行的进程及pid号
79.查看进程树
pstree -aup
a 完整命令信息
u 列出对应的用户名
p 列出其对应的pid号
80.调入后台进程
cp 1.gz /opt/2.gz &
81.挂起当前进程并放入后台
wget ftp://www.baidu.com/httpd.bz2 (例) 在下载过程中按ctrl+z组合键
82.查看后台进程
jobs -l
83.将后台进程调入前台
fg 1(1是后台进程号)
84.终止进程
kill 【-9】 5124(pid号) -9是强制 (需要提前知道进程号)
killall 【-9】 vi 将多个进程名为vi的进程都终止(有效率的终止)
pkill 【-9】 -U lisi 将用户lisi启动的进程终止(有条件的终止时用pkill)
85.一次性任务
date
at 10:20 2019-12-17
at>cp -r /var/log/httpd/* /opt/httpd
at>
EOT:文字结束符号 另EOF:文件结尾的符号(后面shell会用)
#atq 查询at任务计划
#atrm 2(任务号)删除一次性任务计划
86.任务计划
crontab -e 编辑任务计划
分钟 时 日期 月份 星期 绝对路径的命令(操作)
/ 代表每间隔的意思 【/3 每隔3】
* 代表任意的意思
- 代表连续的意思
, 代表不连续的间隔
crontab -l 查看任务计划
crontab -r 清空任务计划
#crontab -l -u 用户名 root用户可以查看普通用户做的任务计划,但是普通用户没有
权限查看root用户做的计划
用户任务计划存储路径 /var/spool/cron/用户名
87.锁定文件
chattr +i /etc/passwd /etc/shadow
88.解锁文件
chattr -i /etc/passwd /etc/shadow
89.设置密码有效天数
vi /etc/login.defs
PASS_MAX_DAYS 30 适用于新用户
#chage -M 30 lisi 适用于已存在用户
#chage -d 0 zhangsan zhangsan下次登录时必须修改密码
90.命令历史记录
vi /etc/profile
HISTSIZE=200 新登录用户有效
#export HISTSIZE=200 现已登录的用户有效
vi ~/.bash_logout 当退出已登录bash环境后,所记录的历史命令将自动清空
history -c
clear
vi /etc/profile
export TMOUT=600 适用于新登录用户,设置其终端的超时时间为600s
#export TMOUT=600 适用于当前登录用户
#unset TMOUT 取消TMOUT变量设置
91.用户切换
su 用户 切换用户
默认是所有用户都允许使用su命令,如果限制wheel组用户使用su
vi /etc/pam.d/su
auth required pam_wheel.so use_uid 将#去掉的话代表只允许wheel组用户使用su命令
92.提升执行权限
visudo
user MACHINE=COMMANDS
例:
visudo
zhangsan localhost=/sbin/ifconfig
%wheel ALL=ALL
查看用户的权限
su 用户名 进入此用户
sudo -l 查看用户的权限
93.pam认证类型
1)认证管理(authentication management)
2)账户管理(account management)
3)密码管理(password management)
4)会话管理(session management)
94.禁止普通用户登录
touch /etc/nologin 在服务器进行备份或调试过程时用
95.弱口令的检测
tar zxvf john.tar.gz
cd john-1.8.0
cd src
make clean linux-x86-64 执行编译文件
ls …/run/john 查看是否生成john程序
cp /etc/shadow /root/shadow.txt 复制密码文件
cd …/run
./john /root/shadow.txt 破译账户弱密码
./john --show /root/shadow.txt 查看已破译出的账户列表
使用密码字典文件
[[email protected] run]# :> john.pot //清空已**出的账户列表,以便重新分析
[[email protected] run]# ./john --wordlist=./password.lst /root/shadow.txt
[[email protected] run]# ./john --show /root/shadow.txt
96.网络扫描
rpm -ivh /mnt/Packages/nmap-xxxx.rpm 安装nmap软件包
nmap -sT (tcp连接扫描) 127.0.0.1、192.168.4.0/24、192.168.4.100-200
-sU (udp扫描)
-sP (icmp扫描)
-sS (tcp syn扫描)
-sF (tcp fin扫描)
-p (指定端口扫描) 21,20(扫描多个端口用逗号进行分隔)
97.linux操作系统的文件权限、文件属性会放入inode中,内容放入block中。一个文件必须占用一个inode,
至少占用一个block。
inode中的内容:
文件的字节数
文件的拥有者的用户id
文件的组id
文件的读、写、执行权限
文件的时间戳
…
98.查看inode节点占用情况
df -i /data 查看/data目录下i节点占用情况
注:若节点耗尽,可以转移或删除一些占用i节点数比较多的文件。
99.硬链接
ln 源文件 目标文件
源文件与目标文件的inode号码相同,都指向一个inode,当一个文件拥有多个硬链接时,对文件内容修改,
会影响到所有文件,若删除一个文件,不会影响另一个文件的访问。
100.软链接
ln -s 源文件 目标文件
源文件与目标文件的inode号码不同,但目标文件依靠源文件存在而存在,删除源文件后,目标文件也无
法访问。注:若目标文件发生改变,源文件也会跟着改变,这点和硬链接一样。
101.日志文件的分类
/var/log/message 记录linux内核消息及各种应用程序的公共日志信息
/var/log/cron 记录crond计划任务产生的事件信息
/var/log/dmesg 记录linux系统在引导过程中的各种事件信息
/var/log/maillog 记录进入或发出系统的电子邮件活动
/var/log/lastlog 记录每个用户最近的登录事件
/var/log/secure 记录用户认证相关的安全事件信息
/var/log/wtmp 记录每个用户登录、注销及系统启动和停机事件
/var/log/btmp 记录失败的、错误的登录尝试及验证事件
102.日志级别
0 EMERG(紧急) 会导致主机系统不可用情况
1 ALERT(警告) 必须马上采取措施解决的问题
2 CRIT(严重) 比较严重的情况
3 ERR(错误)运行出现错误
4 WARNING(提醒)可能影响系统功能,需要提醒用户的重要事件
5 NOTICE(注意)不会影响正常功能,但是需要注意的事件
6 INFO(信息)一般信息
7 DEBUG(调试)程序或系统调试信息
103.查询用户登录的历史记录
last 查看成功登录到系统的用户记录
lastb 查看登录失败的用户记录