linux学习lesson8

shiny 学习lesson2 作业 第二节课的学习时间比较长,所以作业也要好好的上交一下,本来想自己制作一个火山图制作的用户界面,可是在Windows的操作系统上,shiny不支持中文,使用默认编码方式,只要运行就会报错,使用utf-8的编码方式,不会报错,界面也显示中文,可是代码里的中文就会变成乱码,下次试试Linux系统,看看这种情况能不能解决。 所以这次的作业就中规中矩的做了shiny学习上要求的网页,心有不甘,肯定会补上自己的中文页面! library(shiny) ui <- fluidPage( titlePanel 阅读详情

目录

1 文件或目录权限chmod

2 更改所有者和所属组chown

3 umask命令

4 隐藏权限lsattr/chattr


1 文件或目录权限chmod

chmod:change mode

#ls -l

rw-r--r--    //每三个字符为一段,第一段所属主,第二段所属组,第三段其他用户 r (4) 读 ,w (2) 写 ,x (1) 可执行

#ls -l /tmp/

发现文件属性的最后一位是“.”,跟selinux有关

#chmod 700 test/    //修改文件目录权限为rwx------,就是700

#chmod 700 -R test/    //-R表示级联,该目录下的子文件都是700权限

#chmod u=rwx,g=r,0=r test/

#chmod a+x test/    //ugo都加上x权限

chmod u-x filename

 

2 更改所有者和所属组chown

chown:change owner 更改文件所属主

#chown user /tmp/test

chgrp:change group 更改所属组

#chgrp user /tmp/test

#chown root:root /tmp/test 所有者和所属组同时更改

#chown -R user:user /tmp/test    //更改该目录下的所有者和所属组

 

3 umask命令

用户创建文件的默认权限是由umask设置,而系统规则中

普通文件最大权限是:rw-rw-rw-

目录的最大权限是:rwxrwxrwx

数字对应的值是:r(4),w(2),x(1)

而系统默认权限是需要减掉umask值

目录需要有x权限才能打开进入下一级,所以x作为默认预设值

普通文件权限:(rw-rw-rw-)-(----w-w-)=rw-r--r--(644)

目录权限:(rwxrwxrwx)-(----w-w-)=rwxr-xr-x(755)

默认的umask值,新建的目录权限是755,普通文件权限是644 

[root@worker1 lesson8]# umask
0022
[root@worker1 lesson8]# touch test.txt
[root@worker1 lesson8]# mkdir test
[root@worker1 lesson8]# ls -l
total 0
drwxr-xr-x 2 root root 6 Sep 14 18:09 test
-rw-r--r-- 1 root root 0 Sep 14 18:09 test.txt
[root@worker1 lesson8]#

更改了umask值为002后,新建的目录权限是775,普通文件权限是664

[root@worker1 lesson8]# umask 002
[root@worker1 lesson8]# touch test_mod.txt
[root@worker1 lesson8]# mkdir test_mod
[root@worker1 lesson8]# ls -l
total 0
drwxr-xr-x 2 root root 6 Sep 14 18:09 test
drwxrwxr-x 2 root root 6 Sep 14 18:16 test_mod
-rw-rw-r-- 1 root root 0 Sep 14 18:16 test_mod.txt
-rw-r--r-- 1 root root 0 Sep 14 18:09 test.txt
[root@worker1 lesson8]#

对于文件权限计算,有些人使用数字减

例如:

#umask 003

普通文件权限:666-003 = 663

实际:

普通文件权限:(rw-rw-rw-)-(-------wx)= rw-rw-r--(664)

为了避免这种问题出现,一般使用权限位减

(rw-rw-rw-)-(-------wx)= rw-rw-r--(664)

 

4 隐藏权限lsattr/chattr

命令chattr

修改文件的特殊权限属性

chattr +i 增加该属性后,文件不能删除、重命令、设定链接、写入及新增数据

chattr -i 减少i属性

chattr +a 增加该属性后,只能追加不能删除

chattr -a 减少a属性

普通文件属性操作

chattr +i  //对文件增加“i”属性操作实验

[root@worker1 lesson8]# touch file.txt
[root@worker1 lesson8]# ls
file.txt
[root@worker1 lesson8]# chattr +i file.txt //增加i属性
[root@worker1 lesson8]# rm file.txt //不能删除
rm: remove regular empty file ‘file.txt’? y
rm: cannot remove ‘file.txt’: Operation not permitted
[root@worker1 lesson8]# mv file.txt file1.txt //不能修改名字
mv: cannot move ‘file.txt’ to ‘file1.txt’: Operation not permitted
[root@worker1 lesson8]# mv file.txt /tmp/ //不能移动到别的目录
mv: cannot move ‘file.txt’ to ‘/tmp/file.txt’: Operation not permitted
[root@worker1 lesson8]# head -n 2 /etc/passwd > file.txt //不能添加内容
-bash: file.txt: Permission denied
[root@worker1 lesson8]# head -n 2 /etc/passwd >> file.txt //不能追加内容
-bash: file.txt: Permission denied
[root@worker1 lesson8]# lsattr //查看文件带有的隐藏属性
----i----------- ./file.txt
[root@worker1 lesson8]# chattr -i file.txt //去掉i属性
[root@worker1 lesson8]# lsattr
---------------- ./file.txt
[root@worker1 lesson8]#

chattr +a  //对文件增加“a”属性操作实验

[root@worker1 lesson8]# chattr +a file.txt //file.txt文件增加a属性
[root@worker1 lesson8]# ls
file.txt
[root@worker1 lesson8]# lsattr //查看file.txt文件隐藏属性
-----a---------- ./file.txt
[root@worker1 lesson8]# rm file.txt //file.txt不能被删除
rm: remove regular empty file ‘file.txt’? y
rm: cannot remove ‘file.txt’: Operation not permitted
[root@worker1 lesson8]# mv file.txt file1.txt //file.txt不能修改文件名字
mv: cannot move ‘file.txt’ to ‘file1.txt’: Operation not permitted
[root@worker1 lesson8]# mv file.txt /tmp/ //file.txt不能移动文件
mv: cannot move ‘file.txt’ to ‘/tmp/file.txt’: Operation not permitted
[root@worker1 lesson8]# head -n 2 /etc/passwd >> file.txt //可以追加内容到文件file.txt中
[root@worker1 lesson8]# cat file.txt //追加到file.txt的内容
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@worker1 lesson8]# chattr -a file.txt //减少file.txt的a属性
[root@worker1 lesson8]# lsattr //file.txt的a属性已经去除
---------------- ./file.txt
[root@worker1 lesson8]#

 

目录属性操作

chattr +i/a //目录分别增加“i”和“a”属性

[root@worker1 lesson8]# mkdir -p dir1/dir2 //创建目录dir1,dir2
[root@worker1 lesson8]# touch dir1/dir2/file2.txt //创建file2.txt文件
[root@worker1 lesson8]# chattr +i dir1/ //dir1增加i属性
[root@worker1 lesson8]# lsattr //查看隐藏属性
----i----------- ./dir1
[root@worker1 lesson8]# rm -r dir1/ //不能删除dir1,dir2目录,但file2.txt文件删除了
rm: descend into directory ‘dir1/’? y
rm: descend into directory ‘dir1/dir2’? y
rm: remove regular empty file ‘dir1/dir2/file2.txt’? y
rm: remove directory ‘dir1/dir2’? y
rm: cannot remove ‘dir1/dir2’: Permission denied
[root@worker1 lesson8]# tree
.
└── dir1
    └── dir2

2 directories, 0 files
[root@worker1 lesson8]# mv dir1/ dir/ //目录dir1不能修改名字
mv: cannot move ‘dir1/’ to ‘dir/’: Operation not permitted
[root@worker1 lesson8]# mv dir1/ /tmp/ //目录dir1不能移动
mv: cannot move ‘dir1/’ to ‘/tmp/dir1’: Operation not permitted
[root@worker1 lesson8]# touch dir1/file3.txt //dir1目录里不能新建file3.txt文件
touch: cannot touch ‘dir1/file3.txt’: Permission denied
[root@worker1 lesson8]# head -n 2 /etc/passwd > dir1/dir2/file2.txt //可以增加内容到file2.txt,前提是file2.txt存在
[root@worker1 lesson8]# cat dir1/dir2/file2.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@worker1 lesson8]# chattr -i dir1/ //dir1减少i属性
[root@worker1 lesson8]# chattr +a dir1/ //dir1增加a属性
[root@worker1 lesson8]# touch dir1/file3.txt //新建file3.txt
[root@worker1 lesson8]# head -n 2 /etc/passwd  > dir1/file3.txt //增加内容到file3.txt里
[root@worker1 lesson8]# cat dir1/file3.txt //已经增加的内容
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@worker1 lesson8]#

lsattr 命令

用于读取文件或目录的特殊权限

lsattr //当前不隐藏的文件和目录

lsattr -R //查看目录下所有目录和文

lsattr -d //只查看目录本身

lsattr -a //查看所有文件,包括隐藏文件都显示

[root@worker1 lesson8]# lsattr
---------------- ./dir1
[root@worker1 lesson8]# lsattr -R
---------------- ./dir1

./dir1:
---------------- ./dir1/dir2

./dir1/dir2:
---------------- ./dir1/dir2/file2.txt

---------------- ./dir1/file3.txt

[root@worker1 lesson8]# lsattr -d
---------------- .
[root@worker1 lesson8]# lsattr -a
---------------- ./.
---------------- ./..
---------------- ./dir1
[root@worker1 lesson8]#

 

 

 

ABAP_自定义屏幕07—下拉列表框 ABAP_自定义屏幕07—下拉列表框 完成以下:页面中有下拉列表框,下拉框value=系统表SCRR的值 1、实现方法A-常用 1.1 在主程序定义字段 TYPES:BEGIN OF type_carrid, carrid LIKE scarr-carrid,"航线代码 carrname LIKE scarr-carrname,"航向名称 END OF type_carrid. DATA g_it_carrid TYPE STANDARD TABLE OF type_carrid 阅读详情

相关推荐

postgresql 数据库 timescaledb 函数time_bucket_gapfill()报错解决及更换 license

最近在工作中使用postgresql 和 timescaledb 的time_bucket_gapfill()函数 报错,让更换license,在网上找了一大圈,没有找到,最后解决了这个问题,这篇文章记录我的解决办法查看timescaledb.license参数命令:show timescaledb.license;修改命令: 结果不行,报错如下:lter system set timescaledb.license=‘timescale’;那只能换包了如果出现上面那种情况,那我们只能先从官网上下载带 '

yang_z_1的博客 3249

linux学习 lesson8 文件传输打压解压

一.scp 什么是scp? scp简单的来说就是cp的升级版,它的作用是远程传输文件。 scp file user@ip:/dir ##上传 scp user@ip:file dir ##下载 ...

飞翔的罗老汉 284

ABAQUS单元刚度矩阵输出全攻略:从理论到实践(含MTX/DAT文件对比)

本文详细解析了ABAQUS中单元刚度矩阵的输出方法,涵盖理论原理、MTX与DAT文件格式对比及二次开发应用。通过具体操作步骤和性能优化建议,帮助用户高效获取并利用刚度矩阵数据,特别适合需要进行有限元分析验证和二次开发的工程师。

lg888的博客 1006

【Linux:lesson1】的基本指令

🔍🌷这是Linux的第一篇文章,用来介绍一下Linux环境下的基本指令,是Linux课程学习的第节课。后面会继续带来Linus课程学习的基本知识点。

路虽远,行则将至!事虽难,做则必成! 6298

AI 边缘计算控制器GEAC91

AI 边缘计算控制器GEAC91是AI边缘计算控制器是一款基于 NVIDIA Jetson AGX Xavier处理 器、面向智能边缘计算应用场景的解决方案。

weixin_45905610的博客 1198

详解一典型的反激式开关电源方案

如图,在某系统方案上看到下图所示的单端反激式开关电源方案。

alala120的博客 1万+

Linux学习lesson1

目录 1 学习之初 2 约定 3 认识linux 4 安装虚拟机 5 安装centos7 1 学习之初 预习和复习的重要性 当日事当日毕 记笔记(老王学习技巧 论坛) 利用好资源(vip群,论坛) 励志前辈经历 http://ask.apelearn.com/question/6597    2 约定 系统centos7.3系统 虚拟软件VMware workstat...

InfiniteIdea_Go的博客 503

从零构建:openEuler WSL下的ARM交叉编译工具链自动化部署方案

本文详细介绍了在openEuler WSL环境下使用Ansible自动化部署ARM交叉编译工具链的方案。通过编写Ansible角色和Playbook,实现从基础环境配置到工具链安装、环境变量设置的一键部署,大幅提升嵌入式开发效率。方案支持多种ARM架构,并扩展了QEMU仿真、VS Code远程开发等实用功能,是嵌入式开发者的高效解决方案。

h3i4j的博客 382

linux lesson8

Linux系统中常见的目录名称以及相应内容 /boot——开机所需文件-内核、开机菜单以及所需配置文件等 /dev——以文件形式存放任何设备与接口 /etc——配置文件 /home——用户主目录 /bin——存放单用户模式下还可以操作的命令 /lib——开机时用到函数库,以及/bin与/sbin下面的命令要调用的函数 /sbin——开机过程中需要的命令 /media——用于挂载设备文件的目录 /o...

executive 203

Zotero搭配CNKI.js插件:一键批量下载知网文献的完整教程(附常见问题解决)

本文提供Zotero搭配CNKI.js插件实现知网文献批量下载的完整教程。详细介绍了从环境准备、插件安装到实战操作的全流程,并针对常见问题提供解决方案,旨在帮助科研人员高效构建自动化文献管理工作流,显著提升文献收集与整理效率。

e4f5g6h7的博客 1201

3.1 5分钟搞定!Claude Code接入国产大模型完整教程(附代码)

摘要 本文提供了一份5分钟快速为Claude Code接入国产大模型的完整教程。首先介绍了系统环境要求(Windows/macOS/Linux、Node.js 18+、Python 3.8+),然后详细说明了三种安装Claude Code的方式(npm/yarn/pnpm)。重点讲解了两种国产大模型接入方案:通义千问(推荐)和文心一言,包括获取API密钥、安装SDK、创建MCP服务器、配置Claude Code等步骤。文中提供了详细的代码示例和配置文件模板,确保开发者能快速完成国产大模型的接入,降低使用成本

yonggeit的博客 7924

Lesson6 【LINUX】Linux系统快速上手

1 什么是Linux操作系统 现在三大常用的系统:Windows,Linux,IOS Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 Linux第一次正式向外公布的时间1991.10.5 我们通常说的Linux其实表示的是Linux内核。 人们基于Linux内

weixin_42752402的博客 797

YOLOv10精度上不去?QAT量化感知训练全流程,INT8推理mAP只掉0.8%

普通PTQ量化虽简单,但无法应对YOLOv10的小目标特征和激活分布波动,导致精度暴跌。QAT通过“模拟量化误差+联合优化权重与量化参数”,让INT8模型精度接近FP16,同时速度提升1.8倍,完美适配实时检测场景(如安防监控、自动驾驶)。该流程已在工业级项目中验证,针对YOLOv10的优化策略(敏感层保护、小目标加权、分阶段训练)可直接迁移至其他YOLO系列(v8/v9),量化后精度损失均可控制在1%以内。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 915

原创 linux下c++ lesson8 继承

1-继承的语法.cpp #include <iostream> #include <cstring> using namespace std; class Person //父类或者基类 { //private: protected: //保护权限:类的内部可以访问,派生类内部可以访问,类的外部不能访问 char name[32]; int age; pu...

Tyeat的博客 190

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

linux学习lesson3

目录   1 使用PuTTY远程连接Linux 2 使用xshell连接Linux 3 PuTTY密钥认证 4 xshell密钥认证 1 使用PuTTY远程连接Linux 1.1 putty下载地址: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 找到putty.zip包一起下载,根据自己系统位数...

InfiniteIdea_Go的博客 325

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【Linux lesson1】初识Linux系统

本文系统介绍了Linux操作系统的基础知识和核心概念,分为两大部分。第一部分详细讲解了Linux常用基本指令及其使用方法,包括网络配置、文件与目录操作、文件管理、文本搜索、压缩工具以及文件传输工具。每个指令都提供了语法说明和常用选项,帮助用户快速掌握日常操作。第二部分深入解析了权限管理机制,包括用户分类、权限的表示方法权限修改命令以及权限对不同文件类型的影响。特别强调了粘滞位的概念,解释了其在防止非拥有者删除文件中的重要性。整体内容结构清晰,便于初学者理解和应用Linux系统管理技能。

Dumpling527的博客 1168

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

linux学习lesson32

目录 1 监控io性能 2 free命令 3 ps命令 4 查看网络状态 5 linux下抓包 1 监控io性能 iostat -x  磁盘使用 [root@worker1 ~]# iostat -x Linux 3.10.0-327.el7.x86_64 (worker1) 10/15/2018 _x86_64_ (2 CPU) avg-cpu: %us...

InfiniteIdea_Go的博客 397

linux学习lesson36

目录 1 linux任务计划cron 2 chkconfig工具 3 systemd管理服务 4 unit介绍 1 linux任务计划cron Linux任务计划功能的操作都是通过crontab命令来完成的,常用的参数有: -u:表示指定某个用户,不加-u选项则为当前用户 -e:表示制定计划任务 -l:表示列出计划任务 -r:表示删除计划任务 编写任务计划的格式 [ro...

InfiniteIdea_Go的博客 729

学习笔记 Lesson #8

在Linux系统中,目录、字符设备、套接字、硬盘、光驱、打印机等都会被抽象成了文件形式,即刘遄老师所一直强调的“Linux系统中一切都是文件”。既然平时我们打交道的都是文件,那么又应该如何找到它们呢?在Windows操作系统中,想要找到一个文件,要依次进入该文件所在的磁盘分区(也叫盘符),然后再进入该分区下的具体目录,最终找到这个文件。但是在Linux系统中并不存在C/D/E/F等盘符,Linux系统中的一切文件都是从“根(/)”目录开始的,并按照文件系统层次化标准(FHS:Filesystem Hiera

casen的博客 122

linux学习lesson13

目录 1 su命令 2 sudo命令 3 限制root远程登录 1 su命令 命令su的格式为su [-] username,-表示把该用户的环境变量也切换 [root@worker1 ~]# su - user3 Last login: Wed Sep 19 06:45:53 CST 2018 on pts/1 [user3@worker1 ~]$ whoami user3 ...

InfiniteIdea_Go的博客 516

[Linux基础——Lesson8.分布式版本控制工具Git]

本文介绍了分布式版本控制工具Git的开发背景、特点及应用。Git由Linux之父Linus Torvalds开发,用于高效管理项目版本,具有分布式管理、速度快等功能。文章通过大学生实验报告、/程序员与产品经理等生活ide案例,生动解释了Git的版本管理原则。最后详细讲解了如何在Linux上使用Git三板斧(add、commit、push)完成代码托管和版本管理,并介绍了相关指令操作。Git作为现代软件开发的重要工具,其设计理念和操作方法值得每个开发者掌握。

2401_83386596的博客 812

linux学习lesson33

目录 1 linux网络相关 2 firewalld和netfilter 3 netfilter5表5链介绍 4 iptables语法 1 linux网络相关 ifconfig查看网卡ip(yum install net-tools) [root@worker1 ~]# yum install -y net-tools ip addr查看网卡ip [root@worker1 ~]...

InfiniteIdea_Go的博客 704

linux学习lesson28

目录 1 awk命令 1 awk命令 拷贝练习文件 [root@worker1 dir9]# cp /etc/passwd ./testpasswd 打印第一个字段 [root@worker1 dir9]# head -n2 testpasswd | awk -F ':' '{print $1}' ROOT bin 打印整行 [root@worker1 dir9]# head -n...

InfiniteIdea_Go的博客 250

linux学习lesson21

目录 1 安装软件包的三种方法 2 rpm包介绍 3 rpm工具用法 4 yum工具用法 5 yum搭建本地仓库 1 安装软件包的三种方法 rpm工具 RPM包是预先在Linux机器上编译并打包的文件,安装非常快捷。但它也有一些缺点,比如安装环境必须与编译时的环境一致或者相当,包与包之间存在着相互依赖的情况,卸载包时需要先把依赖的包卸载。如果依赖的包是系统所必需的,就不能卸载这个包,...

InfiniteIdea_Go的博客 442

linux学习lesson59

文章目录1 tomcat介绍2 安装jdk3 安装tomcat扩展 1 tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 java程序写的网站用tomcat+jdk来运行 tomcat是一个中间件,真正起作用的,解析java脚本的是jdk j...

InfiniteIdea_Go的博客 264

linux学习lesson68

文章目录1.添加自定义监控项目2.配置邮件警告3.测试警告4.不发邮件的问题处理 1.添加自定义监控项目 需求:监控某台web的80端口连接数,并出图 两步:1)zabbix监控中心创建监控项目;2)针对该监控项目以图形展现 对于第一步,需要到客户端定义脚本 [root@linux02 ~]# vim /usr/local/sbin/estab.sh //内容如下 #!/bin/bash ##...

InfiniteIdea_Go的博客 407
上一篇: linux学习lesson7
下一篇: linux学习lesson9
InfiniteIdea_Go
博客等级 码龄8年 3粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值