Linux安装及简单使用

说明:本笔记是学习狂神说linux时创建

个人博客 : Dexter

1、什么是linux?

基本概述

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。

它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

发行版本

Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。

2、 为什么使用linux?

作为后端程序员,linux是必备技能。

特点:

  • 完全免费

  • 完全兼容POSIX1.0标准

  • 多用户、多任务

  • 良好的界面

  • 支持多种平台

    3、linux的安装

    你也可以选择购买服务器,这里作者选择虚拟机安装linux。

    说明:作者系统是Mac bigsur 。

    1、虚拟机安装linux系统

    准备:

    • centos 7镜像

    • 虚拟机软件(VMware等)

    1、将下载好的镜像拖入虚拟机中。


    linux01.png

    2、取消勾选快捷安装,密码这里不输入也是可以的。


    linux02.png

    3、引导选择传统bios即可。

4、点击自定义设置定义系统保存位置、在根据需要设置处理的核数、内存大小以及硬盘大小(作者 1核心,2g内存,30g硬盘)。

5、点击完成,再点击虚拟机屏幕的暂停按钮,在选择install centos 7即可安装系统。

6、等待一会,出现这个页面选择自己看的懂的语言。


linux03.png

7、点击软件选择,根据自己需要打勾,选好后点击完成。


linux04.png

8、点击安装位置,作者选用自动配置分区,你可以根据自己进行选择,选好后点完成。
linux05.png

9、点击开始安装,等待安装完成即可。

10、先设置root密码,才能点击完成配置,等待一会,点击重启按钮。


liunx06.png

11、点击,同意协议,完成配置。
liunx07.png

12、根据自己需求设置。
13 、安装完成。
linux08.png

注意:此时的系统网络与外界网络 以及宿主机的网络是无法联通的,需要进行网络设置。

14、使用ifconfig命令可以看到系统是没有ip的


linux09.png

15、生成可用的ip 。

su root  #切换到root模式
dhclient #分配可用ip

使用ifconfig命令查看分配的ip。

使用命令打开网卡配置。

vim /etc/sysconfig/network-scripts/ifcfg-ens33

按i进入编辑模式,添加以下代码。

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static  # 设置为static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUTD=9d50e10e-1a01-45b9-a84b-933211b1bc31
DEVICE=ens33
ONBOOT=yes
IPADDR=172.16.16.3 #此ip是分配的可用ip
NETMASK=255.255.255.0
GATEWAY=172.16.16.1 #根据自己的ip设置
DNS1=119.29.29.29 

按esc退出编辑模式,输入:wq保存退出。终端ping www.baidu.com实验网络可用性。

到这里系统算是弄好了。

4、了解linux

文件夹解析

登入linux系统之后,使用ls /命令,可以看到下面界面,有很多文件夹。


linux10.png
  • /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。
  • /boot: 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev : dev是Device(设备)的缩写, 存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
  • /etc: 这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。
  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
  • /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
  • /opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
  • /srv:该目录存放一些服务启动之后需要提取的数据。
  • /sys:这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
  • /tmp:这个目录是用来存放一些临时文件的。
  • /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
  • /usr/bin: 系统用户使用的应用程序。
  • /usr/sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src: 内核源代码默认的放置目录。
  • /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
  • /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。

5、基本命令

目录操作

ls 显示目录

  • ls -a 显示出当前文件夹的全部目录
  • ls -l 显示出当前文件夹的算有文件属性及权限

cd 切换文件夹

  • cd 【相对路径或绝对路径】
  • cd /home 进入home文件夹
  • cd .. 退到上一级文件夹
  • cd / 回到根目录
  • cd ~ 回到root目录

mkdir 创建文件夹

  • 递归创建文件夹 (创建多级目录): -p

    mkdir -p t01/t02/t03

pwd 显示当前文件夹名称

rmdir 删除文件夹

  • 删除多级文件夹只需要加 -p就可以了

    rmdir -p t01/t02/t03

cp 复制文件夹

  • cp 【文件名】【目标文件夹】

    如果该文件夹已经存在该文件名的文件 可以输入 y进行覆盖或者输入n不复制

rm 移除文件或目录

  • -f 强制删除,不会有警告
  • -r 递归删除
  • -i 执行前会询问

mv 移动文件、目录或者修改名称

  • -f :如果目标文件存在,不会询问直接覆盖;
  • -i :目标文件 (destination) 存在时,询问是否覆盖!
  • -u :目标文件已经存在,且 source 比较新,才会升级 (update)

文件属性

linux系统对不同的用户对同一文件的操作有不同的权限。

看实例:


linux11.png

第一字母的含义:

  • d 表示是一个目录
  • l 表示是一个链接
  • -表示示一哦个文件
  • b 表示为装置文件里面的可供储存的接口设备
  • c 表示为装置文件里面的串行端口设备,例如键盘、鼠标

接下来9个字母,三个为一组,都是rwx组合。

r:可读

w:可写

x:可执行

三个权限的位置不会改变,如果没有权限,-代替


linux12.png
  • 属主权限:文件所有者的权限。
  • 属组权限:所有者的同组用户对该文件权限。
  • 其他用户的权限:其他用户对该文件的权限。

修改文件属性

可以看到,文件都有属组,属主。


linux13.png

chgrp:更改文件属组

  • chgrp [-R] 新组名 文件名

    前提是该组名存在

    -R递归修改文件夹属组

chown:更改文件属主,也可以同时更改文件属组

  • chown 【-R】新主名 文件名

     新主名必须存在
    
  • chown 【-R】 属主名:属组名 文件名

chmod:更改文件的9个属性

有两种方法:

1、使用字符

2、使用数字 r:4,w:2,x:1

[root@localhost home]# ls -ll
总用量 4
drwxrwxrwx.  2 root   root      6 4月  25 21:05 chao
drwx------. 16 dexter dexter 4096 4月  23 04:57 dexter
[root@localhost home]# chmod 755 chao
[root@localhost home]# ls -ll
总用量 4
drwxr-xr-x.  2 root   root      6 4月  25 21:05 chao
drwx------. 16 dexter dexter 4096 4月  23 04:57 dexter
[root@localhost home]# 

== chmod 777 是文件的最高权限 ==

文件内容的查看

文件查看的基本命令:

  • cat 从文件的前面显示文件内容
  • tac 从文件的最后内容开始显示内容
  • nl 显示内容时显示行号
  • more 显示内容时一分页的形式
  • head 只看前几行内容 -n 【数字】 这里代表显示几行
  • tail 只看后几行内容 -n与head一样
  • less 与 more 类似,但可以往上翻页 /需要查找的字符 向下查找 ,?向上查找字符

软链接与硬链接

硬链接:A-->B A,B指向同文件,其中一个文件删除的话不会影响另一个文件。更新A内容的话B也会更新。

软连接:A-->B B相当于A的快捷方式,如果A被删除B也不能被访问了。更新A内容的话B也会更新。

[root@localhost /]# cd home
[root@localhost home]# touch f1 #创建普通文件f1
[root@localhost home]# ls
chao  dexter  f1
[root@localhost home]# ln f1 f2 #创建硬链接f2
[root@localhost home]# ls
chao  dexter  f1  f2
[root@localhost home]# ln -s f1 f3  #创建软链接f3
[root@localhost home]# ls
chao  dexter  f1  f2  f3
[root@localhost home]# echo "Hello,Linux" >>f1 #往f1里面输出内容
[root@localhost home]# cat f1 #查看f1内容
Hello,Linux
[root@localhost home]# cat f2 #查看f2内容
Hello,Linux
[root@localhost home]# cat f3 #查看f3内容
Hello,Linux
[root@localhost home]# rm f1  #删除f1
rm:是否删除普通文件 "f1"?y
[root@localhost home]# cat f2 #f2 还是可以看的
Hello,Linux
[root@localhost home]# cat f3 #f3 不可以了
cat: f3: 没有那个文件或目录

6、vim编辑器

vim 是一个程序开发工具而不是文字处理软件。

vim有三种模式 命令模式,输入模式,底线命令名模式。

命令模式:

  • i 切换到输入模式。
  • x 删除当前光标所在处的字符。
  • : 切换到底线命令模式,在最后一行输入命令

输入模式:

  • 回车键换行
  • end/home 光标移动到尾部和头部
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线

底线命令模式:

  • q退出程序
  • w保存文件
  • qw 保存退出

vim编辑器操作步骤

  • vim 【文件名】 如果文件存在进入文件的命令模式,如果文件不存在vim会先创建文件
  • 进入文件的命令模式之后,若想进入输入模式按i键。
  • 输入完成后按esc键退出输入模式,进入命令模式。
  • 这时输入:进入底线命令模式,输入wq保存退出。

7、用户管理

linux是一个多用户操作系统,不同的用户有不同的权限。

用户输入自己账号号密码,进入系统和自己的主文件夹。

添加账户

命令:useradd 选项 用户名

选项:

  • -c comment 添加一段描述。
  • -d 目录 指定用户主目录。如果同时使用-m,目录不存再可以创建主目录。
  • -g 用户组 指定用户所属的用户组。
  • -G 用户组,用户组 指定用户所属的附加组。
  • -s Shell文件 用户的登录Shell。
  • -u 用户号 用户的用户号,如果有-o,可以重复使用其他用户的标识号。

切换用户

  • su username 【用户名】

  • 普通用户切换root sudo su

  • 输入exit或logout或快捷方式ctrl+d,退回原来账户

  • 超级用户 $普通用户

linux14.png

删除用户

命令:userdel 选项 用户名

选项-r 是在删除用户时删除用户在系统文件夹对应的目录

修改用户

命令:usermod 选项 用户名

选项与添加用户一样

用户口令

命令:passwd 选项 用户名

选项:

  • -l 锁定账号,不能登入了。
  • -u 解锁账号。
  • -d 使账号无口令,为用户指定空口令,下次登入时不能登入。
  • -f 强迫用户下次登录时修改口令。

8、用户组管理

每一个用户对应一个用户组,在实际开发中会有很多组比如:开发组,运维组,root等。

添加用户组

命令:groupadd 选项 用户组

选项:

  • -g GID 指定新用户组的组标识号。
  • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

删除用户组

命令:groupdel 用户组

修改用户组

命令:groupmod -g 【新的GID】-n【新用户组】 用户组

切换用户组

如果用户拥有多个用户组时。

命令:$ newgrp 【用户组】

8、磁盘管理

查看linux磁盘

命令:df 和du

==不同的地方是du是查看文件和目录磁盘的使用空间==


linux15.png

选项与参数:

  • -a :列出所有的文件系统;
  • -k :以 KBytes 单位显示各文件系统;
  • -m :以 MBytes 单位显示各文件系统;
  • -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
  • -H : M=1024K 变成 M=1000K 的进位;
  • -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
  • -i :不用硬盘容量,而以 inode 的数量来显示

9、进程管理

linux和Mac、windows一样也有很多进程。

每个程序都有自己的进程,每个进程都有自己的进程id。

每个进程都有一个父进程。

查看进程

命令: ps 选项

选项:

  • -a 查看当前正在运行的进程
  • -u 查看用户相关的进程
  • -x 显示后台运行进程参数

ps -aux 代表显示所以进程


linux16.png

过滤进程

命令 :ps -aux|grep mysql 展示所有与mysql相关的进程

查看父进程

命令:pstree -pu

  • -p 显示进程i父d
  • -u 显示用户组

以树的形式展示进程信息。


linux17.png

结束进程

命令 :kill -9 [进程id]

==到这里linux简单使用就结束了,谢谢观看==

你可能感兴趣的:(Linux安装及简单使用)