Linux学习笔记(一)
Linux和Unix的关系
在上个世纪七十年代,Ken tompson和Dennis richres在贝尔实验室发明了UNIX系统
在八十年代,各大公司使用UNIX发行了自己的操作系统
Linux Torvalds修改Unix发行了开源免费的Linux内核
常见的发行版本
它们都具有Linux内核
- Redhat
- Ubuntu
- Debian
- Fedora
- OpenSUSE
- Centos(本笔记选用)
RedHat Linux的社区版,其特点就是相当相当的稳定,版本更新紧跟RedHat。非常适合作为服务器操作系统使用。
Linux目录结构
在Linux世界中,一切皆文件
-
/
根目录 -
/bin
是Binary的缩写,存放常用指令 - /sbin
s就是Super User的意思,存放的是系统管理员使用的系统管理程序 -
/home
存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般目录名称是以账号命名的 -
/root
该目录为系统管理员,也称作超级权限者的用户主目录 - /lib
系统开机所需的动态链接共享库,类似dll文件 -
/etc
所有系统管理员所需的配置文件和子目录 -
/usr
用户的应用程序和文件在此目录下,类似program files - /boot
存放启动Linux时使用的一些核心文件 - /proc
一个虚拟目录,是系统内存的映射,访问这个目录可以获取系统信息 - /srv
service的缩写,该目录存放一些服务启动后需要提取的数据 - /tmp
存放临时文件 - /dev
device的缩写,类似设备管理器,把所有的硬件以文件的形式储存 -
/media
系统自动识别一些设备,如光驱,U盘等,识别后会将设备挂载在该目录下 -
/mnt
系统提供该目录为了让用户临时挂载别的文件系统,我们可以将外部的储存挂载在/mnt/上,然后可以进入该目 d:\myshare - /opt
给注解额外安装软件(类似.exe文件)所摆放的目录,默认为空 -
/usr/local
给主机额外安装软件的安装目录,一般是通过编译源码的方式安装的程序 -
/var
这个目录存放着不断扩充的东西,习惯经常被修改的目录被放在这个目录下,包括各种日志文件 -
/selinux
security-enhance linux类似360
远程登录
- 登录控制台使用XShell,远程传输文件使用Xftp
需要Linux开启一个sshd服务,监听22端口,在输入setup
指令后在系统配置里查找ifconfig
查询ip地址service sshd start
开启服务
传输文件
- 在XShell中
rz
指令传输文件 - 使用XFtp传输,也是sshd协议,22号端口
关机&重启
shutdown
-
shutdown -h now
立即关机 -
shutdown -h 1
一分钟后关机 -
shutdown -r now
立即重启
halt
- 等价于关机
reboot
- 重启系统
sync
- 将内存的数据同步到磁盘,关机前使用防止数据丢失
用户管理
尽量使用普通用户进行操作,需要权限时切换成root用户,每个用户必须属于一个组,每个用户会拥有一个家目录
用户信息放在 /etc/passwd
文件下,密码存放在 /etc/shadow
文件下
logout
- 登出用户,图形界面无效
useradd [选项] <用户名>
- 默认创建一个同名的组并放入,并在home创建一个家目录
-
useradd -d <指定目录> <用户名>
在指定目录创建一个家目录
passwd <用户名>
- 配置用户密码
userdel [选项] <用户名>
- 删除用户但是保留家目录
-
userdel -r <用户名>
删除用户并删除家目录
id <用户名>
- 查询用户
- uid 用户id
- gid 组的id
su <用户名>
- 切换用户,从权限切换到低权限不需要输入密码
-
exit
返回到高权限用户
who am i
- 查看当前用户
用户组
类似于角色,系统可以对有共性的多个用户进行统一管理
组信息放在 /etc/group
文件下
groupadd <组名>
- 添加组
groupdel <组名>
- 删除组
useradd -g <组名> <用户名>
- 在指定组内创建一个用户
usermod -g <组名> <用户名>
- 将用户移动到别的组