Linux鸟哥的私房菜读书笔记3

这篇博客介绍了Linux系统中的基本命令,如date、cal、bc和man,强调了date命令格式设置的重要性。此外,讲解了文件权限的三类身份(owner、group、others)及其rwx权限,并详细阐述了如何使用chown和chgrp改变文件所有者和组。内容还涵盖了文件系统的目录配置标准FHS,以及重要的系统目录如/bin、/etc和/home的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第五章
date 命令
date +"%Y/%m/%d" 建议加""来设置格式,因为我以前写shell的时候试过error,挺难找的
cal 日历
cal 10 2019
cal 2018
bc 计算器
设置小数点后的位数
scale=number, number 就是位数
quit 退出
ctrl + d 代表键盘输入结束(EOF),也可以用来替代exit
ctrl + c 中断
tab 补全,两次是展示
man (manual)操作说明,所有UNIX Like系用中都可以用man,Linux额外提供了info命令
echo $LANG
LANG=“en”
超简单文本编辑器nano
sysc 数据同步写入磁盘,在系统关机或重启之前对好多执行几次,在内存中尚未被更新的数据就会被写入硬盘中

halt 会先调用shutdown,而shutdown最后会调用 halt(。。这不会循环引用么?)。不过,shutdown 可以依据目前已启动的服务来逐次关闭各服务后才关机,至于halt却能够在不会目前系统状况下,进行硬件关机的特殊功能

/var 是系统默认的一些数据暂存或者cache数据的保存目录,像email就含在这面
文件系统检查命令 fsck
fsck /dev/sdb1 (依据实际情况设置)

第六章 Linux 的文件权限与目录配置
Linux 一般将文件可存取访问的身份分为3个类别,分别是 owner,group,others,且3重身份各有 read,write,execute 等权限

  • linux 系统当中,默认的情况下所有的系统上的账号与一般身份用户,还有root 的相关信息,都是记录在 /etc/passwd 这个文件内。
  • 个人的密码记录在 /etc/shadow 这个文件下。
  • linux 的所有组名都记录在 /etc/group 内。
    这3个文件可以说是Linux系统里面账号,密码,用户组信息的集中地。不要随便删除这3个文件。

执行命令 ls -al 查看当前文件夹文件及属性,ls 是list的意思
ls -a 显示当前目录下的所有文件及文件夹包括隐藏的.和…等
ls -al 显示当前目录下的所有文件及文件夹包括隐藏的.和…等并显示详细信息,详细信息包括大小,属组,创建时间

[权限] [连接] [所有者] [用户组] [文件容量] [修改日期] [文件名]
drwxr-x- - - 4 root root 4096 Sep 8 14:06 …

  • 第一列,类型与权限permission

    • 共有10个字符
    • 第一个字符代表这个文件是**“目录,文件或链接文件等”**,
      若是[d]则是目录,[-]是文件,[l]表示为链接文件(linkfile),[b]表示设备文件里面的可供存储的接口设备,[c]则表示设备文件里面的串行端口设备,例如键盘,鼠标(一次性读取设备)
    • 接下来的字符中,以3个为一组,且均为"rwx"的组合,r表示可读,w代表可写,x代表可执行,-代表没有对应的权限
      第一组为"文件所有者的权限",
      第二组为"同用户组的权限",
      第三组为"其他非本用户组的权限"
  • 第二列,表示有多少文件名连接到此节点(i-node)

  • 第三列,表示这个文件或目录的所有者账号

  • 第四列,表示这个文件所属用户组

  • 第五列,表示这个文件的容量大小,默认单位为B

  • 第六列,为这个文件的创建文件日期或最近的修改日期

  • 第七列,为文件名,隐藏文件的名字第一个为"."

man ls 或 info ls 查看基础用法

例题
drwxr-xr-- test1 testgroup 5238 Jun 19 20:25 groups/
testgroup 这个用户组[r-x]可以进入本目录进行工作,但是不能在本目录下进行写入操作
other 权限[r–],虽然有r,但是由于没有x的权限,因此others的用户并不能进入此目录

chgrp (change group )改变所属的用户组
要改变的组名必须要在/etc/group 文件内存在才行,否则会显示错误
chgrp -R dirname/filename 递归的持续更改,连同子目录下的所有文件,目录都更改称为这个用户组
例子
chgrp users install.log 把改log 改为users用户组

chown 改变文件所有者
注意,用户必须是已经存在于系统中的账号,也就是在/etc/passwd这个文件中有记录的用户名称才能改变
-R 同样递归
例子
chown bin install.log 将所有者改为bin这个账号
chown root:root install.log 将所有者和用户组改回为root
可以单纯改用户组 chown .root install.log 就是这个小数点"."的用途

cp 复制行为,会复制执行者的属性与权限

chmod 改变权限,可以用数字或符号
数字分别对应owner,group,others 三种身份各有自己的read,write,execute权限,三个一组,r:4,w:2,x:1,分数累加
例如 [-rwxrwx- - -] 770
-R 递归
chmod [-R] 754 filename , [-rwxr-xr- -]
755 [-rwxr-xr-x]
740 [-rwxr- - - - -] 不希望被其他人other看到

符号,u,g,o 分别代表user,group,others,a代表all,+加入,-除去,=设置
例如
chmod u=rwx,go=rx .bashrc
group和other只有读和执行的权限

只想增加每个人写的权限
chmod a+w filename
除去所有人执行的权限
chmod a-x filename

  • 文件与目录的rwx权限意义
  • 文件的权限是对针对文件内容的,
  • 而目录的主要内容是记录文件名列表,文件名与目录有强烈的关联
  • 对目录而然rwx权限意义:
  • r读取目录结构列表,
  • w新建,删除(即使对该文件无任何权限),重命名文件或目录,转移目录内的文件或目录位置
  • x代表用户能否进入该目录称为工作目录(没有x权限表示不能进入/切换到该目录下,若有r权限表示可以查看到目录下的文件列表(但无法读到详细信息)),cd(change directory)
  • 如果你在某目录下有r权限而无x权限,那么你就无法切换到该目录下,也就无法执行该目录下的任何命令,所以要开放目录给任何人浏览时,应该至少给予r及x的权限,否则总是无法查阅到文件的内容

任何人都可以工作的/tmp 目录
mkdir (make directory)新建目录
su - user 来切换用户,exit 切换回原本的身份

普通文件regular file [-]

  • 依照文件的内容大致分为:
  • 纯文本文件(ASCII)
    • 可以直接读到的数据,大多用来作为设置的文件都属于这一种
  • 二进制文件(binary)
    • 可执行文件
  • 数据格式文件(data file)
    • 例如Linux在用户登录时,都会讲登录的数据记录在/var/log/wtmp 那个文件内,该文件是一个data file,它能够通过last命令读出来,但使用cat 会读出乱码,因为它属于一种特殊格式的文件

目录(directory)[d— --- —]
连接文件(link)[l — --- —]
设备与设备文件(device),与系统外设及存储等相关的一些文件,通常都集中在/dev 这个目录,通常分为两种:
块(block)设备文件[b — --- —], 自行查/dev/sda 看看
字符(character)设备文件,[c — --- —]
套接字(sockets)通常被用在网络上的数据连接,[s — --- —],/var/run/ 中可看到这种文件类型
管道(FIFO,pipe),主要的目的在解决多个程序同时访问一个文件所造成的错误问题,FIFO(first in first out)
socket 与FIFO与进程(process)有关系,可以通过man fifo, man socket 来查阅

x代表这个文件具有可执行的能力,但是能不能执行成功,要看该文件的内容

linux 目录配置标准 FHS
FHS 的重点在于规范每个特定的目录下应该要放置什么样子的数据
针对目录树架构定义出三层目录下面应该放置什么样的数据:
/ (root,根目录):与开机系统有关;
/usr (UNIX software resource):与软件安装/执行有关;
/var(variable):与系统运作过程有关
FHS 标准建议:根目录(/)所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目 录越小越好,如此不但性能较好,根目录所在的文件系统也较不容易发生问题。

/bin 放置的是在单用户维护模式下还能够被操作的命令,可以被root与一般账号所使用,主要有cat,chmod,chown,date…
/boot 这个目录主要在放置开机会使用到的文件,包括Linux内核文件以及开机菜单与开机所需配置文件等。Linux kernel 常用的文件名为vmlinuz,如果使用的是grub 这个引导装载程序,则还会存在/boot/grub/ 这个目录
/dev 在Linux系统上,任何设备与接口设备都是以文件的形式存在于这个目录重的。你只要通过访问这个目录下面的某个文件,就等于访问某个设备。
/etc 系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件,各种服务的起始文件等。
/etc/init.d/ 所有服务的默认启动脚本都是放在这里的,例如要启动或关闭iptables 的话,/etc/init.d/iptables start ,/etc/init.d/iptables stop
/home 默认的用户主文件夹
/lib 在开机时会用到的函数库,以及在/bin 或 /sbin 下面的命令会调用的函数库。尤其重要的是/lib/modules/ 这个目录,因为该目录会放置内核相关的模块(驱动程序)
/opt 这个是给第三方软件放置的目录,以前的 Linux系统中,习惯放置在/usr/local/目录下。
/sbin 放在/sbin 下面的为开机过程中所需要的,里面包括了开机,修复,还原系统所需要的命令。某些服务器软件程序,则一般放置到/usr/sbin/当中。至于本机自行安装的软件所产生的系统执行文件,则放置到/usr/local/sbin 当中。
/srv (service),是一些网络服务启动之后,这些服务所需要取用的数据目录。常见的目录例如WWW,FTP等。举例来说,WWW服务需要的网页数据就可以放置在/srv/www 里面
/tmp 这是让一般用户或者正在执行的程序暂时放置文件的地方。这里目录是任何人都能够访问,所以你需要定期清理一下。

uname -r
lsb_release -a
查看内核基本信息
Linux标准(Linux Standard Base)LSB

基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统,个人经导师指导并认可通过的高分设计项目,评审分98分,项目中的源码都是经过本地编译过可运行的,都经过严格调试,确保可以运行!主要针对计算机相关专业的正在做大作业、毕业设计的学生和需要项目实战练习的学习者,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经网络的果蔬识别系统基于python tensorflow2.3的果蔬识别系统源码+模型-基于卷积神经
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值