前言:一个合格的Linux工程师,应当能够在命令行界面完成90%配置,那么这篇文章就先从常用且基础的Linux命令聊起。
注:此文适用于Linux CentOS和Linux Rocky,不同的Linux发行版,命令大同小异,整体思路是一样的。
1、切换用户
切换目录使用su命令,格式为su + 用户名,如下所示:
[root@linux5 ~]# su root #切换至root用户
2、切换目录
切换目录使用cd命令,格式为cd + 目录或路径,如下所示:
[root@linux5 ~]# cd / #切换至根目录[root@linux5 /]# cd /var #切换至根目录下的var目录中[root@linux5 var]#
3、创建目录
创建目录使用mkdir命令,格式:mkdir + 目录名
[root@linux5 ~]# mkdir a #创建名为a的目录,在windows中称为文件夹
4、创建文件
创建文件使用touch命令,格式:touch + 文件名
[root@linux5 ~]# touch b #创建名为b的文件
5、查看
查看目录下的文件或目录使用ls和ll命令,格式:ls或ll,当然如果在当前目录下想查看其它目录,可以使用ls + 路径或ll + 路径
[root@linux5 ~]# ls #查看当前目录下的文件和目录
a anaconda-ks.cfg b
[root@linux5 ~]# ls /mnt #查看/mnt目录下的文件和目录
AppStream BaseOS
[root@linux5 ~]# ll #查看当前目录下,文件和目录的详细信息
总用量 4drwxr-xr-x. 2 root root 6 1月 12 11:00 a
-rw-r--r--. 1 root root 0 1月 12 11:00 b
[root@linux5 ~]# ll /mnt/ #查看/mnt目录下文件和目录的信息总用量 14
dr-xr-xr-x. 4 root root 2048 5月 15 2022 AppStream
dr-xr-xr-x. 4 root root 2048 5月 15 2022 BaseOS
6、权限
Linux中文件或目录权限主要针对3种对象:所属用户、所属组、其他用户或组。
当我们使用ll命令时,可以看到当前的权限,如下所示:
[root@linux5 ~]# ll a
总用量 4
drwxr-xr-x. 2 root root 6 1月 12 11:00 a
# d代表这是一个目录,r为读取,w为写入,x为执行,3个权限为1组总共3组,分别对应所属用户、所属组、其他用户和组。根据rwxr-xr-x所示,所属用户对a目录有读写执行的权限,所属组对a目录有读和执行的权限,其他用户和组对a目录有读和执行的权限
Linux设置用户对某一个文件或目录的权限,使用chmod命令进行设置,而其中读取可以用4标识,写入用2标识,执行用1标识。
下面设置所有对象对目录a有读写和执行的权限,指令如下:
[root@linux5 ~]# chmod 777 b # 1个7代表了3种权限,3个7代表了三种对象对该目录的权限
[root@linux5 ~]# ll #再次查看
总用量 4
drwxrwxrwx. 2 root root 6 1月 12 11:00 a #可以看到变成了3组rwx
其他设置示例:
其他组只有读取和执行权限,没有写入权限:
[root@linux5 ~]# chmod 775 a
所属组和其他组只有读取和执行权限,没有写入权限:
[root@linux5 ~]# chmod 755 a
7、查看本机网络信息
使用ifconfig或ip addr 可以查看当前主机的网络信息,例如网卡名称、IP地址、子网掩码、广播地址、mac地址等信息。
[root@linux5 ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 #ens160为网卡名称
inet 10.10.120.105 netmask 255.255.255.0 broadcast 10.10.120.255 #ipv4地址信息
inet6 fe80::20c:29ff:fe6d:38b0 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:6d:38:b0 txqueuelen 1000 (Ethernet)
RX packets 3175123 bytes 4451193880 (4.1 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 488933 bytes 709423022 (676.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 #lo为本地环回接口
inet 127.0.0.1 netmask 255.0.0.0 #地址信息
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 76 bytes 6332 (6.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 76 bytes 6332 (6.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
8、编辑文件
编辑文件内容可以使用编辑器,常用的有vi和vim,vi编辑器为系统自带,vim编辑器有些系统版本需要手动安装,命令格式:vi + 文件名或vim + 文件名
示例:使用编辑文件b,写入内容hello linux
步骤1:[root@linux5 ~]# vi b #vi编辑器编辑文件b
步骤2:按键盘a或i键,左下角出现INSERT标识,即入插入模式
步骤3:输入hello linux步骤4:按键盘左上角的Esc键,退出插入模式
步骤5:按键盘shift + 冒号,左下角出现冒号,然后输入wq,即保存并退出q:退出q!:退出不保存
9、查看文件内容
查看文件内容使用cat命令,命令格式为:cat + 文件名
[root@linux5 ~]# cat b #查看文件
bhello linux #显示结果,文件内容是hello linux
10、安装和删除软件
安装软件这里介绍yum和rpm两种方式,以安装dns服务为例,在linux中dns软件包名为bind:
安装bind软件
[root@linux5 ~]# yum install bind #yum方式安装软件#yum install为yum安装方式的固定格式,后面加软件包名称
rpm -ivh bind-9.11.36-3.el8.x86_64.rpm # rpm方式安装软件#-ivh是一个选项,安装时可以显示进度,
删除bind软件
yum方式删除
[root@linux5 ~]# yum remove bind #删除bind软件,yum remove + 软件名
rpm方式删除
[root@linux5 ~]# rpm -e bind-9.11.36-3.el8 #rpm -e + 软件版本
yum和rpm的区别:
yum能自动安装或删除配套的依赖包,rpm不能
yum安装/删除不需要指定软件包名全称,rpm必须包名+版本
虽然这样看rpm没什么优点,但rpm方式也有存在的必要性,这个以后再聊。
11、挂载/卸载
在Linux中光盘、U盘、共享路径这些介质,第一次都需要手动挂载,当然也有一些桌面级的Linux系统是自动挂载的,例如国产统信UOS之类的。
关于挂载可以理解成一种动作,不挂载就无法对介质里的文件和目录进行操作。在Windows当中一张光盘插入光驱后,在此电脑中就可以对光盘内的资源进行访问,而Linux中,插入光盘之后还需要手动挂载,才能访问。
挂载光盘镜像文件
步骤1:虚拟机软件VMware下编辑虚拟机--可移动设备--cd/dvd--连接,物理主机的话直接光盘放进光驱就行
步骤2:[root@linux5 ~]# mount /dev/cdrom /mnt/ #/dev/cdrom是Linux中光驱的路径,mnt是挂载的路径
步骤3:[root@linux5 ~]# df -h #查看挂载情况
文件系统 容量 已用 可用 已用% 挂载点
/dev/sr0 11G 11G 0 100% /mnt
挂载共享目录
步骤1:在Windows或Linux上配置好共享目录,开放允许所有人访问的权限
步骤2:[root@linux5 ~]# mount -t cifs -o username=Administrator,password=Pass-1234
//10.10.120.1/zs /opt# //10.10.120.1是共享目录的主机IP,gx是目录名称,opt是挂载的路径
步骤3:[root@linux5 ~]# df -h /opt #查看挂载情况
文件系统 容量 已用 可用 已用% 挂载点
//10.10.120.1/gx 100G 87G 14G 87% /opt
本期文章共总结了11个常用的Linux命令和使用方法,内容持续更新,欢迎大家关注与我一起学习,您的支持是我创作的动力,谢谢!