Linux之Ubuntu入门篇[笔记自用]

CMD

一 linux常用命令

  1. ls
  2. cd

. 点表示当前目录
… 点点当前目录的上一级目录
~ 当前用户目录
- 放回上一次目录

  1. pwd
  2. uname 用于显示系统信息
  3. clear 清屏
  4. cat
  5. sudo 以管理员运行
  6. cp 文件拷贝
  7. su 切换用户

sudo su :切换超级用户
su gxx :切换到gxx用户

  1. mv 移动或改名文件
  2. mkdir 创建文件夹
  3. touch 创建文件
  4. rm 删除命令
  5. rmdir 删除空目录文件
  6. ifconfig
  7. reboot
  8. poweroff
  9. man 查看帮助信息

man ls
q 退出
space 按页下翻
/字符串 在手册页中查找字符串

  1. sync 刷新文件系统缓冲区
  2. find 根据路径和条件搜索指定文件

语法格式:find [路径] [参数]
参数 -name
例:find /etc -size +1M (在/etc目录中搜索所有大于1M大小的文件)

  1. grep 文本搜索工具

语法格式: grep [参数] 文件
参数 -n 显示行号
-r 递归搜索
例:grep -nr “gxx”

  1. du 查看文件或目录的大小

语法格式:du [参数] 文件
参数 -s 仅显示总统计
-h 以易读方式显示文件大小

  1. df 显示磁盘空间使用情况
  2. gedit 桌面的文本编辑器

语法格式:gedit [参数] 文件名

  1. ps 显示进程状态

语法格式:ps [参数]
参数 a 显示现行终端机下的所有程序,包括其他用户的程序
-A 显示所有程序

  1. top 实时显示系统运行状态
  2. file 识别文件类型

语法格式:file [参数] 文件

  1. tree 以树状图形式列出目录内容

二 Linux软件安装方法

  1. APP Store安装

  2. 使用apt工具安装

语法格式:
apt-get [参数] 软件名
参数:
update 重新获取软件包列表
upgrade 更新软件
install 安装软件

例 sudo apt-get install ssh

  1. dpkg 管理软件安装包

语法格式:dpkg [参数] 软件包
参数 :
-i 安装软件包
-r 删除软件包
-l 显示已安装软件包

例 sudodpkg -i xxxx.deb

  1. 自己下载源码安装

三 Linux文件系统结构

/bin 存放二进制可执行文件,这些命令在单用户模式下也能够使用。可以被 root 和一般的账号使用。

/boot Ubuntu 内核和启动文件,比如 vmlinuz-xxx。gurb引导装载程序。

/dev 设备驱动文件

/etc 存放一些系统配置文件,比如用户账号和密码文件,各种服务的起始地址。

/home 系统默认的用户主文件央,一般创建用户账户的时候,默认的用户主文件夹
都会放到此目录下。

/lib 存放库文件

/media 此目录下放置可插拔设备,比如 SD 卡,或者 U 盘就是挂载到这个目录中

/mnt 用户可使用的挂载点,如果要挂载一些额外的设备,那么就可以挂载到此处。

/opt 可选的文件和程序存放目录,给第三方软件放置的目录。

/root 用户目录,也就是系统管理员目录。

/sbin 和/bin类似也是存放一些二进制可执行文件。sbin 下面的一般是系统开机过程中所需要的命令。

/srv 服务相关目录。比如网络服务。

/sys 记录内核信息,虚拟文件系统。

/tmp 临时目录

/var 存放一些变化的文件,比如日志文件

/usr usr不是 user 的缩写,而是 UNIX Software Resource 的缩写,存放于系统用户有关的文件,会占用很大的存储空间!

/proc 虚拟文件系统,数据放置到内存中,存放系统运行信息

四 Linux磁盘管理

4.1 Ubuntu 磁盘文件

/dev/sd* 文件,此类文件是磁盘设备文件,并不能直接访问磁盘,必须要将磁盘挂载到某一个目录下才可以访问。

例:
/dev/sdb,和/dev/sdb1是U盘的设备文件
/devlsdb表示U盘,/dev/sdb1表示U盘的第一个分区

4.2磁盘和目录的容量查询命令

df: 列出文件系统的整体磁盘使用量。主要查看个文件系统的使用量
du:评估文件系统的磁盘使用量,主要查看单个文件的大小
du -h --max-depth=1

4.3磁盘挂载与卸载,分区和格式化、

4.3.1 磁盘的挂载和卸载

mount和umount 命令

语法格式:umount [参数] [设备/挂载目录]
语法格式:mount [参数] [设备] [挂载点]

例:
将光盘设备挂载到/media/cdrom目录:mount /dev/cdrom /media/cdrom
强制以xfs文件系统挂载硬盘设备到指定目录:mount -t xfs /dev/sdb /disk
卸载指定的文件系统:umount /dev/sdb

4.3.2 磁盘分区

fdisk命令

语法格式:fdisk [参数] [设备]

4.3.3 磁盘格式化

磁盘分区创建好以后就可以格式化磁盘,使用命令mkfs。

语法格式: mkfs [参数] 设备名
参数 -v 详细显示模式
-t 给定档案系统的型式
-c 检查该设备是否有损坏

如:mkfs -t vfat /dev/sdx-

五 Linux下压缩与解压缩

5.1 Linux下常用的压缩格式

Linux下常用的压缩扩展名有: .tar.tar.bz2.tar.gz。‘

5.2 Windows 下7ZIP软件的安装

因为Linux下很多文件是.bz2,.gz.结尾的压缩文件,因此需要在windows下安装7ZIP软件。

5.3 gzip压缩工具

.gzip 工具负责压缩和解压缩.gz格式的压缩包。

gzip xxx //压缩
gzip -d xxx.gz //解压缩

gzip 对文件夹进行压缩

gzip. -r xxx //对文件夹进行压缩
gzip -rd xxx //对文件夹进行解压缩

gzip虽然可以对文件夹进行压缩,但是并不能提供打包的服务,只是对文件夹中的所有文件进行了单独的压缩。

5.4 bzip2压缩工具

和gzip类似,只是bzip2工具负责压缩和解压缩.bz2格式的压缩包。

bzip2 -z xxx //压缩
bzip2 -d xxx.gz //解压缩

5.5 tar打包工具(重要)

语法格式:tar 参数 文件或目录
参数

-c 建立新归档,创建新压缩
-x 从归档文件中提取文件
-z 通过gzip指令压缩/解压缩文件,文件名最好为*.tar.gz
-j 通过bzip2指令压缩/解压缩文件,文件名最好为*.tar.bz2
-f 使用归档文件
-v 显示指令执行过程

tar工具提供打包服务,就是将多个文件打包,
比如

tar -vcf test.tar test // 将test打包成test.tarw
tar -vxf test.tar // 解包

上面的 tar命令只提供了打包和解包的功能,tar在提供打包和解包的同时使用gzip/bzip2进行压缩,实现类似wndwos 下wnRAR软件的命令。

5.5.1 对tar.bz2进行压缩和解压缩

tar -vxjf xxx.tar.bz2 //解压缩·
tar -vcjf xxx.tar.bz2 xxx //压缩-

5.5.2 对tar.gz进行压缩和解压缩

tar -vxzf xxx.tar.gz // 解压缩
tar -vczf xxx.tar.gz xxx // 压缩

六 Linux下用户与用户组

6.1 Linux用户

Linux是一个多用户操作系统,不同的用户拥有不同的权限。可以查看和操作不同的文件。Ubuntu有三种用户:

  1. 初次创建的用户
  2. root用户
  3. 普通用户

初次创建的用户权限比普通用户多,但是没有root用户多,初次创建的用户可以创建普通用户。
Linux用户记录在/etc/passwd这个文件内。
Linux用户密码记录在/etc/shadow这个文件内。
每个用户都有一个ID,叫做UID。

6.2 Linux用户组

为了方便管理,将用户进行分组。这样就可以设置非本组人员不能访问某些文件。每个用户可以属于多个不同的组。+

用户:家里有你、弟弟、妹妹个人,每个人都有自己的房间,你们三个人都是用户,你们都不能随便的乱翻别人的房间。

用户组:你们三个都是一个家庭的,也就是属于同一个用户组,你们三个可以共用厨房,书房等空间。

因此:
用户和用户组的存在就是为了控制文件的访问权限的。每个用户组都有一个ID,叫做GID。
用户组信息存储在/etc/group 文件中。

6.3 创建用户和用户组

6.3.1 图形化界面创建

要使用图形化界面创建用户和用户组的话就需要安装 gnome-system-tools这个工具

sudo apt-get install gnome-system-tools

6.3.2 命令创建用户和组

添加用户: adduser命令

adduser  gxx

用户查询: finger命令,

finger gxx

修改用户密码: passwd命令

passwd gxx

删除用户: deluser.命令

deluser gxx

添加用户组: addaroup命令, addgroup用户组名
显示组内用户名: groups命令, groups用户名
删除用户组: delaroup命令, delaroup用户组名

七 文件权限管理

7.1 Ubuntu/Linux文件权限.

文件权限是指不同的用户或用户组对某个文件拥有的权限,文件的权限分为三种:
r:读
w:写
x:可执行
文件描述形式如下:

-rw-rwr-- 就是文件权限,
第一位表示文件类型,剩下的每三位表示一组权限。分别对应拥有者权限、拥有者所在组权限、其他用户权限。
可以使用二进制表示文件权限。
r=4
w=2
x=1

7.2 Ubuntu/Linux文件权限修改

7.2.1 修改文件权限命令

chmod 命令

chmod 775 hello

7.2.2 修改文件所属用户,

chown 命令

chown root:root hello

八 linux连接文件

8.1Linux连接文件

Linux有两种连接文件:符号连接(软连接)和硬连接,符号连接类似Windows下的快捷方式。硬链接通过文件系统的inode连接来产生新文件名,而不是产生新文件。
inode:记录文件属性,一个文件一个inode。inode,相当于文件 ID,查找文件的时候要先找到inode,然后才能读出文件的内容。

8.2 ln命令

ln命令用于创建连接文件:
vln [选项]源文件目标文件
选项:
-s 创建符号链接(软连接)
-f 强制创建连接文件,如果目标存在,那么先删除掉且标文件,然后再建立连接文件。

8.3 硬连接

硬链接是多个文件都指向同一个inode,硬链接知识点:

  1. 具有相同inode的多个文件互为硬链接文件,创建硬链接相当于文件实体多了入口。
  2. 对于硬链接文件,只有删除了源文件以及对应的所有硬连接文件,文件实体才会被删除。
  3. 根据硬链接文件的特点,我们引以通过给文件创建硬连接的方式来防止文件误删除。
  4. 不论修改源文件还是连接文件,另一个文件的数据都会被改变。
  5. 硬连接不能跨文件系统。
  6. 硬连接不能连接到目录。
    因为以上这些限制,硬链接其实不常用。

8.3 符号连接(软连接)

符号连接类似Windows下的快捷方式,符号链接也叫做软连接,软连接要用的多。符号连接相当于创建了一个独立的文件,这个文件会让数据读取指向它连接的哪个文件的文件名。软连接的特点:

  1. 可以连接到目录。
  2. 可以跨文件系统。
  3. 删除源文件以后,软连接文件也就"打不开了"。
  4. 符号连接文件通过->来指示具体的连接文件。
  5. 符号连接要使用绝对路径,否则连接出问题。

九 vim编辑器

9.1vim编辑器

Linux系统都会自带vi编辑器,但是vi编辑器太难用了!所以建议大家安装 vim 编辑器,安装命令:

sudo apt-get install vimu

9.2 vim编辑器三种工作模式

vi xxx使用vi编辑器打开文件。
一般模式(指令模式):默认模式,用vi打开一个软件以后自动进入到此模式。
编辑模式:一般模式中无法编辑文件,要编辑文件就要进入编辑模式,按下“i、l、a、A、o、O、s、r"等就会进入到编辑模式。一般按下"a"进入编辑模式。按下ESC键可退出编辑模式。
命令行模式(底行模式):先进入到一般模式,然后输入:、/、?这三个中的任意一个就可以进入到命令行模式。“
/xxx,表示在文件中查找xXXw

9.3 保存退出

当文件编辑好以后,输入:

:wq 保存退出
:q 退出
:q! 不保存退出
:w 保存

9.4 其他操作方式

按下键盘上的上下左右键来控制光标。
—般模式下:

  1. dd 删除光标所在行
    ndd 删除光标所在行及其下n行
  2. u 撤销,恢复上一步。
  3. . 重复前一个操作。
  4. yy 复制光标所在行
  5. nyy,复制光标所在向下n行,
    比如10yy 就是复制光标下10行。

参考

快乐的学习—Makefile语法详细总结及示例解析

B站—于仕琪,Makefile 20分钟入门

正点原子【第一期】手把手教你学Linux之Ubuntu入门篇

你可能感兴趣的:(linux,ubuntu)