redhat学习笔记.docx
《redhat学习笔记.docx》由会员分享,可在线阅读,更多相关《redhat学习笔记.docx(14页珍藏版)》请在冰豆网上搜索。
redhat学习笔记
目录
一、基本命令2
1初识Redhat2
1.1目录2
1.2终端2
1.3目录命令2
2内部命令和外部命令4
3系统环境变量4
3.1一次性的修改4
3.2重启后仍有效5
二、用户和组6
1用户6
2用户组:
7
3权限8
三、硬盘分区和挂载10
1分区10
2挂载10
2.1挂载点和/etc/fstab10
其他命令12
一、基本命令
1初识Redhat
1.1目录
最大的目录:
/根目录
/bin存放可执行文件,命令。
/boot存放系统启动文件。
/dev存放设备文件什么是设备文件:
所有硬件设备当成文件。
/etc存放系统配置信息
/home普通用户家目录或者主目录
/root超级管理员root它的家目录它的主目录
1.2终端
[root@Chenzhuming~]#
用户@主机名~家目录当前工作目录
1.3目录命令
cd切换工作目录
cd../-返回上一级目录
cd.当前目录
cd !
$把上一个命令的参数做cd参数用
ls列出当前目录下的内容
ls–al列出当前目下所有内容的详细信息
ls命令列出的文件颜色表示的含义:
蓝色:
目录
绿色:
可执行文件
红色:
压缩文件
浅蓝色:
链接文件
黄色:
设备文件
pwd显示当前工作目录的路径,以/根目录开始
mkdir创建一个目录创建一个文件夹文件夹=目录
mkdirtest
mkdir/home/xiaoming/test
mkdir/home/test1/test2错误
mkdir-p/home/test1/test2递归性创建目录
mkdir-p/home/user1/user2/user3/
rmdir删除一个空目录
rm–r"file"删除每个给定的目录,以及其下所有的内容
touch创建一个文件,或修改已存在文件的时间
[root@localhost/]#cd/home/
[root@localhosthome]#touchtest.txt
[root@localhosthome]#ls
test.txt
修改已经存在文件的时间
[root@localhosthome]#ls-ltest.txt
-rw-r--r--.1rootroot09月2121:
04test.txt
[root@localhosthome]#touchtest.txt
[root@localhosthome]#ls-ltest.txt
-rw-r--r--.1rootroot09月2121:
05test.txt
cat查看文件内容
vim创建并编辑文件
按i键,进入插入模式。
退出插入模式ESC
退出并保存:
wq退出不保存:
q加!
强制执行
中文的切换ctrl+空格
cp复制path指定文件到当前目录
[root@localhosthome]#cp/home/hello.txt/mnt/将home目录里的hello.txt复制到/mnt/目录
[root@localhosthome]#pwd
/home
[root@localhosthome]#cp/etc/fstab.<复制etc目录下fstab文件到当前目录下>
[root@localhosthome]#ls
fstabtest.txt
[root@localhosthome]#cpfstab9988.txt<如果9988.txt文件不存在,则创建9988.txt文件,如果存在则覆盖>
[root@localhosthome]#ls
9988.txtfstabtest.txt
mv移动命令,用法同cp
2内部命令和外部命令
内部命令:
是指bash、shell源码里面的内置指令,就是系统自带的命令。
echocdexithistory
外部命令:
与内部命令相反,并不属于shell本身,通过软件包安装得到。
通常存放在/bin/usr/bin/sbin/usr/sbin
ftpmaills
echo$PATH
/usr/lib64/qt-3.3/bin:
/usr/local/sbin:
/usr/sbin:
/sbin:
/usr/local/bin:
/usr/bin:
/bin:
/root/bin:
/home
[root@localhost/]#typeecho<查看echo命令类型>
echoisashellbuiltin
[root@localhost/]#typels<查看ls命令类型>
lsisaliasedto`ls--color=auto'
[root@localhost/]#whichecho
/bin/echo
[root@localhost/]#echo$PATH<输出命令默认搜索路径>
/usr/lib64/qt-3.3/bin:
/usr/local/sbin:
/usr/sbin:
/sbin:
/usr/local/bin:
/usr/bin:
/bin:
/root/bin
<没有home目录>
[root@localhost/]#PATH=/usr/lib64/qt-3.3/bin:
/usr/local/sbin:
/usr/sbin:
/sbin:
/usr/local/bin:
/usr/bin:
/bin:
/root/bin:
/home<赋予PATH一个值,并将home目录添加进去。
>
3系统环境变量
Linux是一个多用户的操作系统。
每个用户登录系统后,都会有一个专用的运行环境。
通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。
用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
3.1一次性的修改
常见的环境变量:
HOME:
当前用户的主目录
PATH:
当前用户可执行文件搜索路径
LANG:
程序应该使用的默认语言
PS1:
行提示符
[root@localhosthome]#echo$HOME
/root
[root@localhosthome]#echo$PATH
/usr/lib64/qt-3.3/bin:
/usr/local/sbin:
/usr/sbin:
/sbin:
/usr/local/bin:
/usr/bin:
/bin:
/root/bin:
/home
[root@localhosthome]#echo$LANG
zh_CN.UTF-8
[root@localhosthome]#echo$PS1
[\u@\h\W]\$
[root@localhosthome]#PS1='[\u\H\w]*_*'<修改命令提示符显示内容>
[rootlocalhost.localdomain/home]*_*
<这样的修改是一次性的,重新打开一个终端后失效>
3.2重启后仍有效
环境变量修改后,重启系统仍然生效必须修改配置文件:
全局设置文件:
/etc/profile/etc/bashrc
用户设置文件:
~/.bashrc~/.bash_profile<~表示当前用户的家目录>
实验:
[root@localhost~]#useraddjeck<增加一个jeck用户>
[root@localhost~]#passwdjeck<给jeck用户设置密码>
[root@localhost~]#su-jeck<切换到jeck用户下>
[jeck@localhost~]$id<显示当前用户信息>
uid=500(jeck)gid=500(jeck)组=500(jeck)
环境=unconfined_u:
unconfined_r:
unconfined_t:
s0-s0:
c0.c1023
[jeck@localhost~]$vim~/.bash_profile<在当前用户的家目录下编辑.bash_profile文件>
<在.bash_profile文件里添加一行信息exportPS1='[\u\H\w]@_@'>
[jeck@localhost~]$cat~/.bash_profile<显示当前用户家目录下.bash_profile文件内容>
#.bash_profile
#Getthealiasesandfunctions
if[-f~/.bashrc];then
.~/.bashrc
fi
#Userspecificenvironmentandstartupprograms
PATH=$PATH:
$HOME/bin
exportPATH
exportPS1='[\u\H\w]@_@'<说明添加信息成功>
[jeck@localhost~]$.~/.bash_profile<执行下.bash_profile文件注意前面是个点>
[jecklocalhost.localdomain~]@_@
修改主机名
[root@SAI桌面]#vim/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=SAI红色字处修改为要改的主机名
[root@SAI桌面]#vim/etc/hosts
127.0.0.1SAISAIlocalhost4localhost4.localdomain4红色字处修改为要改的主机名
:
:
1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6
[root@SAI桌面]#reboot修改后重启机器
suuname切换到uname用户
su和su–的区别
[jecklocalhost.localdomain~]@_@suroot
密码:
[rootlocalhost.localdomain/home/jeck]@_@
[rootlocalhost.localdomain/home/jeck]@_@su-root
[root@localhost~]#
单纯使用su切换成为root的身份,读取的变数设定方式为non-loginshell的方式,这种方式很多原本的变数不会被改变,若要完整的切换到新使用者的环境,必须要使用‘su-username’或‘su-lusername’,使用login-shell方式。
才会连同PATH/USER/MAIL等变数都转成新使用者的环境;因此使用suuserName方式有时会出问题,不过有些系统当输入相关命令时,会把某些环境变量替换成自己的。
但为保证命令的正确性使用su-usrname的形式为好。
如果仅想要执行一次root的指令,可以利用‘su--c"指令串"’的方式来处理;
二、用户和组
1用户
idusername查看username用户
[root@SAI~]#idroot
uid=0(root)gid=0(root)组=0(root)
useradd选项用户名
-ccomment指定一段注释性描述。
-d目录指定用户主目录,如果此目录不存在,则同时使用-m选项,能创建主目录。
-g用户组指定用户所属的用户组。
-G用户组,用户组指定用户所属的附加组。
-sShell文件指定用户的登录Shellbash。
-u用户号指定用户的用户号,如果同时有-o选项,则能重复使用其他用户的标识号。
[root@localhost/]#useradd-d/usr/harry-mharry<添加harry用户到/usr/harry>
[root@localhost/]#idharry<查看Harry用户的ID号>
uid=501(harry)gid=501(harry)组=501(harry)
userdel选项用户名
常用的选项是-r,他的作用是把用户的主目录一起删除。
[root@localhost/]#userdel-rharry<删除Harry用户并删除了它的主目录及家目录/usr/harry>
usermod选项用户名
选项包括-c,-d,-m,-g,-G,-s,-u,-o等
-l新用户名
这个选项指定一个新的账号,即将原来的用户名改为新的用户名
usermod–lrosejeck将jeck改成rose
passwd选项用户名
-l锁定口令,即禁用账号。
-u口令解锁。
-d使账号无口令。
-f强迫用户下次登录时修改口令.
2用户组:
每个用户都有一个用户组,Linux下的用户属于和他同名的用户组,这个用户组在创建用户时同时创建。
groupadd选项用户组<添加用户组>
-gGID指定新用户组的组标识号(GID)。
-o一般和-g选项同时使用,表示新用户组的GID能和系统已有用户组的GID相同。
修改用户组:
groupmod选项用户组
常用的选项有:
-gGID为用户组指定新的组标识号。
-o和-g选项同时使用,用户组的新GID能和系统已有用户组的GID相同。
-n新用户组将用户组的名字改为新名字。
/etc/passwd文件:
Linux系统中的每个用户都在/etc/passwd文件中有一个对应的记录行,他记录了这个用户的一些基本属性。
cat/etc/passwd
root:
x:
0:
0:
Superuser:
/:
daemon:
x:
1:
1:
Systemdaemons:
/etc:
注:
root:
x:
0:
0:
root:
/root:
/bin/bash
用户名:
加密密码:
UID:
GID:
描述性:
家目录:
用哪个shell
/etc/group文件:
组名:
口令:
组标识号:
组内用户列表
3权限
关于权限:
d代表这个是目录
-代表这个是文件
d---------
drwxrwxrwx完整的权限
drwx------
目录读写执行无权限无权限
-rw-r--r--
文件读写无执行权限读无写无执行读无写无执行
文件所有者组成员其他人
a.txt所有者root组root用户xiaoming其他人
ugo
chmod设置文件或者目录的权限
命令格式:
chmod[ugoa][+-=][rwx]文件或者目录
选项:
-R递归修改子目录
[root@localhosthome]#touchtest.txt
[root@localhosthome]#chmodugo+rtest.txt
[root@localhosthome]#chmodugo+rwxtest.txt
[root@localhosthome]#chmodo-wxtest.txt
[root@localhosthome]#chmodu+w,go-wtest.txt
[root@localhosthome]#chmodu=rwtest.txt
chown改变指定文件的用户和用户组
命令格式:
chown属主文件
chown:
属组文件或者目录
chown属主:
属组文件或者目录
chgrp改变文件或者目录所属的组
命令格式:
chgrp属组文件或者目录
选项-R递归改变子目录所属组
[root@localhosthome]#touchtest.txt
[root@localhosthome]#ls-l
-rw-r--r--.1rootroot010月623:
00test.txt
drwx-----x.4xiaolixiaoli409610月621:
59xiaoli
[root@localhosthome]#chown:
xiaomingtest.txt
[root@localhosthome]#ls-l
-rw-r--r--.1rootxiaoming010月623:
00test.txt
drwx-----x.4xiaolixiaoli409610月621:
59xiaoli
[root@localhosthome]#su-xiaoming
[xiaoming@localhost~]$vim/home/test.txt不可以编辑
[xiaoming@localhost~]$exit
logout
[root@localhosthome]#chmodg+w/home/test.txt
[root@localhosthome]#ls-l
-rw-rw-r--.1rootxiaoming010月623:
00test.txt
drwx-----x.4xiaolixiaoli409610月621:
59xiaoli
[root@localhosthome]#su-xiaoming
[xiaoming@localhost~]$vim/home/test.txt可以编辑
[root@localhost~]#su-xiaoming
[xiaoming@localhost~]$cd/home/xiaoli
-bash:
cd:
/home/xiaoli:
权限不够
[root@localhosthome]#ls-l
drwx------.4xiaolixiaoli409610月621:
59xiaoli
[root@localhosthome]#chmodo+x/home/xiaoli/
[root@localhosthome]#ls-l
drwx-----x.4xiaolixiaoli409610月621:
59xiaoli
[xiaoming@localhost~]$cd/home/xiaoli
[xiaoming@localhostxiaoli]$ls-l
ls:
无法打开目录.:
权限不够
三、硬盘分区和挂载
1分区
fdisk-l查看硬盘的分区情况
fdisk硬盘名给硬盘分区
Command(mforhelp):
n
Youmustdeletesomepartitionandaddanextendedpartitionfirst
创建4个主分区之后,再想创建一个分就报错。
硬盘分区:
sda1sda2sda3sda4主分区只能有4个
主分区扩展分区逻辑分区
主分区+扩展分区:
编号从1~4
逻辑分区:
编号从5开始
扩展分区不能被系统识别,不用,必须化成逻辑分区才能用。
windows分区格式化成NTFS格式FAT32格式exFAT格式
linux分区格式化成ext2ext3ext4
mkfs.ext4/dev/sdb1格式化分区为ext4格式
挂载这个分区到某个目录下面才能使用,存放文件。
mount/dev/sdb1/mytest挂载某个分区到指定目录
df-TH查看分区挂载情况
2挂载
2.1挂载点和/etc/fstab
fstab(/etc/fstab)是Linux下比较重要的配置文件,它包含了系统在启动时挂载文件系统和存储设备的详细信息。
fstab中内容:
设备文件挂载点类型mountdumpfsck
UUID=b335d963-36ff-47c7-b299-afaf727c546d/ext4defaults11
UUID=b1ee3f60-b3a6-49ab-a18d-aefe4a7f3f80/bootext4defaults12
UUID=1f721e88-e8a9-4a18-87ea-510af30570efswapswapdefaults00
tmpfs/dev/shmtmpfsdefaults00
devpts/dev/ptsdevptsgid=5,mode=62000
sysfs/syssysfsdefaults00
proc/procprocdefaults00
说明:
(左→右)
设备文件
挂载点
文件系统类型
mount参数(包含defaults和auto的行会在开机时自动加载)
dump参数(0表示用不备份、1表示每天备份、2表示每两天备份一次)
fsck顺序(0表示忽略、123表示检查顺序,一般1被根文件系统使用,网络文件系统与光驱等设备应该被忽略)
文件系统类型:
1、ext2与ext3文件系统ext是第一个专门为Linux设计的,称为扩展文件系统。
2、swap文件系统,用于Linux的交换分区。
3、vfat文件系统,是linux对dos,windows系统下的FAT(包含Fat16和Fat32)文件系统的统称。
4、NFS文件系统,即网络文件系统,用于在UNIX系统间通过网络进行文件共享,用户可将网络中的NFS服务器提供的共享目录挂载到本地文件目录中,从而实现操作和访问NFS文件系统中的内容。
5、ISO9660文件系统,光盘和光盘ISO映像文件。
6、NTFS文件系统。
mount命令挂载文件系统
命令格式:
mount[-tvfstype][-ooptions]devicedir
1、-tvfstype指定文件系统的类型,通常不必指定。
mount会自动选择正确的类型。
常用类型有:
光盘或光盘镜像:
iso9660
DOSfat16文件系统:
msdos
Windows9xfat32