以下有免费的4090云主机提供ubuntu22.04系统的其他入门实践操作
地址:星宇科技 | GPU服务器 高性能云主机 云服务器-登录
相关兑换码星宇社区---4090算力卡免费体验、共享开发社区-CSDN博客
兑换码要是过期了,可以私信我获取最新兑换码!!!
之所以推荐给大家使用,是因为上面的云主机目前是免费使用的,不需要大家再去安装虚拟机,部署虚拟机,环境都搭配好了,非常适合新手入门,减少搭建的时间,把时间都用在实践上。
权限管理
Linux 的传统权限管理是文件系统给每个对象贴的一张“三人标签”:文件所有者、所属组、其他人,各自再配“读-写-执行”三个开关。系统按 UID→GID→Other 的顺序一次性匹配,命中即停。学会这套机制,你就能看懂 ls -l 那串字符,知道为什么别人能 cat 你的脚本却不能改你的配置;能用 chmod 755 把一个 Web 目录既让 Nginx 读得动,又防止访客上传木马;还能用 chown 把开发机上的项目扔给 CI 用户而不影响 root 的密钥。掌握它,等于拿到了 Linux 世界的“门禁卡”,日常 80 % 的权限疑问都能用 rwx 数字法或符号法一句话解决,不再到处喊“我明明有权限却打不开”。
chown:改变文件或目录的所属主以及所属组
chown :(chown 属主.属组 文件名)
chown alice.hr file1.txt //修改属主、属组
chown tom file1.txt //修改属主
chown .it file1.txt //只改属组
chmod : 更改权限
基本权限类型:
读 :r ----> 4
写 :w ----> 2
执行: x(exec) -----> 1
chmod -R a=rwx dir1 //递归更改目录及其中文件的权限
1、使用符号
chmod u+x file1.txt //属主增加执行
chmod a=rwx file1.txt //所有人等于读写执行
chmod a=- file1.txt //所有人都没有权限
chmod ug=rw,o=r file1.txt //属主属组等于读写,其他人只读
ll
#输出的消息 -rw-rw-r--. 1 tom it 0 Nov 1 15:30 file1.txt
2、使用数字
chmod 644 file1.txt
ll file1.txt
#输出的信息 -rw-r--r--. 1 tom it 0 Nov 1 15:30 file1.txt
chmod 755 file1.txt
ll
#输出的信息 -rwxr-xr-x 1 root root 0 Jul 23 22:40 file1.txt
chmod 521 file1.txt
ll
#输出的信息 -r-x-w---x 1 root root 0 Jul 23 22:40 file1.txt
chgrp : 更改属组
chgrp hr file1.txt //更改文件file1.txt所属组为hr
chgrp -R hr dir1 //递归更改目录dir1及其中文件所属组为hr
ACL权限
ACL 权限是传统 rwx 的“补丁包”,它在同一文件上再挂一张扩展表,允许你给任意用户或任意组单独加、减权限,而不动原来的三位主人。语法是 setfacl -m u:alice:rw file,意思是除了文件主以外再给 alice 读写权;加 -d 还能让目录里的新文件自动继承规则。学会 ACL,你就能在多成员协作的服务器里优雅地解决“财务组只看报表、开发组可改代码、实习生只能读日志”这种细粒度需求;能在 Samba/NFS 共享里避免把所有人都塞进一个臃肿的组;还能在备份恢复时通过 getfacl/setfacl 一键还原原来那套复杂权限。一句话:有了 ACL,不再为“多给一个用户开小灶就要整组改权限”而抓狂,Linux 共享目录从此像 Windows 一样灵活。
getfacl :查看文件或目录当前设定的 ACL 权限信息
getfacl 文件名
setfacl :直接设定用户或群组对指定文件的访问权限
setfacl -m:给用户或群组添加 ACL 权限
chattr:文件隐藏属性
touch file1 file2 file3
1、查看文件属性
lsattr file1 file2 file3 #查看文件隐藏属性
#以下为输出信息
---------------- file1
---------------- file2
---------------- file3
2、设置权限
chattr +a file1 #不允许修改,只允许追加
chattr +i file2 #不允许做任何操作
chattr +A file3
lsattr file1 file2 file3#以下为输出信息
-----a---------- file1
----i----------- file2
-------A-------- file3
i:即Immutable,系统不允许对这个文件进行任何的修改
a:即Append Only,系统只允许在这个文件之后追加数据,不允许任何覆盖或截断这个文件
A:即Atime,告诉系统不要修改对这个文件的最后访问时间
#取消权限
chattr -a file1
chattr -i file2
管道与重定向
管道与重定向是 Linux 命令行的“水流系统”。管道符 | 把前一个命令的标准输出直接接到下一命令的标准输入,像接力棒一样让数据在内存里流动;重定向符号 >、<、2>、&> 则把输入源或输出目的地换成文件或设备。学会它们,就能把 cat big.log | grep ERROR | sort | uniq -c | tee result.txt 这样一条流水线写得行云流水:既实时看到统计结果,又自动保存到文件;能把编译警告 2>warn.log 和正常输出分开存放,排错不再刷屏;还能用 < <(command) 这种进程替换把命令输出临时伪装成文件,给只能读文件的老程序喂数据。掌握管道与重定向,就拥有了把无数小工具拼装成瑞士军刀的能力,日常运维、数据分析、日志审计都能少写大量临时脚本,效率成倍提升。
awk:过滤并输出文件中符合条件的内容
awk -F "分隔符" '{print $第几列}'
cat /home/aaa
sdjlasjlk
asldjasjlkdasjl
grep 'sd' /home/aaa | awk -F "j" '{print $2}'#过滤aaa中的一行内容然后将结果通过管道传递给awk,过滤并输出以j为分隔符的第二列内容
las
sort: 排序
sort -t":" -k3 -n /etc/passwd #以: 分隔,将第三列按字数升序
sort -t":" -k3 -n /etc/passwd -r #以: 分隔,将第三列按字数降序
sort -t":" -k3 -n /etc/passwd |head #以: 分隔,将第三列按字数升序看前十行
sort -t":" -k3 -n /etc/passwd |tail #以: 分隔,将第三列按字数升序看后十行
参数详解:
sort 排序,默认升序
-t 指定分隔符
-k 指定列
-n 按数值
-r 降序
head 默认输出前十行
tail 默认输出后十行
xargs:参数传递
对与 ls cp rm mv命令,管道不能执行。所以通过xargs实现。
语法:
cat a.txt | xargs -i cp {} /目录
{}:前面传过来的内容
-i :为了让大括号生效
目录时 -r
解释:前面传过来的东西交给大括号
cat file.txt |xargs ls -l
前面是目录或者目录的路径。 ls - l 后面可以不加大括号,直接执行。
touch /home/file{1..5}
cat files.txt | xargs -i cp -rvf {} /tmp/#以下为输出信息
‘/home/file1’ -> ‘/tmp/file1’
‘/home/file2’ -> ‘/tmp/file2’
‘/home/file3’ -> ‘/tmp/file3’
‘/home/file4’ -> ‘/tmp/file4’
‘/home/file5’ -> ‘/tmp/file5’
后续更新请及时关注吧
请各位帅哥美女们多多支持!!小花花小心心 更多入门知识慢慢补充啦
后期持续关注!