1:linux概述
Linux是一种自由、开放源代码的操作系统,它最初由芬兰的Linus Torvalds在1991年开发,目前已经成为世界上最流行的操作系统之一。Linux操作系统的特点是免费、稳定、安全、可定制、可移植性强、支持多任务、多用户等。
2:linux常用命令
1:查看文件/目录
- ls:显示文件
- ls -l或者ll:显示详细信息
- ls -a:显示全部文件
- ls -al:显示全部文件的详细信息
- ls 目录名:查看目录
2:目录切换
- cd…:上一级目录
- cd dirname:进入目录
- cd 或者cd~:直接回到用户的根目录
- cd/:回到系统的根目录
3:查看完整路径
- pwd
4:查看当前用户
- whoami
5:用户切换
- su:普通用户切换到root用户
- su root:切换到root用户
- su 用户名:切换到普通用户
- exit:退回到原来用户
6:管理用户
- useradd xxx:创建用户
- password xxx:为创建的用户设置密码
- userdel:删除用户
7:查看命令所在目录
- which
3:文件操作命令
- touch fileName:创建名字为fileName的文件
- touch dir/fileName:在dir目录下创建名字为fileName的文件
- echo 内容>fileName:把内容覆写到文件中,若文件不存在则创建
- echo 内容>>fileName:把内容追加到文件中
- cat fileName:打印文件内容到终端
- more fileName:分屏查看各文件内容,不支持回看
- less fileName:查看文件各部分内容,支持回看
- head -n fileName:查看文件按前n行内容
- tail -n fileName:查看文件末尾n行内容
- wc fileName:查看文件的行数
4:目录操作命令
- mkdir 目录名:创建普通文件夹
- mkdir -p 目录/目录/目录:递归创建多级父子文件夹
- mv dir1 dir2 :将dir1移动到dir2
- mv dir1 dir2 ./ :将dir1中dir2移动到当前目录下
- mv dir1 name:将dir1改名为name
- cp dir1 name:将dir1拷贝为nam
- rm 文件:删除文件
- rm -r 目录:递归删除目录
- rm -rf 文件/目录:强制删除目录/文件
5:查找操作
- find / -name fileName:查找fileName文件
- find ./ -name “*p”:查找带p的文件
- find ./ -type f:查找所有文件
- grep 内容 fileName:从指定文件中查找内容
6:权限管理
7:进程管理
- ps:查看当前终端窗口里的进程
- ps -aux:查看系统中的所有进程
- ps -ef :查看进程列表
- kill 进程号:杀死指定进程号
- kill -9 进程号:强制杀死指定的进程
8:其他命令
ifconfig:查看当前系统的IP地址等信息
tar zcvf 压缩文件夹名.tar.gz 路径1 路径2:实现一组文件或者文件夹的打包
tar zxvf 压缩文件名.tar.gz:实现解压文件夹
9:vi工具的使用
1:概念
vi和vim是Linux系统命令行下的文本编辑器,通常格式为∶vi文件名或vim文件名。
2:三种模式
10:jdk、tomcat、mysql安装
太懒了,不想写~
建议用Docker
11:shell编程
1:基本概念
- Shell是一个命令行解释器,可以接收应用程序或用户命令,然后访问操作系统内核。
- Shell是一个功能相当强大的编程语言,易编写、易调试、灵活性强;
2:算数、关系符运算
#!/bin/bash#定义二个变量
ia=5
ib=2#打印输出二个变量
echo "ia=$ia"
echo "ib=$ib"#实现加法运算,要求+二边必须有空格
echo expr $ia + $ib
ic=$(($ia+$ib))
echo $ic
id=$(($ia*ib))
echo $id
3:选择
3.1 if
#!/bin/bashscore=61
echo $scoreif [ $score -gt 60 ]
thenecho "恭喜考试通过了!"
elif [ $score -eq 60 ]
thenecho "60分万岁 ,多一分浪费"
elseecho "下学期补考吧"
fi
3.2 case
#!/bin/bash#提示用户输入1-3之间的赠书并记录到变量中
echo "请输入1-3之间的整数"
read num #表示读取一个整数到变量num中#使用case语句进行匹配和打印
case $num in1) echo "您选择的是1号业务";;2) echo "您选择的是2号业务";;3) echo "您选择的是3号业务";;*) echo "您没有选择1-3号业务,请重试呢";;
esac
4:循环
4.1 for
#!/bin/bash#定义一个变量负责记录累加和sum=0#使用forxh计算1-100之间的和
for(( i=1;i<=100;i++ ))
dosum=$[$sum+$i]
done#打印变量值
echo $sum
4.2 while
#!/bin/bashsum=0
i=0while [ $i -le 100 ]
dosum=$[$sum+$i]let i++
doneecho $sum
概念(简答):
1:解释下什么是IaaS
IaaS是基础设施即服务的简称,是云计算服务的一种。IaaS提供了一种灵活的云基础设施,包括虚拟服务器、存储和网络,使得用户可以按需获取资源,并且可以在不同时间释放资源。
2:解释什么是分布式系统
分布式系统是由多个独立计算机或节点组成的系统,这些节点通过网络进行通信和协作,共同完成一个或多个共享目标。每个节点在分布式系统中独立运行,并且可以有不同的硬件和操作系统。
3:解释什么是RAID
RAID是冗余阵列独立磁盘(Redundant Array of Independent Disks)的缩写,是一种通过将多个物理磁盘组合成逻辑单元来提高数据存储性能、可靠性和容错性的技术。
4:解释什么是虚拟化技术
虚拟化技术是一种将计算资源进行抽象和隔离的技术,通过在物理硬件上创建多个虚拟环境,使得单个物理服务器能够同时运行多个虚拟机或虚拟操作系统。
5:解释什么是虚拟机
虚拟机是一种软件实现的计算机系统,它在一个物理计算机上创建和运行多个虚拟的计算环境。
6:解释什么是服务器虚拟化
服务器虚拟化是指通过虚拟化技术在一台物理服务器上创建和管理多个虚拟机,从而将一个物理服务器划分为多个独立的虚拟计算环境。
7:云计算六种服务方式是什么
-
基础设施即服务
-
平台即服务
-
软件即服务
-
功能即服务
-
数据即服务
-
安全即服务
8:简述云计算和云存储的关系
云计算提供了计算资源和服务,而云存储则提供了数据的存储和管理。云计算环境下,用户可以将数据存储在云存储中,然后通过云计算服务来处理和分析这些数据。云计算可以使用云存储提供的数据作为输入,并将计算结果存储回云存储中。
9:云计算的四要素
-
弹性伸缩
-
自助服务
-
资源池
-
按需付费
10:云计算的公共特征有哪些
-
多租户性
-
可拓展性
-
高可用性
-
弹性定价
-
虚拟化技术
-
自助服务
11:简述GPU虚拟化原理
-
物理GPU分割
-
虚拟机配置
-
调度和隔离
-
并行处理
-
驱动程序和API支持
12:云计算具有哪些特点
同9、10
13:虚拟机迁移的步骤
- 选择目标主机:确定要将虚拟机迁移到的目标物理主机
- 准备目标主机:在目标主机上创建虚拟机所需的资源,包括虚拟机的配置和网络设置
- 迁移前的准备
- 迁移
- 冷迁移
- 热迁移
- 存储迁移
- 迁移完成与后续处理
- 迁移验证与测试
命令简答题
1:在其父目录不存在时先创建父目录的命令。
在Linux中,可以使用mkdir
命令的-p
选项来创建目录及其父目录(如果父目录不存在)。该选项会自动创建所需的父目录。
例如,假设要在路径/path/to/new/directory
下创建一个目录directory
,但是/path/to/new
目录并不存在,你可以使用以下命令来创建:
mkdir -p /path/to/new/directory
这条命令会递归地创建/path/to/new
目录及其父目录(如果它们不存在),然后在其中创建directory
目录。
使用-p
选项可以确保在目标目录不存在时创建整个路径中的父目录。这在需要创建深层次的目录结构时非常有用。
2:要使得名为fido的文件具有如下权限-r-xr-x—x的命令。
要将名为"fido"的文件设置为 -r-xr-x--x
的权限,可以使用 chmod
命令。权限由三个数字表示,每个数字代表一组权限,从左到右分别表示所有者、所属组和其他用户的权限。
在这种情况下,-r-xr-x--x
可以被转换为数字形式为 551
。其中,7
表示所有者具有读(4)、写(2)和执行(1)的权限,5
表示所属组和其他用户具有读和执行的权限,而没有写的权限。
要设置文件的权限,可以使用以下命令:
chmod 551 fido
这将将文件 “fido” 的权限设置为 -r-xr-x--x
。请确保在执行此命令之前,你具有足够的权限来更改文件的权限。
3:在/root文件夹下查找后缀为.cpp的文件
要在 /root
文件夹下查找后缀为 .cpp
的文件,可以使用 find
命令。以下是相应的命令:
find /root -type f -name "*.cpp"
解释一下这个命令:
find
:用于查找文件和目录。/root
:指定要查找的目录为/root
。-type f
:指定只查找普通文件,排除目录和其他特殊文件。-name "*.cpp"
:指定要查找的文件名匹配模式为以.cpp
结尾的文件。
运行上述命令后,find
命令会递归地在 /root
目录下搜索所有后缀为 .cpp
的文件,并输出它们的路径。请注意,由于 /root
目录是系统的超级用户(root)的家目录,因此你可能需要具有足够的权限来访问该目录。如果没有足够的权限,你可以尝试使用 sudo
命令以超级用户权限运行该命令。
4:关闭linux系统(不重新启动)使用的命令
要关闭 Linux 系统而不重新启动,可以使用 shutdown
命令。以下是关闭 Linux 系统的命令:
shutdown -h now
解释一下这个命令:
shutdown
:用于安全关闭系统。-h
:指定关闭系统后进入停机状态 (halt)。now
:立即执行关机操作。
运行上述命令后,系统会开始关闭过程,并最终进入停机状态。请注意,在执行此命令之前,请确保保存了所有未保存的工作,并关闭了所有正在运行的应用程序。
另外,你也可以使用 poweroff
或者halt
命令来关闭系统,效果与 shutdown -h now
相同:
poweroff/halt
这些命令需要在具有适当的权限的用户(如 root 用户)下执行,或者使用 sudo
命令以超级用户权限运行。
5:将光盘/dev/hdc卸载的命令
要卸载光盘设备 /dev/hdc
,可以使用 umount
命令。以下是相应的命令:
umount /dev/hdc
解释一下这个命令:
umount
:用于卸载文件系统。/dev/hdc
:指定要卸载的设备路径为/dev/hdc
。
运行上述命令后,系统会卸载 /dev/hdc
设备上挂载的文件系统,将其从文件系统树中移除。请确保在执行卸载命令之前,没有任何应用程序或进程正在使用该设备上的文件系统。另外,需要以具有适当权限的用户(如 root 用户)或者使用 sudo
命令以超级用户权限运行该命令。
6:在/home目录下查找文件名为Profile的文件,找到后删除
要在 /home
目录下查找名为 Profile
的文件并删除它,可以使用以下命令:
find /home -type f -name "Profile" -exec rm {} +
解释一下这个命令:
find
:用于查找文件和目录。/home
:指定要查找的目录为/home
。-type f
:指定只查找普通文件,排除目录和其他特殊文件。-name "Profile"
:指定要查找的文件名为Profile
。-exec rm {} +
:对找到的文件执行rm
命令进行删除。
运行上述命令后,find
命令会在 /home
目录下递归地搜索名为 Profile
的文件,并对每个找到的文件执行 rm
命令进行删除操作。
请注意,删除文件是不可逆操作,请确保你确实要删除这个文件,并且谨慎操作。同时,你可能需要具有足够的权限来删除这个文件。如果没有足够的权限,你可以尝试使用 sudo
命令以超级用户权限运行该命令。
7:将test.tar.gz文件解压缩
要解压缩名为 test.tar.gz
的文件,可以使用以下命令:
tar -zxvf test.tar.gz
解释一下这个命令:
tar
:用于归档和提取文件的命令。-x
:指定解压缩操作。-z
:指定要处理的文件是经过 gzip 压缩的。-f test.tar.gz
:指定要处理的文件是test.tar.gz
。
运行上述命令后,tar
命令会解压缩 test.tar.gz
文件,并将其中的文件提取到当前目录中。
请确保在运行解压缩命令之前,你已经切换到了目标位置,或者提供了适当的路径来保存解压缩的文件。同时,请确保 test.tar.gz
文件位于当前目录或提供了正确的路径。
如果你想解压到指定目录,可以使用 -C
参数,例如:
tar -zxvf test.tar.gz -C /path/to/destination
上述命令将会解压缩到 /path/to/destination
目录中。请将 /path/to/destination
替换为你希望文件解压到的实际目录路径。
8:升级安装wu-ftpd软件包
sudo yum update
sudo yum install wu-ftpd
9:创建一个用户,用户名为user02,所属私有组和标准组为stuff,用户家目录为/home/user2,用户登陆shell为/bin/bash
要创建一个名为 user02
的用户,将其设置为 stuff
私有组和标准组,以及将用户的家目录设置为 /home/user02
,并将用户的登录 shell 设置为 /bin/bash
,可以按照以下步骤进行操作:
-
打开终端或命令行界面。
-
以具有管理员权限的用户身份登录。
-
运行以下命令创建用户:
sudo useradd -m -d /home/user02 -g stuff -G stuff -s /bin/bash user02
解释一下这个命令:
useradd
:用于创建新用户的命令。-m
:指定创建用户时同时创建用户的家目录。-d /home/user02
:指定用户的家目录路径为/home/user02
。-g stuff
:指定用户的主要组为stuff
。-G stuff
:将用户添加到附加组stuff
。-s /bin/bash
:指定用户的默认登录 shell 为 Bash。user02
:指定要创建的用户名。
-
运行以下命令设置用户的密码:
sudo passwd user02
系统将要求你输入并确认新用户的密码。
完成上述步骤后,用户 user02
将被创建,并且其家目录将位于 /home/user02
。用户将属于 stuff
组,并具有指定的登录 shell。
请确保以具有足够权限的用户身份运行命令(如使用 sudo
),以便成功创建用户和设置密码。
10:赋予所有用户读和写backup.tar.gz文件的权限
要赋予所有用户对 backup.tar.gz
文件的读和写权限,可以使用 chmod
命令。以下是相应的命令:
chmod a+rw backup.tar.gz
解释一下这个命令:
chmod
:用于修改文件权限的命令。a+rw
:表示赋予所有用户读和写的权限。backup.tar.gz
:指定要修改权限的文件名。
运行上述命令后,所有用户将具有对 backup.tar.gz
文件的读和写权限。请注意,这可能会导致潜在的安全风险,因为任何用户都可以对文件进行修改。请在赋予权限之前,权衡好安全性和访问需求。
请确保你对该文件具有适当的权限,以便执行修改权限的操作。如果没有足够的权限,你可以尝试使用 sudo
命令以超级用户权限运行该命令。
问答题:
一:
执行命令 ls –l 时,某行显示如下:
-rw-r–r-- 1 chris chris 207 jul 20 11:58 mydata
(1)用户chris 对该文件具有什么权限?
- 文件所有者
chris
具有读写权限。 - 同组用户具有只读权限。
- 其他用户具有只读权限。
(2)执行命令useradd Tom后,用户Tom对该文件具有什么权限?
在执行命令 useradd Tom
之后,用户 Tom
对该文件有可读的权限。
(3)如何使任何用户都可以读写执行该文件?
chmod a+rwx mydata
这将为所有用户(所有者、同组用户和其他用户)赋予读、写和执行权限。
(4)如何把该文件属主改为用户root ?
chown root mydata
请注意,在执行以上命令时,确保你具有足够的权限。如果没有足够的权限,你可以尝试使用 sudo
命令以超级用户权限运行这些命令。
二:
叙述Linux如何使用Windows系统硬盘(设备名为/dev/hda3,分区类型为fat32)上的文件,如何实现开机自动挂载windows硬盘。写出详细的步骤。
要在Linux系统中使用Windows系统硬盘上的文件,需要将Windows硬盘挂载到Linux系统中。以下是详细的步骤:
-
首先,确定Windows硬盘的设备名和分区类型。假设Windows硬盘的设备名为
/dev/hda3
,分区类型为 FAT32。 -
创建一个用于挂载Windows硬盘的目录。例如,可以在
/mnt/windows
目录下创建一个新的目录:sudo mkdir /mnt/windows
-
打开终端或命令行界面,并以具有管理员权限的用户身份登录。
-
执行以下命令,将Windows硬盘的分区挂载到指定的目录:
sudo mount -t vfat /dev/hda3 /mnt/windows
解释一下这个命令:
sudo mount
:用于挂载文件系统的命令。-t vfat
:指定文件系统类型为 FAT32。如果Windows硬盘的文件系统不是 FAT32,请相应地更改文件系统类型。/dev/hda3
:指定要挂载的设备名和分区号。/mnt/windows
:指定要挂载的目录。
执行该命令后,Windows硬盘的分区将被挂载到
/mnt/windows
目录。 -
现在,你可以通过访问
/mnt/windows
目录来访问Windows硬盘上的文件。
如果你希望在Linux系统开机时自动挂载Windows硬盘,可以将挂载命令添加到系统启动脚本中。以下是在Ubuntu上的一个示例:
-
打开终端,并以具有管理员权限的用户身份登录。
-
执行以下命令,编辑
/etc/fstab
文件:sudo vim /etc/fstab
-
在打开的文件中,添加以下一行来描述Windows硬盘的挂载信息:
/dev/hda3 /mnt/windows vfat defaults 0 0
解释一下这个行:
/dev/hda3
:指定要挂载的设备名和分区号。/mnt/windows
:指定要挂载的目录。vfat
:指定文件系统类型为 FAT32。如果Windows硬盘的文件系统不是 FAT32,请相应地更改文件系统类型。defaults
:指定默认的挂载选项。0 0
:指定文件系统检查顺序和备份设置。
-
保存并关闭文件。在nano编辑器中,按下
Ctrl + X
,然后按下Y
以保存更改,最后按下Enter
退出编辑器。