第一章 Linux目录结构,网络连接模式,vi和vim,Linux关机&重启命令,Linux用户管理
1.Linux和Unix:
①Unix针对于大型,高性能主机或服务器;
②Linux适用于个人计算机。
2.网络连接的三种模式:
①桥接模式:虚拟系统可以和外部系统通讯,容易造成ip冲突;
②NAT模式:网络地址转换模式,虚拟系统可以和外部系统通讯,不造成ip冲突;
③主机模式:独立的系统。
3.Linux目录结构:
(1) /bin (/user/bin、user/local/bin) :这个目录存放着最经常使用的命令。
(2) /sbin (/user/sbin、user/local/sbin):这里存放的是系统管理员使用的系统管理程序。
(3) /home:存放普通用户的主目录,Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名。
(4) /root:该目录为系统管理员。
(5) /lib:系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件,几乎所有的应用程序都需要这些共享库。
(6) /lost+found:一般情况下为空,系统非法关机后,就会存放一些文件。
(7) /ect:所有的系统管理所需要的配置文件和子目录,比如安装mysql数据库 my.cong。
(8) /usr:用户的很多应用程序和文件都在这个目录下,类似于Windows下的program files目录。
(9) /boot:存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
(10) /proc:是一个虚拟的目录,是系统内存的映射,访问这个目录来获取系统信息。
(11) /srv:该目录存放一些服务启动之后需要提取的数据。
(12) /dev:类似于Windows的资源管理器,把所有的硬件用文件形式存储。
(13) /media:Linux系统会自动识别一些设备,例如U盘,光驱等,Linux会把识别的U盘挂载到这个目录下。
(14) /mnt:为了让用户临时挂载别的文件系统,可以将外部的存储挂载到/mnt/上,然后进入该目录就可以查看里边的内容了。
(15) /opt:给主机额外安装软件所存放的目录,比如安装oracle数据库可以安装到该目录下,默认为空。
(16) /usr/local:给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。
(17) /var:这个目录存放不断扩充的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件。
(18) /selinux:是一个安全子系统,它能控制程序只能访问特定文件,有三种工作模式,可以自行设置。
4.vi和vim:
Linux会内置vi文本编译器,vim具有程序编辑的能力,是vi的增强版。
(1) vi和vim的三种模式:
①正常模式:以vim打开一个档案就直接进入了一般模式,在这个模式中可以使用[上下左右]按键来移动光标,可以使用[删除字符]来处理档案内容,也可以使用[复制、粘贴]来处理文件数据。
②插入模式:按下i、I、o、O、a、A、r、R等任何一个字母之后才会进入编辑模式,一般来说按i即可。
③命令行模式:在这个模式当中,可以提供相关指令,完成读取、存盘、替换、离开vim、显示行号等动作。
用vim编写一个程序,例如Hello.java,输入vim Hello.java,回车进入编写界面,输入i变为插入模式,进行代码编写,编写完输入esc,再输入:,再输入wq,回车。代码编写完成。
(2) 快捷键:
①拷贝当前行 yy,拷贝当前向下5行 5yy,并粘贴(输入p)。
②删除当前行 dd,删除当前向下的5行 5dd。
③在文件中查找某个单词(命令行下/关键字,回车 查找,输入n就是查找下一个)。
④设置文件的行号,取消文件的行号。[命令行下:set nu和:set nonu]。
⑤编辑/etc/profile 文件,在一般模式下,使用快捷键到该文档的最末行[G]和首行[gg]。
⑥在一个文件中输入"hello",在一般模式下,又撤销这个动作 u。
⑦编辑/etc/profile 文件,在一般模式下,并将光标移动到,输入20(一般模式下看不见),再输入shift+g。
5.关机&重启命令、用户登录和注销:
(1)关机&重启命令:
shutdown -h now:立即进行关机
shutdown -h 1:"hello,1分钟后会关机了"
shutdown -r now:现在重新启动计算机
halt:关机
reboot:现在重新启动计算机
sync:把内存的数据同步到磁盘
(2)用户登录和注销:
①登录时尽量少用root用户登录,可以利用普通用户登录,登录后再用“su -用户名(比如root)”命令来切换系统管理员身份。
②在提示符下输入logout即可注销用户(返回为普通用户);logout注销指令在图形运行级别无效,在运行级别3下有效。
6.用户管理:
(1)添加用户:
①基本语法: useradd 用户名
②案例:添加一个用户milan,默认该用户的家目录在/home/milan。例如:useradd milan
③说明:
当创建用户成功后,会自动的创建和用户同名的家目录;
也可以通过useradd -d 指定目录 新的用户名,给新创建的用户指定家目录。例如:useradd -d /home/test king (其中,test和milan为同级目录)
(2)指定/修改密码:
①基本语法:passwd 用户名
②案例:给milan指定密码。例如:passwd milan
③补充:显示当前用户所在的目录:pwd
(3)删除用户:
①基本语法: userdel 用户名
②案例:删除用户milan,但是保留家目录,例如:userdel milan;
删除用户tom以及tom主目录,例如:userdel -r tom。一般情况下建议保留家目录。
(4)查询用户信息指令:
①基本语法:id 用户名
②案例:查询root信息,例如id root。
③当用户不存在时,返回无此用户。
(5)切换用户:
①基本语法:su -切换用户名
②案例:创建一个用户jack,指定密码,然后切换到jack,例如:su -jack。
③从权限高的用户切换到权限低的用户,不需要输入密码,反之则需要;当需要返回到原来用户时,使用exit/logout指令。
(6)查看当前用户/登录用户:
基本语法:who am i或who am I
(7)用户组:
①用户组类似于角色,系统可以对有共性/权限的多个用户进行统一的管理。
②新增组指令:groupadd 组名,例如:groupadd beida
③删除组指令:groupdel 组名,例如:groupdel beida
④增加用户时直接加上组指令:useradd -g 用户组 用户名
案例:增加一个用户zyx,直接将他指定到beida,
例如:groupadd beida
useradd -g beida zyx
⑤修改用户的组指令:usermod -g 用户组 用户名,
案例:创建一个组qinghua,把zyx放到qinghua,
例如:groupadd qinghua
usermod -g qinghua zyx
(8)用户和组相关文件:
①/ect/passwd文件:
用户(user)的配置文件,记录用户的各种信息;
每行的含义:用户名:口令:用户标识号:组标识号:注视性描述:主目录:登录shell
②/ect/shadow文件:
口令的配置文件;
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
③/ect/group文件:
组(group)的配置文件,记录Linux包含的组的信息;
每行的含义:组名:口令:组标识号:组内用户列表