文章目录
第1章 初识Linux
了解常用的Linux的发行版有哪些?
会用命令完成对内核的版本号和发型版本号的查询。
uname -r
cat /etc/redhat-release
第2章 安装Linux操作系统
要求掌握系统的不同登陆方式,图形界面的登陆,本地字符终端的登陆和远程登陆。
会打开多个本地虚拟终端。
第3章
了解Linux默认使用的shell的版本名称和所在文件系统中的位置。
会用命令来显示目前所用shell的版本 echo $0
会用命令查询系统中所支持的shell版本有哪些? echo $SHELL
会修改配置文件(需要知道文件的名称和位置)来改变开机运行的级别。vi /etc/inittab
会查询当前所在的运行级别(runlevel),并进行级别的切换(init 6:系统重启)。
会按照要求修改PS1的值。 通过命令echo $PS1
查看当前的设置([\u@\h \W]$)
会使用man命令查看帮助手册。
查看环境变量PATH的值,把/root/bin目录添加到PATH的路径中
第四章 文件管理与常用命令
知道Linux中文件的分类(5种类型)
(1)普通文件:符号是 -
(2)目录文件:符号是 d
(3)字符设备文件:符号是c
(4)块设备文件:符号是b
(5)符号链接文件:符号是l
并会用命令查看一个文件的类型(file),或着根据类型查找到这样类型的文件(①find
,②ls *.c
)。
理解相对路径和绝对路径的概念,
用户刚登陆到系统时,其工作目录就是用户的主目录。
cd
cd …
cd ~
cd -
了解Linux的目录结构,掌握常用目录的名称和功能
文件与目录操作的基本命令如下(要求掌握)
cat: 查看文件
more
less:对于显示大型文件具有较高的效率
head:head -5 文件 查看文件头 5 行
tail :tail -5 文件 查看文件最后 5行
结合了 head 与 tail 的指令: 显示/etc/passwd的第 11 行到第 20 行:head -20 /etc/passwd |tail -10
把/etc/passwd文件的5-12行内容中包含有”sbin”字符串的行显示在屏幕上:
head -12 /etc/passwd |tail -8 |grep 'sbin’
sed: 把/etc/passwd文件的5-10行的内容截取出来保存成为一个新的文件
sed -n '5,10p' /etc/passwd >> logpw.log
sed详解
grep:显示字符串 (通常跟 |
)
find
按文件名:find / -name Hello.java
按拥有者:find / -user ch
sort :sort -n -t: -k 3 text
-n 按数值排序 -t separator:按指定字符separator作字段分隔符 -k 3 第3个字段
wc:统计包含bin
的行数,单词数和字符数grep bin /root/passwd |wc
cp:复制文件或目录. -a保留属性递归 -i询问 \cp:强制覆盖不提示
mv:重命名或者移动文件
rm:删除文件或者(必须 -r)目录 -rvf:递归删除所有目录内容,有提示
ln:类似于windows里的快捷方式
ln –s hello softhello ln -s [原文件或目录] [软链接名(符号链接)]
ln hello hardhello ln [原文件或目录] [硬链接名]
mkdir: -p :同时创建多级目录
cd:切换目录
pwd:显示当前所在目录
ls:显示当前目录下的内容 ① .ll
: ls-l
查看目录 ②. 查看文件的所有者:ls –ahl
chmod:改变文件或目录的访问权限(ll -d先查看)
推荐 通过数字变更权限:r=4 w=2 x=1
umask
chown:改变文件或目录的所有权 chown newowner:newgroup file
改变用户的所有者和所有组
chgrp newgroup file
改变文件的所有组
gzip:文件压缩 -d解压
bzip2
tar:tar -zcvf 打包后的文件名.tar.gz xxxx(对哪些文件打包 )
压缩文件 tar -zxvf xxx.tar.gz
解压缩文件
>
:将内容追加(保存)到指定文件中
把系统中是符号连接类型的文件,并且文件名中包含cdrom字符串的结果显示在屏幕上。find / -name "*cdrom*" -type l
第五章 用户与用户组管理
掌握重要的用户管理的文件名称和功能,和各字段的含义。
用户管理的2个重要文件:cat /etc/passwd 、/etc/shadow /etc/group 文件的解析
掌握用户和组管理的常用命令
useradd stu ( 私有组)
① -g 用户组 用户名 (标准组) 不为用户创建新组, 而使用 -g 后的指定用户组
②-G 指定用户所属的附加群组。
usermod 修改用户的组:usermod –g 用户组 用户名 -G 附加组名 用户名
修改用户登录的Shell usermod -s /bin/bash 用户名
userdel
groupadd
groupmod 修改用户组属性 -g gid值
-n 修改组名
groupdel
newgrp 切换到root组: newgrp root 详解
groups 查询 用户所属的组都有哪些
passwd 设置密码 :echo 123456 |passwd --stdin stu
chage -E 2020-01-2 stu 强制更改用户密码
chage -d 0 stu 强制要求首次登录改密码
在系统中添加如下的用户:stu1,stu2,stu3.其中stu1只有一个私有组,stu2和stu3支持一个标准组(组名wlw)。给三个用户设置密码,并在不同的终端上登录。然后查看登录情况,都有哪些用户登录,分别在哪个终端上登录。
在/root目录下创建一个文件test,请进行权限设定实现如下的控制:1要求stu1对该test文件只能读;2 stu2和stu3用户对test可读可写。
第6章 软件包管理RPM和YUM数据库
掌握关于RPM包的查询、安装和卸载命令
rpm –q
rpm -qa:查询所有安装的软件包
rpm -qi:显示文件概要信息
rpm -ql:显示路径
rpm -qf:查询file属于哪个软件包 (误删查询)
查询命令属于哪个软件:
rpm -qR:查询安装包的最低依赖要求
rpm -qd:显示文档文件列表
rpm -ivh 安装
rpm -e 卸载 rpm -e --nodeps httpd
查询已安装的rpm列表 rpm -qa|grep xx
while:查找文件、显示命令路径 while gcc
掌握yum配置文件所在目录/etc/yum.repos.d/
及该目录下的两个重要的配置文件:CentOS-Base.repo CentOS-Media.repo会根据要求修改以上两个配置文件的内容,然后使用yum命令进行软件包的安装。
禁止远程仓库:mv CentOS-Base.repo Cent-Base.repo.bak
启用本地仓库:将CentOS-Media.repo中设置enabled=1
第7章 Linux磁盘管理
了解Linux的文件系统常用类型有哪些
磁盘设备在系统中的命名和存放位置
掌握常用磁盘管理命令:
mkfs.*
mount
umount
fdisk -l
:显示分区信息
df: df -h 查询系统整体磁盘使用情况
新增硬盘进行分区
1)虚拟机插入新硬盘
在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。然后 重启系统!
2)进行分区
通过fdisk /dev/sdb
开始对 /sdb进行分区 d
删除分区
1.开始分区后输入n
(新增分区),然后选择p
(显示磁盘) ,分区类型为主分区。(+指定大小)两次回车默认剩余全部空间。
2.最后输入w
(写入分区并退出),若不保存退出输入q。
3)格式化(创建文件系统) mkfs -t ext4 /dev/sdb1
4)挂载 先创建一个 /home/newdisk ,挂载 mount /dev/sdb1 /home/newdisk
5)设置可以自动挂载(永久挂载,当你重启系统,仍然可以挂载到/home/newdisk) 。
通过修改 vim /etc/fstab
添加完成后 执行mount -a 即刻生效
- 多类型分区
1 添加硬盘后查询硬盘的名称
#fdisk -l
2 对新加的硬盘(假设查到的硬盘名称为sdb)进行分区
#fdisk /dev/sdb
#n p 设置名字 +指定空间大小
3 对分区建立文件系统
#mkfs -t ext3 /dev/sdb1
4 挂在该文件系统
#mkdir ~/newfs
#mount /dev/sdb1 ~/newfs
其他
linux下查看所有设备挂载情况
统计/home 文件夹下文件的个数:^定位符(:以xx打头) wc (统计) -R (递归统计)
第8章 Linux编程
熟练使用vi编辑器
vi和vim快捷键
撤销动作 u
复制当前行向下的n 行 nyy,再按p粘贴
删除当前行向下的n行ndd
到文档的最末行[G]和最首行[gg] 到第n行:n+G
移动到行首:Shift+6 移动到行尾:Shift+4
/要查找的词 搜索,n查找下一个,N查找上一个
掌握用gcc编译c语言程序的步骤。
1.vi hello.c
2.gcc hello.c -o hello
3../hello
- 会用gdb对程序进行调试。
掌握简单的makefile编写,注意makefile文件中常用的clean和install目标的编写。
1.vi makefile
hello:hello.o
gcc hello.o -o hello
hello.o:hello.c
gcc -c hello.c -o hello.o
clean:
rm -f hello.o hello
install:
cp -p hello /usr/local/bin
2. make
3. make install
4. hello
5. make clean
第9章 进程管理
理解守护进程的概念: linux系统启动时的进程,并在后台运行.
理解重要守护进程atd和crond的作用: 计划任务
atd服务使用的at命令只能执行一次,而crond服务使用的crontab定义的命令,是循环作用的
掌握at和crontab命令的使用,并能根据题目要求使用相应的命令进行任务安排。
进程管理的常用命令要求掌握如下的:
ps
*
top: 动态显示进程
kill +pid 杀死指定pid对应的进程. -9 :强行杀死进程
fg
jobs
理解进程文件系统proc和其作用:它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数 ls /proc
- 使用at任务完成1分钟后,在当前终端中显示“welcome”字符串
[root@localhost ~]# at now + 1 minutes
at> echo "hello" >> result.txt
at> <EOT> //ctrl+d 退出at命令
at 添加用户
at>useradd aaa //在at命令里设定添加用户aaa
at -f at.sh now +1 minutes
tail -f /etc/passwd //查看/etc/passwd文件后十行是否增加了一个用户aaa
第10章 shell编程
掌握shell编程中变量的定义和赋值
• 基本语法-echo输出
1)定义变量:变量=值 A=100 echo "A=$A"
2)撤销变量: unset 变量
3) 声明静态变量: readonly变量,注意:不能unset
定义变量的规则
- 变量名称可以由字母、数字和下划线组成,但是不能以数字开头。
- 等号两侧不能有空格
- 变量名称一般习惯为大写
掌握一个简单shell脚本的框架由哪几部分组成
会编写和运行一个简单的shell脚本
脚本格式要求_HelloWorld
- 脚本以
#!/bin/bash
开头vi test.sh
#!/bin/bash
echo "hello,world!"
- 脚本需要有可执行权限
chmod 744 test.sh
3)运行./test.sh
#!/bin/bash
#shell脚本批量创建10个用户,用户密码初始化为:123,首次登录时强制修改密码
for n in `seq 10`
do
useradd user$n;
#随机密码 echo user$n |passwd `echo user$n |md5sum |cut -c1-8`
echo '123' | passwd --stdin user$n
chage -d 0 user$n
done
其他
cenos配置网络连接
如何修改为静态ip
命令行方式 vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static # IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP 协议)
IPADDR=192.168. #指定IP地址
ONBOOT=yes #系统启动的时候网络接口是否有效(yes/no)
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="3b25374d-e44c-4694-9cdd-891c5b2bf4fa"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.172.128
NETMASK=255.255.255.0
GATEWAY=192.168.31.1
DNS1=119.29.29.29
修改后,一定要重启服务
1).service network restart
-
reboot
重启系统