RHEL7.0
多用户多任务的操作系统
一切皆文件
用多个简单的命令来解决一个复杂的任务
Fedora
wine
vmware+xshell
FAT
RH124 RH134 RHCSA 红帽认证系统管理员 2.5H
RH254 RHCE 红帽认证系统工程师 4H
linux文件系统是一棵倒置的单根系的树形结构:
/
文件系统的入口,最高一级目录;
/bin:基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等。
这个目录中的文件都是可执行的,一般的用户都可以使用。
(c语言写的程序,经过编译器编译后的程序)
/sbib:大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,
普通用户无权限执行这个目录下的命令;linux使用vim编辑文件
/boot 包含Linux内核及系统引导程序所需要的文件,比如 vmlinuz initrd.img
文件都位于这个目录中。
/dev 设备文件存储目录,比如声卡、磁盘... ... 是Linux文件系统的一个闪亮的特性 -所有对象都是文件或目录。
/root Linux超级权限用户root的家目录;
/
home 普通用户默认存放目录 Linux 是多用户环境,所以每一个用户都有一个只有自己可以访问的目录
(当然管理员也可以访问)。它们以 /home/username 的方式存在。
/etc 存放系统程序或者一般工具的配置文件。
/var 这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,
/var下有/var/log 这是用来存放系统日志的目录。
/tmp 临时文件目录,有时用户运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。
/var/tmp目录和这个目录相似。许多程序在这里建立lock文件和存储临时数据。
有些系统会在启动或关机时清空此目录。
/lost+found 在ext2或ext3、ext4文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。
当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。 有时系统发生问题,
有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
/mnt 这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。有时我们可以把让系统开机自动
挂载文件系统,把挂载点放在这里也是可以的。比如光驱可以挂载到/mnt/cdrom 。
/net、/misc 、 /srv
/media 即插即用型存储设备的挂载点自动在这个目录下创建,比如USB盘系统自动挂载后,会在这个目录下产生一个目录 ;
CDROM/DVD自动挂载后,也会在这个目录中创建一个目录,类似cdrom 的目录。这个只有在最新的发行套件上才有
/opt 表示的是可选择的意思,有些
软件包也会被安装在这里,也就是自定义软件包
有些我们自己编译的软件包,就可以安装在这个目录中;通过源码包安装的软件
/
proc 操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。
/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统。这是系统中极为特殊的一个目录,
实际上任何分区上都不存在这个目录。它实际是个实时的、驻留在内存中的文件系统。
/sys 操作系统运行时,本机的各类信息记录在这个目录下,也是一个虚拟文件系统
/lib 库文件存放目录这里包含了系统程序所需要的所有共享库文件,类似于 Windows 的共享库 DLL 文件。
/lib64 64bit的共享库文件
/usr 这个是系统存放程序的目录,比如命令、帮助文件等。这个目录下有很多的文件和目录。
当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。
/cgroup 系统资源分配的配置目录
/
selinux 安全性增强Linux,是一个存放selinux策略的目录,虚拟文件系统
命令:
终端分为:虚拟终端和本地tty终端
图形下开启的终端、远程工具发起的连接窗口都是虚拟终端
从图形界面切换到终端: CTRL-ALT-F2`6
物理终端之间切换: ALT-F2`6
从物理终端回到图形: ALT-F1 OR ALT-F7
tty 显示所在的终端名称
终端提示符:
[root@host ~]#
[当前登录账号名称@当前登录的主机名称的短写 用户当前所在目录]当前登录的用户身份
#表示是超级管理员root
$表示是普通系统用户
whoami 查看当前登录的用户名称
hostname -s 当前主机名的短写
hostname 完整的主机名
pwd 当前所在的工作目录
关机命令:
poweroff
halt
shutdown -h now
init 0
重启命令:
reboot
shutdown -r now
init 6
[root@host ~]# makewhatis -U 更新whatis数据库
[root@host ~]# whatis xxx 查询某个命令的功能
命令 选项... 参数...
<>
[]
a|b -a|-b
-abc
;
命令1;命令2 多条命令分别执行,相互之间没有影响
ctrl-c 终止命令的执行
\ 命令强制换行,或者是脱意字符
"" 双引号中间的内容是一个整体字符串,特殊字符仍然具有特殊含义
‘‘ 单引号中间的内容是一个整体字符串,所有特殊字符都失去特殊含义
·· 反单引号表示里面的命令执行完毕,会替换目标位置的字符串
$() -----
基本操作命令:
一、
cd change
the working directory
cd /usr/share/doc
cd ~
cd -
cd ..
cd
路径:相对路径和绝对路径
写shell脚本时必须是绝对路径,日常操作可以使用相对路径
绝对路径的路径名都是以/开头
相对路径的路径名都不是/开头
二、
ls list directory contents
-
a 列出所有文件,包括隐藏的
-l 列出文件的详细信息
drwxr-xr-x. 2 root root 4096 Sep 27 15:36 dir1
-rw-r--r--. 1 root root 0 Sep 27 15:36 file1
第一列,第一个字符:文件类型:
d 目录
- 普通文件
l 链接文件
b 块设备文件
c 字符设备文件
p 管道文件
s socket文件
第一列,2-10字符,代表文件权限,其中,九位字符中,每三个一段,分三段
第一段三位,表示文件所有者的权限
第二段三位,表示文件所属组的权限
第三段三位,表示其他人具有的权限
第三列,数字表示文件的数量
第四列,文件所属用户的用户名称
第五列,表示文件所属分组的分组名称
第六列,表示文件大小
最后一列,表示文件名称
在其中最后一列和第六列之间的内容,表示文件的修改或者创建日期
通过颜判断文件类型:
灰白:普通文件
蓝: 目录
红: 压缩包
粉红:socket文件
黄: 设备文件
暗黄: 管道文件
浅蓝:链接文件
通过命令判断文件类型:file
-d 指明查看的对象是目录本身
-R 递归显示文件内容
三、
mkdir create a directory
-p 递归创建目录
mkdir dir1
mkdir dir2 dir3 dir4
mkdir test_{1,2,3,4}
mkdir -p dir1/dir2/dir3/dir4/dir5/dir6
四、
touch create empty file
五、
rm remove files or directories
-
r 递归删除目录
-f 强制删除,不交互
rm -r dir2
rm -rf dir1
rm -rf dir1/dir2/dir3
rm -f file1
\rm file2
六、
cp copy files and directories
-r 递归复制
复制单个文件或者目录
1. cp file1 file2
2. cp -r dir1 dir2
复制多个文件或者目录
cp -r file* test* dir* dst/
把文件或者目录复制到目标位置并且重命名
cp file /dst/new_file
cp -r dir2 dir1/new_dir
从远程往本地复制文件或目录
cp /root/install.log .
cp -r /home .
cp /root/install.log /tmp/test/install.log.2
cp /root/install.log ./install.log.3
cp -r /home ./home.1
从本地往远程复制
cp -r file1 home /tmp
cp -r home.1 install.log* ../
七、
mv move (rename) files
重命名:
mv test test3
mv home home.2
剪切:
1.从本地到远程剪切
mv test1 /var/tmp/
mv home.1/ /var/tmp/
2.从远程到本地剪切
mv test1 /var/tmp/
mv /var/tmp/home.1 .
剪切并且重命名:
mv test1 /var/tmp/test_hello
mv home.1 /var/tmp/home_hello
。。。。。
day3
vim 文本编辑器
cat 读取文本文件内容
nano 、gedit(图形)
vi 、gvim(图形)
insert|i 光标之前插入
I 光标所在行的行首插入
a 光标之后插入
A 光标所在行的行末插入
o 在光标所在行下面新插入一行
O 在光标所在行上面新插入一行
s 删除光标所在位置的单个字符,并进入插入模式
S 删除光标所在位置的整行字符,并进入插入模式
普通模式下
u 撤销
ctrl-r 反撤销
ctrl-g 显示被vim编辑文本文件的信息
ZZ 保存并退出
G 定位文件末尾行
gg 定位文件的首行
^ Home 定位光标所在行的行首
$ End 定位光标所在行的行尾
5h 左移五个字符
5l 右五个字符
5j 下移五行
5k 上移五行
5yy 复制光标所在行向下连续五行
5dd 删除光标所在行向下连续五行
p(小写) 粘贴缓冲区的内容到光标所在行的下一行
P(大写) 粘贴缓冲区的内容到光标所在行的上一行
dG 删除光标当前到文件末尾处的内容
dgg 删除光标当前到文件行首处的内容
d$ 删除光标位置到行尾的所有内容
d^ 删除光标位置到行首的所有内容
30G 直接定位文件的第30行
r 替换光标所在处的一个字符
R 替换光标所在处往后的一段内容
ctrl-w,s 水平分割窗体显示文件内容
ctrl-w,v 垂直分割窗体显示文件内容
ctrl-w,h|j|k|l 左、下、上、右移动光标焦点在多个窗口中
v 光标经过的字符被选择
V 光标经过的行被选择
ctrl-v 光标经过的选择部分是一个矩形
ctrl-v,I,输入# 在被选择的行首加入#号注释
ctrl-v,delete 删除选择的内容
ctrl-v,y 复制选择的内容
ctrl-v,d 删除选择的内容
尾行模式
w 保存
q 退出
wq 保存并退出
q! 放弃修改退出
w! 强制保存
wq!强制保存并退出
x 保存并退出
e! 撤销文件到刚打开的状态,不会退出当前编辑的文件
set nu
set nonu
set ai
set noai
set hlsearch
set nohls
:50 直接定位第50行
:w NewfileName 当前文件另存为
:n1,n2 w Newfile 从n1到n2的连续内容另存为
:!command 不退出当前vim编辑的文件,直接执行系
统中的命令
:
n1 !cat / 把cat读取的内容直接覆盖到指定行号上
:r / 把cat读取的内容直接覆盖到指定行号上
/keyword 搜索指定的内容
搜索到指定的内容后n下一个关键字,N上一个关键字
?keyword 搜索指定的内容
搜索到指定的内容后N下一个关键字,n上一个关键字
:%s/ext4/xfs/g 在整个文件中搜索ext4,并把搜到所有的内容,都替换成xfs
:%s/ext4/xfs/gi 在整个文件中搜索ext4(忽略大小写),并把搜到所有的内容,都替换成xfs
:%s/ext4/xfs/ 每一行上面只进行一次替换
:n1,n2 s/ext4/xfs/g 在从n1到n2之间搜索到的内容全部替换
获取帮助:
自学:鸟哥私房菜(服务器版+基础版) 、视频
故障解决:网络搜索(google+百度)突发性
论坛 常规学习、拓展
使用中(无网络):
系统自带 F1
系统----->文档
firefox file:///usr/share/doc
makewhatis -U ---->whatis---> command --help|-h ----->man command ----->info or pinfo
history
history -c
history -w
history -r
day4:
Redirecting Output to a File or Program
0 Standard input
1 standard output
2 standard error
& standard output and standard error
su - student
[student@demo ~]$ find /etc -name passwd 1&
[student@demo ~]$ find /etc -name passwd 2&
覆盖重定向 >
追加重定向 >>
输入重定向 <
输入终止符 <<
Constructing pipelines: |
command1 | command2 | command3
1mand1必须能够产生输出
2mand2必须能够接受输入
3.错误不能通过管道传递
tee
write username ttyname
wall messages
mesg y|n
用户管理:
account 用户名 ID userID UID
student --- uid
超级用户 root UID=0
系统账号 运行程序用 1=< UID =<499
普通账号 管理系统用 UID > 500
账号信息:/etc/passwd
一行是一条账号信息,不允许重复,不允许有空白行
account:password:UID:GID:GECOS:Home directory:shell
root: x : 0 : 0 : root: /root : /bin/bash
密码信息:/etc/shadow
man shadow:
root:$1$OqhA/FYh$GStXMa2A2CGdKSYwe5CbI1:16355:0:99999:7:::
添加用户的时候,系统会创建同名分组作为该用户的私有组
用户名和组名称相同,uid和gid尽可能相同
group 组名称 ID groupID GID
student --- gid
超级用户组 GID=0
系统组 1=< GID =<499
普通组 GID > 500
/etc/group 分组信息
group_name:password:GID:user_list
/etc/gshadow 分组密
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论