diff --git "a/54 \345\274\240\351\276\231\350\205\276/20240515 \345\210\235\350\257\206Linux.md" "b/54 \345\274\240\351\276\231\350\205\276/20240515 \345\210\235\350\257\206Linux.md" new file mode 100644 index 0000000000000000000000000000000000000000..13b43effb2847e61a3a2b3e3e468140a7574a0ea --- /dev/null +++ "b/54 \345\274\240\351\276\231\350\205\276/20240515 \345\210\235\350\257\206Linux.md" @@ -0,0 +1,39 @@ +# Linux + +Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统 + +有centos,debian,redhat等 + +### 命令: + +查看IP:IP address show + +更新软件库:apt-get update + +apt-get install net-tools + +安装vim编辑器,默认的是vi编辑器 apt-get install vim : vi 文件名,变成vim 文件名 + +安装ssh:apt-get install ssh + +vim /etc/ssh/sshd_cofnig :修改/etc/ssh/sshd.config 文件 + +开22端口:prot 22 + +允许root登录为yes:PermitRootLogin yes + +启用密码验证功能 :PasswordAuthentication yes + +不允许空密码登录:PermitEmptyPassword no + +// 用sudo 命令,但这个默认是没安装。自己安装 apt-get isntall sudo + +su root 更换给root模式 + +sudo vim /etc/sudoers + + + +# ssh连接 + +![SSH连接](./初识Linux/SSH连接.png) \ No newline at end of file diff --git "a/54 \345\274\240\351\276\231\350\205\276/20240517 Linux\345\221\275\344\273\244.md" "b/54 \345\274\240\351\276\231\350\205\276/20240517 Linux\345\221\275\344\273\244.md" new file mode 100644 index 0000000000000000000000000000000000000000..20bc999f59bfba431574a312b94a209a30c4a52b --- /dev/null +++ "b/54 \345\274\240\351\276\231\350\205\276/20240517 Linux\345\221\275\344\273\244.md" @@ -0,0 +1,116 @@ +# Linux命令 + + + +## 一、Linux debian的根目录 + +登录系统后,在当前命令窗口下输入命令: + +``` + ls / +``` + +你会看到如下图所示: + +![根目录1](./Linux根目录/根目录1.png) + + + +![根目录2](./Linux根目录/根目录2.png) + + + + + +以下是对这些目录的解释: + +- **/bin**: + bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 + +- **/boot:** + 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 + +- **/dev :** + dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 + +- **/etc:** + etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 + +- **/home**: + 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 + +- **/lib**: + lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。 + +- **/lost+found**: + 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 + +- **/media**: + linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。 + +- **/mnt**: + 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 + +- **/opt**: + opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 + +- **/proc**: + proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 + 这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器: + + ``` + echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all + ``` + +- **/root**: + 该目录为系统管理员,也称作超级权限者的用户主目录。 + +- **/sbin**: + s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 + +- **/selinux**: + 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 + +- **/srv**: + 该目录存放一些服务启动之后需要提取的数据。 + +- **/sys**: + + 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。 + + sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。 + + 该文件系统是内核设备树的一个直观反映。 + + 当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。 + +- **/tmp**: + tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 + +- **/usr**: + usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 + +- **/usr/bin:** + 系统用户使用的应用程序。 + +- **/usr/sbin:** + 超级用户使用的比较高级的管理程序和系统守护程序。 + +- **/usr/src:** + 内核源代码默认的放置目录。 + +- **/var**: + var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 + +- **/run**: + 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 + +在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。 + +**/etc**: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。 + +**/bin, /sbin, /usr/bin, /usr/sbin**: 这是系统预设的执行文件的放置目录,比如 **ls** 就是在 **/bin/ls** 目录下的。 + +值得提出的是 **/bin**、**/usr/bin** 是给系统用户使用的指令(除 root 外的通用用户),而/sbin, /usr/sbin 则是给 root 使用的指令。 + +**/var**: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里。 diff --git "a/54 \345\274\240\351\276\231\350\205\276/20240520 Linux\344\275\234\344\270\232.md" "b/54 \345\274\240\351\276\231\350\205\276/20240520 Linux\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..638ce6baf141593a958761997f87473a65b99cd6 --- /dev/null +++ "b/54 \345\274\240\351\276\231\350\205\276/20240520 Linux\344\275\234\344\270\232.md" @@ -0,0 +1,130 @@ + 0.缺少什么就下载什么 apt-get install xxx + +1. 新建一个用户,密码设置 + + ~~~ shell + #方法一(建议) + root 下 + adduser+用户名 + 非root下 + sudo adduser+用户名 + #方法二(不带参数创建) + 非root下 + sudo useradd+用户名 + 需要设置密码等 + sudo passwd 用户名 + + ~~~ + + 1.1 + + ~~~ shell + 删除用户 + + #删除用户包括目录 + deluser +用户名 + #仅删除用户 + userdel +用户名 + ~~~ + + + +2. 以刚建的用户登录,操作以下 + + ~~~ shell + sudo login+用户名 + ~~~ + + + +3. 使用命令,在自己的家目录,以以下层次依次建立文件夹 + 1. 国家 + 1. 省份 + 1. 市 + 1. 县(区) + 1. 镇(街道) + 1. 村(小区) + 1. 姓名 + + ~~~ shell + #创建目录 + 进入home目录 + 创建目录 mkdir 国家/省份/市/县/镇/村/姓名 -p + -p 表示parent + + #查看目录 + 然后cd /国家/省份/市/县/镇/村/姓名 + + + + ~~~ + + + +4. 在姓名文件夹,建立一个自己的学号姓名文件 + + ~~~ shell + touch 2244310322张龙腾.txt + ~~~ + + + +5. 在这个文件中,写一篇不少于400字的日记 + +~~~ shell +vim 2244310322张龙腾.txt +~~~ + + + +1. 最后,将国家这个文件夹打包,同时练习怎么解压 + +~~~ shell +#由于没有zip压缩包,所以要先进行下载 +输入su进入管理员 +然后输入 +apt-get install zip 进行安装zip + +#压缩文件 +打包文件夹 +zip[参数][打包后文件夹的名字][打包的目录路径] +#例子 +zip -r 苏晓 /home/suxiao/国家 +之后会弹出信息表示压缩 + +#解压缩 +unzip 需要解压的压缩包 -d 指定文件解压缩后所要存储的目录。 +#例子 +unzip 苏晓.zip -d /home/suxiao +# -d +-d<目录> 指定文件解压缩后所要存储的目录。 +~~~ + + + +1. 使用命令将这个压缩包下载到本地电脑【不能用shell里自带的下载功能】 + +~~~shell +#发到本地电脑,以发到桌面为例子 +#方法1 +#用本地的电脑进行 +scp -r 用户名@服务器地址:/文件的位置 /本地的位置 +C:\Users\Administrator>scp -r test@123.60.104.13:/home/test/2244310322.zip /Users/Administrator/Desktop + +#方法2 +#使用lrzsz进行下载 +首先需要先安装sudo和lrzsz否则下载不了 +sudo apt-get install sudo/lrzsz +下载到本地 +sz 2244310322.zip + +#mv修改文件名 +mv a.txt a1.txt + +~~~ + + + +1. 相关命令百度预习 +2. 命令参考 https://www.linuxcool.com/ +3. 相关过程,做成笔记 \ No newline at end of file diff --git "a/54 \345\274\240\351\276\231\350\205\276/20245022 \346\226\207\344\273\266\345\244\271\345\217\212\346\226\207\344\273\266\347\256\241\347\220\206\347\232\204\351\242\204\344\271\240\344\275\234\344\270\232.md" "b/54 \345\274\240\351\276\231\350\205\276/20245022 \346\226\207\344\273\266\345\244\271\345\217\212\346\226\207\344\273\266\347\256\241\347\220\206\347\232\204\351\242\204\344\271\240\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..82eb34167af8514ecae49fddcb6add540b39444e --- /dev/null +++ "b/54 \345\274\240\351\276\231\350\205\276/20245022 \346\226\207\344\273\266\345\244\271\345\217\212\346\226\207\344\273\266\347\256\241\347\220\206\347\232\204\351\242\204\344\271\240\344\275\234\344\270\232.md" @@ -0,0 +1,181 @@ +1. ### 综合练习题:大学生生活场景中的文件夹和文件管理 + + 假设你是一名大学生,现在面临着整理学习资料和课程作业的任务。请按照以下要求完成相关的文件夹和文件管理操作: + + 1. 在你的个人文档目录下创建一个名为`学习资料`的文件夹,并进cd 入该文件夹。 + + ~~~ shell + su@hecs-169541:~$ mkdir 个人文档 + su@hecs-169541:~$ cd 个人文档/ + su@hecs-169541:~/个人文档$ + # 删除 + su@hecs-169541:~$ sudo rm -r 个人文档/ + + su@hecs-169541:~/个人文档$ mkdir 学习资料 + su@hecs-169541:~/个人文档$ cd 学习资料/ + + ~~~ + + + + 2. 在`学习资料`文件夹中创建一个名为`计算机科学`的文件夹。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料$ mkdir 计算机科学 + su@hecs-169541:~/个人文档/学习资料$ cd 计算机科学/ + ~~~ + + + + 3. 在`计算机科学`文件夹中创建两个子文件夹,分别命名为`课程资料`和`编程项目`。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学$ mkdir 课程资料 + su@hecs-169541:~/个人文档/学习资料/计算机科学$ mkdir 编程项目 + ~~~ + + + + 1. 将你最近的一门计算机科学课程的课件文件(假设文件名为`CS101_第一讲.pdf`)放入`课程资料`文件夹。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学$ rz + rz waiting to receive.**0080000000dd38 + + su@hecs-169541:~/个人文档/学习资料/计算机科学$ cp CS101_, /home/su/个人文档/学 习资料/计算机科学/课程资料 + ~~~ + + + + 2. 在`编程项目`文件夹中创建一个名为`Java项目`的文件夹。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目$ mkdir java项目 + ~~~ + + + + 3. 在`Java项目`文件夹中创建两个空文件,分别命名为`主程序.java`和`工具类.java`。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ touch 主程序.java + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ touch 工具类.java + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ ls + 主程序.java 工具类.java + + ~~~ + + + + 4. 复制`主程序.java`并命名为`备份_主程序.java`。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ cp 主程序.java 备份_主程序.java + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ ls + 主程序.java 备份_主程序.java 工具类.java + + ~~~ + + + + 5. 创建一个名为`Python项目`的文件夹,并将`工具类.java`移动到`Python项目`文件夹中。 + + ~~~ shell + u@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ mkdir Python项目 + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ ls + Python项目 主程序.java 备份_主程序.java 工具类.java + + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ mv 工具类.java Python项目/ + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ cd Python项目/ + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目/Python项目$ ls + 工具类.java + ~~~ + + + + 6. 列出`计算机科学`文件夹中所有文件和文件夹的内容。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目/Python项目$ cd .. + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目/java项目$ cd .. + su@hecs-169541:~/个人文档/学习资料/计算机科学/编程项目$ cd .. + su@hecs-169541:~/个人文档/学习资料/计算机科学$ ls -R + .: + CS101_, 编程项目 课程资料 + + ./编程项目: + java项目 + + ./编程项目/java项目: + Python项目 主程序.java 备份_主程序.java + + ./编程项目/java项目/Python项目: + 工具类.java + + ./课程资料: + CS101_, + su@hecs-169541:~/个人文档/学习资料/计算机科学$ + + ~~~ + + + + 7. 删除`编程项目`文件夹及其包含的所有内容。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学$ rm -r 编程项目 + ~~~ + + + + 8. 重命名`Python项目`为`数据分析项目`。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/课程资料$ ls + CS101_, Python项目 + su@hecs-169541:~/个人文档/学习资料/计算机科学/课程资料$ mv Python项目 数据分析项目 + su@hecs-169541:~/个人文档/学习资料/计算机科学/课程资料$ ls + CS101_, 数据分析项目 + + ~~~ + + + + 9. 最后,列出当前所在目录的路径。 + + ~~~ shell + su@hecs-169541:~/个人文档/学习资料/计算机科学/课程资料$ pwd + /home/su/个人文档/学习资料/计算机科学/课程资料 + + ~~~ + + + + + + + +用到的命令 + +~~~ shell +#touch 创建文件 +touch 文件类型 + +#mkdir 创建文件夹(目录) +mkdir 参数 文件夹名称 + +#cp 复制并修改名字 +cp 复制的文件名称 新文件的名称 + +#mv 重命名 mv +mv 源文件的名称 新名称 + +#rm 删除 +rm -r 源文件名称 + +#查看当前文件夹中所有文件和子目录的内容 +ls -R +~~~ + + + diff --git "a/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2251.png" "b/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2251.png" new file mode 100644 index 0000000000000000000000000000000000000000..ae6b1bd113118fe1ec4a632009c74f2ec9807fd6 Binary files /dev/null and "b/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2251.png" differ diff --git "a/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2252.png" "b/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2252.png" new file mode 100644 index 0000000000000000000000000000000000000000..420bce0b380d75d3932d795f2b4107b126ebbf51 Binary files /dev/null and "b/54 \345\274\240\351\276\231\350\205\276/Linux\346\240\271\347\233\256\345\275\225/\346\240\271\347\233\256\345\275\2252.png" differ diff --git "a/54 \345\274\240\351\276\231\350\205\276/\345\210\235\350\257\206Linux/SSH\350\277\236\346\216\245.png" "b/54 \345\274\240\351\276\231\350\205\276/\345\210\235\350\257\206Linux/SSH\350\277\236\346\216\245.png" new file mode 100644 index 0000000000000000000000000000000000000000..af0c821c972d3a62ad4a172e096ffcf52804995b Binary files /dev/null and "b/54 \345\274\240\351\276\231\350\205\276/\345\210\235\350\257\206Linux/SSH\350\277\236\346\216\245.png" differ