两天过起来非常快,也非常充实,在做的东西有点多,这才刚开始,想想后面应该要更加加倍预习和学习!
一般我们自已的电脑和大多数办公电脑还是用windows多一点,苹果主机是用unix.而我们一般的手机安卓系统其实就是Linux..
老师介绍了一个小工具connectbot,具说这个可以连自已的手机相当于windows的cmd.
主要还有linux的历史和发展史,https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg
上面这个网站非常全面的介绍了linux的发展史,非常全面,可以看到什么时候发行的,什么时候更新的,由哪个版本发展过来的,都非常清楚。
这里有几个小命令需要记一下,查看自已的内核版本,查看系统版本。
这边还有一个扩展知识点就是相当于更改开机显示画面的一个命令。
cat /etc/motd
yum update
一般我们会用NAT网络,这样我们在工作的地方或者是家里,不用去改任何设置,只要刚开始配置正确就可以上网了。
当出现问题的时候,我们也可以用 NetworkManager去看一下,
systemctl stop networkmanager
sysstemctl disable networkmanager
这里提到一个工作态度在排查问题的时候,我们一定要做到:认真,细心,严谨!
这个主要介绍了两个工具 putty xshell(4.0以后有些版本是需要付费的),工具其实不重要,只要可以连上我们的服务器,用哪个关系不大,习惯就好。这里主要是要掌握密钥认证的方式连接我们的服务器,因为以后工作中应该也是这种方式用的会多一点。
runlevel0 | 系统停机状态,系统默认运行级别不能设为0,否则不能正常启动 |
runlevel1 | 救援模式 |
runlevel2 | 多用户模式 |
runlevel3 | 完全的多用户状态 |
runlevel4 | 系统未使用,保留 |
runlevel5 | 图形界面模式 |
runlevel6 | 重启 |
这个grup密码主要是为了防置用户直接在服务器上,进入单用户模式更改root密码.
两种方式可以学习一下:
a. 使用cobbler批量安装操作系统(基于Centos7.x )
https://www.cnblogs.com/clsn/p/7839965.html
b. kickstart实现批量安装CentOS7.x系统
http://blog.51cto.com/13055758/2086322
这里面有一个配置文件在我们的/etc/anaconda-ks.cfg,这个可以配置我们的安装方式。
anaconda-ks.cfg是系统安装的时候生成的一个文件,通过这个文件可以修改成自动安装的脚本,用于自动安装同样配置的系统.
Table of Contents
2018.7.26直播课堂笔记
1.1今天的直播课程首先是介绍了操作系统有哪些:一般操作系统分类为:widows linux unix..
1.2Linux是一种类unix系统,可以说linux是unix系统衍生过来的。
1.3虚拟机介绍:vmware virtualbox
1.4有时候cenos升级了,发现我们的版本还是老版本的时候可以用以下这个命令升级(不会影响之前装的软件,配置的服务)
1.5配置网络(这个经常出现问题的地方)
1.6远程连接
1.7运行级别
1.8单用户模式
1.9设置grup密码
1.10光盘救援模式
1.11 无人值守批量安装操作系统
2.1 /2.2 系统目录结构
2.3 ls命令
ls 英文全称为list的意思,是linux用的比较多的命令。
2..3.1ls命令实操
2..3.2ls -a 可以看到一些“.” ".."文件
2..3.3 ls -l
2.3.4 ls -i 这个可以查看inode
2.3.5 ls -tl按时间排序
2.3.6 ls-d
2.3.7 ls-t
2.4 文件类型
在linux中文件一般有以下几种:
2.5 alias命令
2.5.1alias这个是设置别名的命令一般用法是这样:
2.6 相对和绝对路径
2.7 cd命令
2.8 创建和删除目录mkdir/rmdir
而删除目录只要 “rmdir -p test1/2/3/4”,就可以!
2.9 rm命令
2.10 环境变量PATH
2.11 cp命令
2.12 mv命令
2.13 文档查看cat/more/less/head/tail
一般我们和文件相关的操作有如下几个常用命令:cat tac more less tail head .
2.13.1.下面我们来看一下实操的应用
2.13.2 cat命令
2.13.2tac命令
2.13.3more命令
2.13.4less命令
2.13.5tail命令
2.13.6head命令
2.14 文件和目录权限chmod
2.15 更改所有者和所属组chown
2.16 umask
下面这些基本是就是LINUX的目录:
bin | 这个一般用于存放一些常用的命令 |
boot | 这个目录一般用于存放系统启动时用到一些核心文件 |
dev | 这个一般是硬件设备文件 |
etc | 这个是所有系统管理所需要的配置文件和目录 |
home | 这个一般是用户的家目录 |
lib/lib64 | 这个用于存放系统的最基本的动态共享库,相当于windows的DLL文件 |
media | 系统会自动识别一些设备(U盘,光驱之类的) |
mnt | 用于系统临时挂载别的文件系统 |
opt | 用于额外安装软件所设置的目录 |
proc | 这是一个虚拟目录,系统内存映射。 |
root | 系统管理员的用户家目录 |
run | 这个用于存放一些服务的pid |
sbin | 系统管理员使用的系统管理程序 |
srv | 服务启动之后需要提取的数据 |
sys | 和硬件驱动程序相关的信息 |
tmp | 目录用于存放一些临时文件 |
usr | 用户的很多应用程序和文件都存放在该目录下 |
var | 存放的是不断扩充且经常修改的目录。 |
-a | 可以查看一些隐藏的文件。包括以“.“开头的隐藏文件 |
-l | 可以列出详细的文件信息 |
-tl | 列出文件按时间排序 |
-i | 可以查看文件相关的INODE号的信息 |
-d | 可以查看目录文件信息 |
-t | 按时间排序 |
- | 这个就是表示普通文件 |
d | 这个是表示目录 |
b | 这个一般是表示块设备 |
c | 这个是表示字符设备 |
l | 这个是链接文件 |
s | 这个一般是通信文件 |
p | 这个是管道文件 |
2.5.2列出所有系统里面有别名的:
2.5.3重新设置别名就是和第一次设置别名是一样的直接:
2.5.4如果想要永久生效设置的别名,需要在这个地方设置
/root/.bashrc
生效就就用这个命令
source /root/.bashrc
2.5.5 删除别名:unalisa name
unalias cp
相对路径 | 一般不是如根目录/写起的 |
绝对路径 | 一般是由根目录写起的 |
相对路径我们一般是这样的:
绝对路径一般是这样的:从/根目录开始
cd | 是“change directory”的缩写,用来变更用户所在的目录,后面什么都没有就会进入当前用户的目录。 |
2.7.1 一般cd 还有两个点要注意一下 “.” “..”
"." | 这个表示当前目录 |
".." | 这个表示上一级目录 |
这里我们先进入的是/etc目录,它的上一级目录就是“/”根目录,而“/etc”当前目录就是当前目录"/etc"
mkdir | 是“make directory”用于创建目录 |
rmdir | "remove directory"用于删除目录 |
用法一般格式为:其中 -m用于指定要创建目录的权限 -p用于创建一大串级联目录
由于-m这个选项不常用,我 们这里只做了解。
mkdir [-mp][目录名称]
这个命令用的比较多可以看一下具体参数:
用得最多一般是这两个:
-r | 删除目录用的选项,类似于rmdir,但可以删除非空目录。 |
-f | 表示强制删除。不会询问是否删除,而是直接删除 |
2.10.1 查看环境变量我们用这个命令:
2.10.2增加环境变量:export PATH=$PATH:新添加的路径
$PATH是当前的路径1:路径2:路径3 ,在后面追加:新添加的路径,然后把这个新的路径集赋值给PATH本身,相当于覆盖了原PATH变量.export命令是导出变量,相当于更新PATH
PATH=$PATH:/root
如果想立刻生效,则可执行下面的语句:$source .bash_profile
2.10.3如果想要永久生效的话,需要在配置文件中修改:
vim /etc/profile
在文档最后,添加:
export PATH="目录:$PATH"
保存,退出,然后运行:
#source /etc/profile
2.10.4删除环境变量
命令行进行快速的PATH配置,仅仅在本次登录shell有效,也就是说重启后你在命令行指定的这个路径就从PATH中失效了。所以不需要过多担心。如果是在/etc/profile中写入的,则只要从文件中删除相关配置行就可以!
cp | "copy"的缩写格式为:cp[选项][来源文件][目的文件] |
cp有很多参数,用的最多的是这两个:
-r | 如果要复制一个目录,必须加-r选项 |
-i | 如果遇到一个已存在的文件,会询问是否覆盖。 |
-p | 连同档案的属性一起复制过去,而非使用预设属性; |
-a | 相当于p d r |
看一下实操效果:
mv | 是"move"的缩写,为移动的意思.mv[选项][源文件或目录]][目标文件或目录] |
例: | mv /data /tmp/ |
该命令有以下几种情况:
a.目标文件是目录,但该目录不存在 |
b.目标文件是目录,且该目录存在 |
c.目标文件是文件,且该文件不存在 |
d.目标文件是文件,但该文件存在 |
鉴于以上4个情况看一下实操:a.目标文件是目录,但该目录不存在(会把源目录重命名为给定的目标文件名)
b.目标文件是目录,且该目录存在(会把目录和文件放到该目录下)
c.目标文件是文件,且该文件不存在(会把源文件重命名为给定的目标文件名)
d.目标文件是文件,但该文件存在(这里会提示是否覆盖)
cat | 一般是查看一些文件大小比较小文件 |
tac | 这个命令一看就知道和cat相反,这个命令是从后面往前面查看 |
more | 这个 一般是查看一此文件大小比较大的文件,内容比较多 |
less | 有more就有less |
tail | 这个是查看某个文件最后面10行的内容 |
head | 这个是查看某个文件前面10行的内容 |
2.14.1上面这一节讲到文件信息的时候有7段信息,其中第一段显示的就是文件的权限信息
其中 r=4,w=2,x=1,r表示具有读权限,w表示写权限,x表示可执行的权限.这些都是文件的一般权限!我们一般用chmod对文件的权限进行更改。
chmod用于改变用户对文件/目录的读写权限,其格式为:chmod -R xyz 文件名(xyz表示数字)
2.14.2 一般我们可以通过数字的方式chmod xyz 文件名:
2.14.3 还可以通过rwx的方式去设置权限。例:对文件的组用户加上w权限:
chown | "change owner"的简写,一般是更改文件的所有者, 格式为:chown[-R]账户名文件或者chown[-R]账户名:组名 文件名 |
2.15.1 先新建一个用户usr1再把root的文件权限改为usr1:
2.15.2 没有用-R选项之前下面的权限没有继承,加了以后下面的文件也继承了user1权限
2.16.1其实默认情况下,目录的权限为755,普通文件的权限值为644,这个值是由umask决定的,默认的为0022
这个值是可以更改的,比如我们把umask值修改一下,再创建一个目录和一个文件我们再看一下默认权限有没有变化:
这个是怎么算过来的......目录的权限为rwx rwx rwx - --- -w- --x为rwx r-x rw-
2.16.2再来看一下默认的文件权限为多少:
普通文件的权限为rw- rw- rw- - --- -w- --x 为rw- r-x rw-
seq: squeue 是一个序列的缩写,主要用来输出序列化的东西
seq常见命令参数
常用命令实例:
指定分隔符 "-s" 横着输出
(py3) [root@localhost coco]# seq -s " " 5
1 2 3 4 5
(py3) [root@localhost coco]# seq -s "#" 5
1#2#3#4#5
间隔输出以3为间隔 默认是"\n"分行(从1开始间隔3输出)
(py3) [root@localhost coco]# seq 1 3 10
1
4
7
10
xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它能够将标准输入或管道中的数据转换为特定命令的命令行参数,也可以将单行或多行文本输入转换为其他格式的数据,比如单行变多行或者多行变单行。xargs的默认命令是echo,默认分隔符是空格。通过xargs的处理,换行和空白都会被替换为空格。
xargs常见命令参数
xargs:xargs的默认命令是echo,空格是默认定界符。 默认替换符号是{}
-I {}批定了替换字符串,表示文件内容,能循环按要求替换相应的参数 使用-I指定一个替换字符串{},这个字符串在xargs扩展时会被替换掉,
当-I与xargs结合使用,每一个参数命令都会被执行一次:
-n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的
-d 自定义定界符
实例:-n
(py3) [root@localhost ~]# cat {1,2,3}.txt |xargs -n 1
I
am
a
test
I
am
a
test
I
am
a
test