1.文件系统
1.1 文件系统结构
对于Linux来说,使用统一的目录树结构
/
/home/ysa
/root
/bin
/mnt
user
etc
注意:Linux下没有C:D:这个盘符概念
1.2 用户目录
每个用户一个目录,例如 /home/xiaoyang
特例:超级用户root,其用户目录为 /root
权限机制:对于普通用户来说,他能操作的目录就只有用户目录。
root用户没有限制,可以操作任意文件和目录
1.3 创建目录和文件
目录操作: 创建目录 / 删除 / 重命名
文件操作: 编辑文本文件
以上所有的操作,都在用户目录下执行
/home/ysa
2. Linux下的常用命令
2.1 命令行:文件列表
ls
ls,即list,列出目录下的所有项
示例:
查看当前目录
ls
查看/home/ysa目录
ls /home/ysa
查看根目录
ls /
以详细模式查看
ls -l /home/ysa
其中, -l 为参数,参数一般以 - 开头
2.2 命令行:切换目录
显示当前位置pwd
pwd
pwd,即print working directory
案例演示:
pwd
切换目录cd
cd,即 change directory ,切换目录
案例演示:
切换到用户主目录
cd
切换到某个目录
cd /home/ysa/MyFolder
几个特殊的目录
~ 代表当前用户的主目录
. 代表当前目录
… 代表上一级目录(两个点,不是三个点,这里编辑器有问题)
切换到主目录
cd ~
切换到主目录下的MyFolder目录
cd ~/MyFolder
切换到上级目录、再到xiaoyang子目录
cd ../xiaoyang
以上指令对 ls 也可类似使用
2.3 命令行:目录操作
mkdir ,即 make directory创建目录
mkdir abc
mkdir -p abc/123/test
使用 -p 参数,可以将路径的层次目录全部创建
rmdir , 即 remove directory 删空目录
rmdir abc
如果目录非空,则删除失败
rm , 即 remove 删除文件或者目录
rm -rf abc
删除abc目录,和子项一并删除
其中,r表示 recursive, f 表示force
cp , 即copy复制文件或者目录
将文件夹MyFolder复制为MyFolder2:
cp -rf MyFolder MyFolder2
mv , 即move , 移动文件或目录(重命名)
mv hello.txt helloworld.txt
要点:
对于文件,rm / cp / mv 这三个命令同样适用
2.4 命令行:归档压缩
归档
tar , 即 tape archive档案打包
创建档案包
tar -cvf MyFolder.tar MyFolder
其中,
c,表示 create 创建档案
v,表示 verbose 显示详情
f, 表示file
也可以多个目录打包
tar -cvf xxx.tar file1 file2 file3
还原档案包
tar -xvf MyFolder.tar
tar -xvf MyFolder.tar -C outdir
其中, -C 参数指定目标目录,默认解压到当前目录下
归档并压缩
先前的tar格式并没有压缩,体积较大
tar
并档并压缩
tar -zcvf MyFolder.tar.gz MyFolder
解压缩
tar -xzvf MyFolder.tar.gz
tar -xzvf MyFolder.tar.gz -C outdir
通常我们所见的,都是 *.tar.gz 这种格式
2.5 命令行:软链接
软链接,即Windows下的“快捷方式”
使用 ln 命令(link)来创建软链接
ln -s source link
其中, -s 表示soft软链接(默认为硬)
比如
ln -s MyFolder MyFolder2
软链接的特点:
1、删除软链接,对源文件没有影响
2、删除源文件,则软链接失败
以 ls -l 查看文件详情时,可以看到目标路径
比如,ls -l /
可以发现,/bin 实际指向的是 /user/bin 目录
3. 用户管理
3.1 添加用户
sudo useradd -m ysa2
其中,sudo ,表示以管理员身份执行
1、添加用户
sudo useradd -m ysa2
其中,-m参数表示在 /home 下添加用户目录
2、修改用户密码
passwd ysa2
3、删除用户
userdel ysa2
sudo rm -rf /home/ysa2/
要点与细节
1 在登录系统时,默认不允许以root用户登录
2 只有特殊的用户,才能执行sudo
比如,ysa可以实心执行sudo,但ysa2不行Linux下,把能执行sudo命令的用户叫做 sudoer
3.2 超级用户
超级用户root
类似于 Windows 下的 Administrator 用户
(空行 )
切换到 root 用户,有全部权限,可以直接 useradd 等命令。
1、首次使用时,需要给 root 设置密码
sudo passwd root
2、切换到root用户
su root
3、退出
exit
要点与细节
1、su root 仅仅对当前会话(终端)有效
不影响当前桌面环境
2、root 权力太大,需要小心使用
3.3 用户和组
Linux 下可以创建多个用户,可以用组进行管理用户
比如:
男生组 boys
ming bo gang qiang
女生组 girls
fang hong yue yuan
创建组
grounpadd boys
创建用户
useradd -m -g boys ysa ming
其中,-g 表示在添加用户,同时将用户加到 boys 组
修改现有用户到新的组
usermod -g boys ysa
其中,usermod 表示修改用户信息
如何查看用户和组?
cat /etc/group
每一行表示一个 group 的信息,名称 +ID
如何查看用户列表?
cat /etc/passwd
每一行表示一个用户的信息
要点:
用户不多时,管理的时候并不使用组的概念
useradd a1
useradd b1
一个 root ,两个普通用户 a1, b1,够用了!
(空行)
默认地,会给 a1 用户建立一个同名的组 a1 ,也就是说这个组里只有他一个人。
3.4 以root登录桌面
默认地, Ubuntu 不允许以 root 登录桌面环境。
(root已经设置了密码)
4. 文件权限
4.1 文件的权限
-owner:文件的属主owner
-r:文件是否可读 read
-w:文件是否可写write
-x:文件是否可执行 excute
比如,系统中有用户:ysa 和 ming
一个文件 simplie.txt ,由 ysa 创建
那么,ming能访问这个访问吗?是否可读?是否可写?
使用ls命令查看一个文件
ls -l simple.txt
-rw-r–r==.1 ysa ysa 13 4月 21 03:48 simplie.txt
其中,rw-r–r–表示该文件的访问权限
权限分为三部分:自己 | 同组 | 别人
例如:
自己 | 同组 | 别人 | ||||||
---|---|---|---|---|---|---|---|---|
r | w | x | r | w | x | r | w | x |
r | w | x | r | w | x | - | - | - |
r | w | x | - | - | - | - | - | - |
在文件夹窗口里,文件 | 属性 | 权限 查看
4.2 修改文件权限
chmod
, 即change file mode 修改文件的访问权限
比如,一个文件simple.txt ,相让别人也能修改
chmod o+w simple.txt
其中,
o
,表示 other 别人
+w
, 表示增写 write 权限
所有人 all 添加 w 权限:
chmod a+w simple.txt
所有人 all 减去 w 权限:
chmod a-w simple.txt
仅用户 user 自己的权限 +w:
chmod u+w simple.txt
修改别人 other 的权限 -w:
chmod o-w simple.txt
要点:
1、只有文件的属主或者root可以修改文件权限
2、省略写法
chmod +w simple.txt
chmod +w simple.txt
默认是修改自己和本组的权限
4.3 修改文件属主
chown
,即change owner修改文件的属主
一般来说,每个用户只操作自己的用户目录,所以
chown
命令并不常用
示例:
1、在 /opt 目录下建立一个文件夹 software
2、将 software 目录分配给用户 ysa
su root
mkdir /opt/software
chown -R ysa /opt/software
ls -ld /opt/software
要点:
只有文件的 owner 和 root 才有权更改属主