1.下载VMware
1.查找相匹配的VMware版本,然后按照步骤安装,详细过程参见公众号:软件科技汇
2.下载过程中使用的iso文件国内有两个镜像源。
阿里巴巴开源镜像站
清华镜像源
centos 7镜像(iso)下载图文教程(超详细)_centos7下载-CSDN博客
嘿 安装好之后就遇到问题了,尚未解决。见提出问题
centos7安装好之后界面是这个样子的_运维-CSDN问答
anaconda-ks.cfg 是一个Kickstart配置文件,它包含了安装Linux系统时所需的各种配置信息。这个文件在Linux发行版的自动化安装过程中起着重要的作用,特别是在使用Anaconda安装程序时。
具体来说,anaconda-ks.cfg 文件可以包含以下信息:
安装源:指定从哪个位置获取操作系统和软件包的安装源。
分区布局:定义磁盘分区的方式和大小,包括根目录、交换分区、引导分区等。
软件包选择:列出要安装的软件包和包组,以及要排除的软件包。
用户管理:设置root用户密码、创建其他用户等。
网络设置:配置网络接口,包括IP地址、子网掩码、网关、DNS等。
系统配置:设置时区、键盘布局、语言等系统级别的配置。
此外,anaconda-ks.cfg 文件还支持使用脚本来定制安装过程,这使得管理员能够自动化地完成系统的安装和配置工作。
在PXE(Preboot Execution Environment)配置中,anaconda-ks.cfg 文件也扮演着重要的角色。当通过PXE启动计算机进行自动化安装时,安装程序会读取这个配置文件来指导安装过程。
总之,anaconda-ks.cfg 是一个非常重要的配置文件,它使得Linux系统的安装和配置过程更加自动化和灵活。
如果在CentOS 7安装完成后,在根目录(/)或用户主目录(~)下只显示anaconda-ks.cfg文件,这通常意味着安装过程中可能有一些特殊情况或配置。以下是一些可能的原因和解释:
最小安装:如果你在安装CentOS 7时选择了“最小安装”或类似的选项,那么系统可能只会安装最基本的软件包和配置。在这种情况下,anaconda-ks.cfg可能是唯一留下的配置文件,因为它与安装过程相关。
目录查看问题:你可能只是查看了根目录或用户主目录,而没有查看其他目录。CentOS 7安装后,通常会有多个目录和文件,如/etc、/bin、/usr等。你可以使用ls /命令来查看根目录下的所有文件和目录。
文件丢失或损坏:在某些情况下,安装过程中可能会出现错误,导致文件丢失或损坏。然而,如果系统能够正常启动并显示anaconda-ks.cfg文件,那么这种可能性相对较小。
自定义安装:如果你在安装过程中进行了自定义配置,可能会导致某些目录或文件被删除或移动。检查你的安装日志或配置文件,看看是否有任何自定义设置可能影响了文件的存在。
为了解决这个问题,你可以尝试以下步骤:
使用ls /命令查看根目录下的所有文件和目录,确认是否只有anaconda-ks.cfg文件。
使用df -h命令查看磁盘使用情况,确保磁盘空间没有被完全占用。
检查安装日志或配置文件,看看是否有任何自定义设置可能影响了文件的存在。
如果可能的话,尝试重新安装CentOS 7,确保选择适当的安装选项和软件包。
在CentOS 7中,如果系统默认只安装了命令行界面(CLI),但你想将其转化为图形界面(GUI),你可以按照以下步骤操作:
检查是否已经安装了图形界面环境:
使用命令 sudo yum grouplist 来检查已安装的软件包组列表。在输出结果中,查找包含“GNOME Desktop”或“KDE Plasma Workspaces”等关键词的条目。
安装图形界面环境:
如果系统中没有安装图形界面环境,你可以使用命令 sudo yum groupinstall "GNOME Desktop" 来安装GNOME桌面环境。
修改系统默认运行级别(如果需要):
使用命令 sudo systemctl set-default graphical.target 来将系统默认启动模式设置为图形化模式。
重启系统:
使用命令 sudo reboot 或 sudo systemctl reboot 来重启你的CentOS 7系统。
登录图形界面:
在重启后的登录界面,选择“GNOME”或你安装的其他图形界面环境,然后输入你的用户名和密码进行登录。
从图形界面切换回命令行界面(如果需要):
如果你想从图形界面切换回命令行界面,可以按下组合键 Ctrl+Alt+F2(或者F3,F4等),以进入不同的虚拟终端。然后使用 Ctrl+Alt+F1(或者F7)切换回图形界面。
请注意,这些步骤假设你已经以root用户或具有足够权限的用户身份登录。如果你以普通用户身份登录,可能需要使用 sudo 命令来执行需要管理员权限的操作。
好吧 以上问题没有解决!之后再研究,但我将命令界面的卸载了重新安装了图形界面,还是图形界面的系统香!
2.处理问题方式
Linux自己的文件数据: /usr/share/doc
TLDP:http://www.tldp.org/
3.系统操作方式
ctrl+alt+f1 进入图形接口桌面。
ctrl+alt+f2_f6:进入文字tty2-tty6终端机
linux中root的提示字符为#,一般身份用户提示字符为$
一般身份用户
root用户
3.1下达命令:
[test@ ~]$ command [-options] parameter1 parameter2
指令 选项 参数1 参数2
①第一个被输入的数据绝对是指令或者可执行文件。
②空格是很重要的字符,无论空格几位都会被识别为1位。
③指令太长时使用反斜杠“\”来跳脱,使指令连续到下一行。
④区分大小写
3.2基础指令操作
1.date(日期)
date +%Y/%m/%d %H/%M
2.cal(日历)
cal [month][year]
3.bc(计算器)
平常是没有小数的,若要出现小数,则要输入scale=number!
3.3重要热键
tab:命令补齐和文件补齐
- 接在一串命令的第一个字的后面为命令补齐
- 接在一串命令的第二个字的后面为文件补齐
ctrl+C:中断目前程序
ctrl+D:键盘输入结束
shift+PGUP/PGDOWM:往前翻页/往后翻页
3.4求助指令
1. --help
2.man page
man date
3.info page
4.在/usr/share/doc
3.5 nano编辑器使用
4.linux的文件权限与目录配置
linux文件中可存取的身份为3种:owner/group/others,三种身份各有read/write/execute等权限。
组件 | 内容 | 迭代物件 | r | w | x |
文件 | 详细资料data | 文件文件夹 | 读到文件内容 | 修改文件内容 | 执行文件内容 |
目录 | 档名 | 可分类抽屉 | 读到档名 | 修改档名 | 进入改目录的权限(key) |
4.1使用者和群组
linux账号存在etc/passwd中,密码存在etc/shadow中,群组存在etc/group中。
4.2文件属性
dr-xr-x---. 16 root root 4096 5月 18 15:58 .
dr-xr-xr-x. 17 root root 224 5月 9 22:14 ..
-rw-------. 1 root root 1733 5月 9 22:19 anaconda-ks.cfg
-rw-------. 1 root root 296 5月 18 15:58 .bash_history
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 12月 29 2013 .bashrc
drwx------. 18 root root 4096 5月 11 23:00 .cache
drwxr-xr-x. 14 root root 4096 5月 11 22:59 .config
-rw-r--r--. 1 root root 100 12月 29 2013 .cshrc
drwx------. 3 root root 25 5月 9 22:36 .dbus
-rw-------. 1 root root 16 5月 9 22:38 .esd_auth
-rw-------. 1 root root 1240 5月 11 22:56 .ICEauthority
-rw-r--r--. 1 root root 1781 5月 9 22:37 initial-setup-ks.cfg
drwx------. 3 root root 19 5月 9 22:38 .local
drwx------. 5 root root 66 5月 11 22:39 .mozilla
drwxr-----. 3 root root 19 5月 11 23:05 .pki
-rw-r--r--. 1 root root 129 12月 29 2013 .tcshrc
-rw-------. 1 root root 120 5月 18 15:58 .xauth5BN4ww
drwxr-xr-x. 2 root root 6 5月 9 22:38 公共
档案类型权限. 连接数 档案所有者 档案所在群组 档案容量 档案最终被修改时间 档案名
第一栏(文件的类型和权限):
第一个字符:
d | 目录 |
- | 文件 |
l | 连结档 |
b | 配置文件里面的可供存储的接口设备 |
c | 配置文件里面的串行端口设备 |
剩下9个字符:3个为1组,第一组为文件拥有者可具备的权限owner;第二组为加入此群组账户的权限group;第三组为非本人非群组的权限others。
第二档:表示多少档名连结到此节点
第三档:本文件或本目录的账户拥有者
第四档:文件所属的群组
第五档:文件的容量,默认单位为byte
第六档:文件最近的修改日期
第七档:文档的档名
4.3改变文件属性和权限
1.chgrp:改变文件所属群组
chgrp -R 目录/文件名
-rw-------. 1 root users 1733 5月 9 22:19 anaconda-ks.cfg
[root@192 ~]# chgrp root anaconda-ks.cfg
-rw-------. 1 root root 1733 5月 9 22:19 anaconda-ks.cfg
2.chown:改变文件拥有者
chown -R 账户名称 文件/目录
chown -R 账户名称:组名 文件/目录
-rw-r--r--. 1 root root 1781 5月 9 22:37 initial-setup-ks.cfg
[root@192 ~]# chown bin initial-setup-ks.cfg
-rw-r--r--. 1 bin root 1781 5月 9 22:37 initial-setup-ks.cfg
[root@192 ~]# chown root:root initial-setup-ks.cfg
-rw-r--r--. 1 root root 1781 5月 9 22:37 initial-setup-ks.cfg
3.chmod:改变文件的权限
数字类型改变文件权限:
r:4,w:2,x:1
chomd -R xyz 文件名或目录名
xyz表示数字,x为owner y为group z为others
-rw-r--r--. 1 root root 176 5月 18 17:06 .bashrc_test
[root@192 ~]# chmod 777 .bashrc_test
-rwxrwxrwx. 1 root root 176 5月 18 17:06 .bashrc_test
符号类型改变文件权限
chmod | u(user) g(group) o(others) a(all) | +(加入) -(除去) =(设定) | 文件或目录 |
4.4权限意义
操作动作 | /dir1 | /dir1/file1 | /dir2 | 重点(均为最小权限) |
读取file1内容 | x | r | - | 进入/dir1才能读取文件 |
修改file1内容 | x | rw | - | 进入/dir1且修改file1 |
执行file1内容 | x | rx | - | 进入/dir1且执行file1 |
删除file1内容 | wx | - | - | 进入/dir1且具有目录修改权限即可 |
将file1内容复制到/dir2 | x | r | wx | 能读取flie1且能修改dir2内的数据 |
4.5文件类型和扩展名
*.sh | 脚本或批处理文件 |
*.Z,*.tar,*.tar.gz,*.zip,*.tgz | 压缩文件 |
*.html,*.php | 网页相关文件 |
/(root,根目录) | 与开机系统有关 |
/usr | 与软件安装/执行有关 |
/var | 与系统运作有关 |
/etc | 系统的所有配置文件 |
/boot | 开机配置文件 |
/usr/bin、/bin | 执行档 |
/usr/sbin、/sbin | 系统管理员常用的指令集 |
/dev | 所有系统配置文件的目录 |
/var/log | 系统注册表文件 |
/run | 将经常变动的项目移动到内存暂存,不占实际内存 |
4.6绝对路径和相对路径
绝对路径:由根目录(/)开始写起的文件名或者目录名。
相对路径:现对于目前路径的文件名写法。反正不是开头为/就属于相对路径。
5.linux的文件与目录管理
5.1目录的相关操作
- cd(变换目录)命令:
cd [相对命令和绝对命令]
. 此层目录
.. 上一层目录
- 前一个工作目录
~ 目前用户的所在的家目录
~test 表示text用户的家目录
- pwd(显示目前所在目录)命令:
pwd [-P]
- mkdir(新建目录)命令
mkdir [-mp] 目录名称
m 配置文件权限
p 帮助直接将所需要的目录递归建立起来
- rmdir(删除目录)命令
rmdir [-p] 目录名称
5.2环境变量
[root@192 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[test@192 /]$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/test/.local/bin:/home/test/bin
5.3文件目录管理
- ls:文件与目录的检视
ls [-aAdfFhilnrRSt] 文件名或目录名称
ls [--color={never,auto,always}] 文件名或者目录名称
ls [--full-time] 文件名或者目录名称
-a :显示全部文件,包括.,..
-d :进列出目录本身,而不是列出目录里的文件数据
-l : 长数据串行出,包含文件的属性和权限等数据
-r : 排序结果反向输出
--color=never :不依据文件特性给于颜色显示
--color=always : 显示颜色
--color=auto :自行依据设定显示颜色
--full-time:完整时间模式输出
- cp:复制
cp [-adfilprsu] 来源文件(source) 目标文件(destination)
cp [options] source1 source2 source3... directory
-a:相当于-dr --preserve=all
-i;若目标文件已经存在,在覆盖时会询问动作的进行
-p:连同文件的属性一起复制,而且使用默认属性(备份常用)
-r:递归复制,用于目录的复制行为
-l:进行硬式连结,而非复制文件本身
-s:快捷方式
-u:目标文件比来源文件旧才会更新,或者目标文件不存在才会更新
--preserve=all:除了-p的权限相关参数外,还有SELinux的属性、links、xattr等
注意:source两个以上后,directory已一定目录才行
- rm:移除文件以及目录
rm [-fir] 文件或目录
-f:force,忽略不存在的文件,不会出现警告讯息
-i:互动模式,删除前会询问使用者是否动作
-r:递归删除,常用于目录删除
- mv:移动文件与目录
mv [-fiu] source destination
mv [options] source1 source2 source3.. directory
-f:强制
-i:询问
-u:若文件已存在则更新
- basename:取得路径的文件名
- dirname:取得路径的目录名
5.4文件内容查阅
- 直接检视文件内容:
cat:由第一行开始显示文件内容
cat [-AbEnTv]
-A:相当于-vET的整合
-n:打印出行号,连同空白行也会有行号,与-b的选项不同
-b:打印出行号,空白行不会有行号
tac:反向列示
nl:添加行号打印
nl [-bnw] 文件
-b:指定行号指定的方式
-b a:不论是否为空行,同样列出行号
-b t:如果有空行,空行那一列不要列出行号
-n:列出行号表示的方法
-n ln:行号在屏幕的最左方显示
-n rn:行号在自己字段的最右方显示,且不加0
-n rz:行号在自己字段的最右方显示,且加0
-w:行号字段的占用的字符数
- 可翻页检视
more:一页一页翻动
空格:向下翻页
回车:向下翻一行
/字符串:向下搜索字符串
:f:显示文件名以及目前显示的行数
q:退出
b/ctrl+b:往回翻页
less:一页一页翻动
空格:向下翻动一页
pagedown:向下翻动一页
pageup:向上翻动一页
/字符串:向下搜索字符串
?字符串;向上搜索字符串
n:重复前一个搜寻
N:反向重复前一个搜寻
g:前进资料的第一行
G:前进到资料的最后一行
q:退出
head:取出前面几行
head [-n number] 文件
-n:接数字,代表前几行
默认显示10行
tail:取出后面几行
tail [-n number] 文件
-n:后接数字,表示几行
-f:持续侦测后面所接的档名,直到识别ctrl+c才停止
默认10行
- 非纯文本文档:
od:(不太理解什么意思,需要后期巩固)
od [ -t TYPE] 文件
-t:后面可接各种类型的输出
a :默认字符输出
c :使用ASCII字符输出
d[size]:利用十进制来输出数据
f[size]: 利用浮点数来输出数据
0[size]:利用八进制来输出数据
x[size]:利用十六进制来输出数据
touch:修改文件时间或建置新档
ls当中有三个主要的变动时间:
- mtime:文件内容输出变更时间
- ctime:文件状态更改后更新这个时间
- atime:文件的内容被取用就更新这个时间(使用cat命令)
e.g.:
[root@192 ~]# date;ls -l /etc/man_db.conf ;ls -l --time=ctime /etc/man_db.conf ;ls -l --time=atime /etc/man_db.conf
2024年 05月 22日 星期三 21:23:23 CST
-rw-r--r--. 1 root root 5171 10月 31 2018 /etc/man_db.conf
-rw-r--r--. 1 root root 5171 5月 9 21:41 /etc/man_db.conf
-rw-r--r--. 1 root root 5171 5月 21 21:08 /etc/man_db.conf
touch [-acdmt] 文件
-a:仅修订access time.
-c:进修改文件的时间。若文件不存在组不建立新文件
-d:后面可以接欲修订的时间而不用当前日期,--date=日期或时间
-m:修改mtime
-t:后面可以接欲修订的时间而不用当前日期,格式:YYYYMMDDhhmm
5.5文件与目录默认权限与隐藏权限
umask:文件预设权限(777做减法)
umask 022
umask -S
chattr:配置文件案隐藏属性
chattr [+-=][ASacdistu] 文件或目录名称
+:增加某个特殊参数
—:移除某个特殊参数
=:设定某个特殊参数
-a:只能增加数据不能修改和删除数据(只root)
-i:不能被删除、改名、设定连结也无法写入或新增数据(只root)
lsattr:显示文件隐藏属性
lsattr [-adR] 文件或目录
-a:将隐藏文件的属性也显示出来
-d:如果是目录的话,显示目录本身的属性
-R:连同子目录的数据也一并显示出来
Set UID:
- SUID权限仅对二进制程序有效
- 执行者对于程序需要有x的权限
- 本权限仅在执行该程序的过程中有效(run-time)
- 执行至将具有该程序的拥有者(owner)的权限
5.6指令与文件的搜寻
which:寻找执行档
which [-a] commmand
文档名的搜寻:
whereis(由一些特定的目录中寻找文件文件名)
whereis [-bmsu] 文件或目录名
-l:可以列出whereis会去查询的几个主要目录
-b:只要binary格式的文件
-m:只找在说明文件manual路径下的文件
-s:只找在sourse来源文件
-u:搜寻不再上述三个项目当中的其他特殊文件
locate/updatedb:
locate [-ir] keyword
-i:忽略大小写的差异
-c:不输出档名,仅计算找到的文件数量
-l:仅输出几行的意思
-S:输出locate所使用的数据库文件的相关信息,包括该数据库记录的文件、目录数量等
-r:后面可接正式表示法的显示方式
locate:依据/var/lib/mlocate内的数据库记载;必须使用updatedb(依据/etc/updatedb.conf搜寻系统硬盘内的文件名)进行更新
find:
find [PATH] [option] [actoion]
-mtime n:n为数字,意义为在n天(一天之内)之前被改动过内容的文件
-mtime +n:列出在n天之前(不含n天本身)被改动过内容的文件档名
-mtime -n:列出在n天之内(含n天本身)被改动过内容的文件档名
-newer file:file为一个存在的文件,列出比file还要新的文件档名
5.7权限与指令的关系
①:让用户能进入目录的基本权限:
- 可使用的命令:cd等变换工作目录的指令
- 目录所需的权限:用户对这几个目录至少需要x的权限
- 额外需求:ls查阅该文件名,还对该文件的r的权限
②:在某个目录内读取一个文件的基本权限
- 可使用的指令:cat/less/more
- 目录所需权限:至少对该文件所在的目录需要x权限
- 文件所需权限:使用者对该文件至少r权限
③:使用者修改一个文件的基本权限:
- 可使用的命令:nano,vim
- 目录所需权限:对该文件所在的目录需要至少x权限
- 文件所需权限:对该文件至少r,w权限
④:使用者可以建立一个文件的基本权限
- 目录所需的权限:用户所在的目录具有wx的权限
⑤:让用户进入某目录并执行该目录下的某个指令的基本权限
- 目录所需权限:目录至少需要x权限
- 文件所需权限:文件至少需要x权限
6.Linux磁盘与文件系统管理
6.1 文件系统特性
- superblock:记录此filesystem的整体信息,包括inode/block的总量、使用量、剩余量,以及文件系统的格式与相关信息
- inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的block的号码
- block:实际记录文件的内容,若文件太大时,会占用多个block
6.2磁盘与目录的容量
df:列出文件系统的整体磁盘使用量
df [-ahikHTm] [目录或文件名]
-a:列出所有文件系统,包括系统特有的/proc等文件系统
-h:以人们较容易的GBytes等格式自行显示
-k:以KBytes的容量显示各文件系统
-m:以MBytes的容量显示各文件系统
-H:以M=1000K取代M=1024k的进位方式
-i:不用磁盘容量,以inode的数量来表示
-T:显示文件类型(filesystem)
(在/dev/shm目录是内存虚拟出来的空间,通常是总物理内存的一半空间,处理速度快,但开机就消失)
du:评估文件系统的磁盘使用量
du [-ahskm] 文件或目录名称
-a:列出所有的文件与目录容量,默认仅统计目录底下的文件量而已
-h:以人们易读的容量格式去显示
-s:仅列出总量,而不列出每个各别的目录占用容量
-S:不包括子目录下的总计
-k:以KBytes列出容量显示
-m:以MBytes列出容量显示
6.3实体链接与符号链接:ln
ln [-sf] 来源文件 目标文件
-s:如果不加任何参数就进行连接,就是hard link,-s就是symbolic link。
-f:如果目标文件存在时,就主动将目标文件直接移除后再建立。
1.Hard Link(实体链接,硬式连接与实际连接)
两个档名链接到inode上面(相同的inode),使用Hard Link设定链接,磁盘的空间和inode的数目都不会改变。
使用hard link有限制:不能跨Filessystem,不能link目录。
2.Symblilc Link(符号链接,就是快捷方式)
如图所示,crontab2的连接档大小为12bytes,即/etc/crontab占用12bytes的大小。且为不同inode。但Symboliclink所建立的文件为一个独立的新的文件,所以会占用inode和block。
新建一个目录时,新的目录的link数为2,上层目录的link数会增加1.
6.4磁盘的分区、格式化、检验与挂载
新增一颗磁盘时需要的操作:
- 1.对磁盘进行分区,以建立可用的partition。
- 2.对该partition进行格式化format,以建立系统的filesystem。
- 3.可对刚刚建立好的filesystem进行检验
- 4.在linux系统上,需要建立挂载点,并将他挂载下来
观察磁盘分区状态:
lsblk(list block device)列出系统上的所有磁盘列表
lsblk [-dfimpt] [device]
-d:仅列出磁盘本身,并不会列出该磁盘的分区数据
-f:同时列出该磁盘的文件系统名称
-i:使用ASCII的线段输出,不要使用复杂的编码
-m:同时输出该装置在/dev底下的权限数据
-p:列出该装置的完整文件名
-t:列出该磁盘配置的详细数据
NAME:装置的文件名
MAT:MIN:次要装置代码
RM:是否为可卸除装置
SIZE:容量
RO:是否为只读装置
TYPE:类型,磁盘(disk)、分区槽(partition)、只读存储器(rom)
MOUTPOUINGT:挂载点
blkid:列出装置的UUID等参数
parted:列出磁盘的分区表类型与分区信息
磁盘分区:gdisk/fdisk
(MBR分区使用fdisk,GPT分区使用gdisk)
gdisk: