Linux 基础:
https://www.cnblogs.com/linhaifeng/articles/6045600.html
Linux 比 Windows 更稳定做服务器,开发出来的软件需要在服务器上运行
# 测试硬盘速度
dd if=/dev/zero of=sdb5/test bs=10G count=1 # 写一个 10G 的文件
写文件 input file out file block size
1. 操作系统内核与系统调用
1.1 操作系统
操作系统是用来协调、惯例和控制计算机硬件和软件资源的系统程序,位于硬件和应用程序之间,分为系统内核和系统调用接口。
- 系统内核:操作系统内部核心代码,一个管理和控制程序,负责管理计算机的所有物理资源,包括:文件系统、内存管理、设备管理和进程管理,与硬件交互
- 系统调用接口:给外部提供使用内核的接口,与软件交互
- 操作系统用户界面:图形、命令行
主要发行版:centOS、rhel、fedora、ubuntu、suse
操作系统的几种常用启动方式:
-
removable devices:可移动设备(U盘、移动硬盘等)
-
hard drive:本地硬盘
-
cd-rom drive:光盘
-
network boot from intel E1000:网络
-
install or upgrade an existing system:安装或更新一个已经存在的系统
-
install system with basic video driver:安装系统使用基本的图形驱动
-
rescue installed system :修复安装系统
-
boot from local drive:从本地硬盘启动
-
memory test:
切换虚拟终端的方法:ctrl + alt +F[1 ~6],切换第二号虚拟机终端(Ctrl + Alt +F2)
root 用户登录后的提示符:#
普通用户登陆后的提示符:$
退出终端:exit
关机:init 0
ctrl + c 终止命令
2. Linux 命令及获取帮助
Linux 命令格式语法:
命令 [选项] [参数]
- 命令:Linux 操作系统要执行什么
- 选项:命令运行的方式,以 "-" 开始
- 参数:命令影响的对象(如文件、目录等)
2.1 ls 命令
查看目录下的文件
语法:
ls [选项] [参数]
ls -l # 显示详细信息
ls -a # 查看隐藏文件
ls -all # 查看包含隐藏文件在内的所有文件的详细信息
ll -i # 查看 i 结点
ll -h # 查看文件大小(以 G/M/K为单位)
2.2 whoami 命令
查看当前登录 Linux 系统的用户
语法:
whoami
2.3 who 命令
查看当前有哪些用户在系统上工作
语法:
who
2.4 date 、cal和 clear命令
date 命令
显示系统当前日期和时间
语法:
date
date '101220212018' # 月日时分年,修改日期时间
hwclock -s # 同步硬件时间, -w 同步系统
cal 命令
显示万年历
语法:
cal 8 2018 #查看 2018 年 8 月日历
clear 命令
清除命令
语法:
clear
ctrl + l # 快捷键
2.5 useradd、passwd、su 命令
useradd 命令
创建一个用户
语法:
useradd tom # 创建一个名为 tom 的用户
注意:新创建的用户,需要设定密码,否则无法登陆
passwd 命令
修改用户(既可以是普通用户,也可以是 root 用户)的密码,查看用户密码状态
语法:
passwd tom # 给 tom 设定密码,或修改密码,若没指定用户,默认修改root用户密码
su 命令
从当前用户切换到指定另一个用户
语法:
su - tom
su - root # 切换到 root 用户,需要密码,普通用户不需要
2.6 man 命令
获取命令的帮助信息
语法:
man 命令 # 按 q 退出查看
命令 --help
3. 目录文件的浏览、管理及维护(一)
3.1 Linux 文件系统结构
Linux 文件系统的结构:树状结构,所有文件和目录都被组织成一个以根节点开始的倒置的树状结构。
/ 根目录
. 当前目录
.. 上一级目录(父目录)
3.2 根目录下一些重要目录
- bin(binary):存放常用的(二进制)可执行文件
- sbin:存放系统的可执行文件
- 家目录(home):存放用户自己的文件或目录,root 用户的家目录是 /root,而普通用户的家目录被存放到 /home 目录下,并使用用户名作为最后一级目录(家目录),如 cat 用户的家目录为 /home/cat
- dev:设备文目录
- etc:配置文件目录
- tmp:临时文件目录
- 挂载点目录:通常可移动设备会挂载在 /media 或 /mnt 目录下
3.3 绝对路径和相对路径
绝对路径:必须以正斜线(/)开头,从文件系统的根节点开始查找对象,必须遍历每个目录的名字,是文件位置的完整路标,在任何情况下都不会出错。
ls /root/桌面/aaa
相对路径:不是正斜线(/)开头,可以包含从当前目录到要查找的对象(目录或文件),必须遍历每个目录的名字,必须在某个目录之下才能使用相对路径。
# 要查找 aaa,必须先在 root 目录下,相对路径才有用,没有 / 开头
ls 桌面/aaa
4. 目录文件的浏览、管理及维护(二)
4.1 pwd 命令
查看当前路径
语法:
pwd
4.2 cd 命令
切换
语法:
cd # 切换路径
cd .. # 返回上一级目录
cd ~ # 切换到当前用户的家目录,root 即为 root 用户的家目录,普通用户即为普通用户的家目录
cd - # 切换到上一次的目录
cd # 切换到家目录
4.3 cp 命令
复制或重命名文件或目录
语法:
cp /root/桌面/aa /root/桌面/bb/ 拷贝或重命名
cp /root/桌面/aa /root/桌面/bb/new_name
cp -r /home/alex/.[!.]* /home/sb/
4.4 mv 命令
移动及修改文件和目录名
语法:
mv /test.txt /home
4.5 mkdir 命令
创建目录
语法:
mkdir -p /dir1/dir2/dir3 # 创建多级目录
4.6 touch 命令
创建文件
语法:
touch a.txt
touch /dir1/dir2/dir3
touch /test/{1..9}.txt # 同时创建多个文件,1/2/3.txt
4.7 rm 命令
删除
语法:
rm a.txt # 提示
rm -f a.txt # 强制
rm -r /dir1/dir2/dir3 # 删除目录
rm -rf /dir1/dir2/dir3 # 强制删除目录/文件
# 删除是很危险的操作,在删除之前要慎重考虑,可以先备份或把它移动到临时文件中
mv /opt/a.txt /tmp/ # 移动到临时文件中
cp /opt/new /opt/new.bak # 备份
4.8 查看命令
4.8.1 cat 命令
查看正文文件的内容
语法:
cat /etc/passwd
4.8.2 head 命令
查看文件头部的内容,显示文件的头几行,默认头十行,也可以设置显示几行
语法:
head /etc/passwd
head -1 /etc/passwd
4.8.3 tail 命令
查看文件尾部内容,默认后十行,也可设置,tail(尾巴)
语法:
tail /etc/passwd
tail -1 /etc/passwd
echo 'hello' >> /opt/a.txt # 在末尾追加内容,用tail -f 可以动态查看
tail -f /etc/passwd # 动态查看文件内容变化,记录日志的变化
4.8.4 more 命令
查看文件内容,以百分比的形式
语法:
more /etc/passwd # 回车键上下翻动,显示的百分比,与屏幕大小有关
4.8.5 less 命令
查看文件内容
语法:
less /etc/passwd # 上下键翻动