当前位置: 首页 > article >正文

Ubuntu Debian 系统下挂载 Samba 共享目录的完整指南

文章目录

  • Ubuntu & Debian 系统下挂载 Samba 共享目录的完整指南
    • 前提条件
    • 挂载 Samba 共享
      • 临时挂载
      • 避免明文密码
      • 永久挂载
    • 常见选项
    • 卸载
    • 故障排查

Ubuntu & Debian 系统下挂载 Samba 共享目录的完整指南

想把NAS中的内容通过Samba挂载到 OrangePi 5B,但是 OrangePi 5B 提供的内核默认是没有开启 CONFIG_CIFS的,所以就整理了一下。

在 Ubuntu/Debian 系统上挂载 Samba 共享目录可以通过 mount 命令结合 cifs 文件系统类型实现。以下是具体步骤和示例:

前提条件

  1. 确保系统已安装 cifs-utils 软件包。如果未安装,可以运行:

    sudo apt update
    sudo apt install cifs-utils
    
  2. 确认你有 Samba 服务器的 IP 地址或主机名、共享目录名称,以及访问所需的用户名和密码(如果需要认证)。

挂载 Samba 共享

临时挂载

使用以下命令临时挂载 Samba 共享目录:

sudo mount -t cifs //SMB_SERVER_IP/SHARE_NAME /mnt/smb -o username=YOUR_USERNAME,password=YOUR_PASSWORD
  • //SMB_SERVER_IP/SHARE_NAME:Samba 服务器地址和共享目录名,例如 //192.168.1.100/share
  • /mnt/smb:本地挂载点(需提前创建,例如 sudo mkdir /mnt/smb)。
  • -o username=YOUR_USERNAME,password=YOUR_PASSWORD:访问共享的用户名和密码。

示例:

sudo mkdir /mnt/smb
sudo mount -t cifs -o username=admin,password=123456 //192.168.1.100/share /mnt/smb

挂载成功后,可用 ls /mnt/smb 查看共享目录内容。

避免明文密码

为安全起见,避免在命令行输入密码,可以使用凭据文件:

  1. 创建凭据文件,例如 /etc/smb_credentials

    sudo nano /etc/smb_credentials
    

    输入以下内容:

    username=YOUR_USERNAME
    password=YOUR_PASSWORD
    

    保存并退出,然后设置权限:

    sudo chmod 600 /etc/smb_credentials
    
  2. 修改挂载命令:

    sudo mount -t cifs-o credentials=/etc/smb_credentials //192.168.1.100/share /mnt/smb
    

永久挂载

要实现开机自动挂载,编辑 /etc/fstab

  1. 打开文件:

    sudo nano /etc/fstab
    
  2. 添加一行:

    //192.168.1.100/share  /mnt/smb  cifs  credentials=/etc/smb_credentials,uid=1000,gid=1000  0  0
    
    • uid=1000,gid=1000:指定文件拥有者和组(用 id 查看当前用户 UID 和 GID)。
    • 确保 /mnt/smb 已存在。
  3. 保存退出后,测试挂载:

    sudo mount -a
    

常见选项

  • rw:读写权限(默认)。
  • ro:只读权限。
  • vers=3.0:指定 SMB 协议版本(视服务器支持情况而定)。
  • file_mode=0644,dir_mode=0755:设置文件和目录默认权限。

示例(指定协议版本):

sudo mount -t cifs -o credentials=/etc/smb_credentials,vers=3.0 //192.168.1.100/share /mnt/smb

卸载

卸载 Samba 共享:

sudo umount /mnt/smb

故障排查

  • 挂载失败时,检查网络连接(ping SMB_SERVER_IP)。

  • 查看日志:sudo tail -f /var/log/syslog

  • 确保 Samba 服务器允许你的 IP 访问,且防火墙未阻止端口 445 或 139。

  • mount error: cifs filesystem not supported by the system

    1. 检查并安装 cifs-utils

    2. 检查内核是否支持 CIFS

      CIFS 是一个内核级别的文件系统,挂载需要内核加载 cifs 模块。运行以下命令检查是否已加载:

      lsmod | grep cifs
      
      • 如果有输出,说明 cifs 模块已加载。

      • 如果没有输出,尝试手动加载:

        sudo modprobe cifs
        

        再次运行 lsmod | grep cifs 确认模块是否加载成功。如果加载失败或仍无输出,可能需要检查内核支持情况。

    3. 验证内核是否编译了 CIFS 支持

      如果 modprobe cifs 返回错误(如 modprobe: FATAL: Module cifs not found),可能是你的内核未编译 CIFS 支持。你可以检查当前内核的配置文件:

      zcat /proc/config.gz | grep CONFIG_CIFS
      
      • 如果输出包含 CONFIG_CIFS=m 或 CONFIG_CIFS=y,说明内核支持 CIFS。
      • 如果输出是 CONFIG_CIFS is not set 或没有输出,说明当前内核未启用 CIFS。(到这那就只能重新编译内核了)

相关文章:

Ubuntu Debian 系统下挂载 Samba 共享目录的完整指南

文章目录 Ubuntu & Debian 系统下挂载 Samba 共享目录的完整指南前提条件挂载 Samba 共享临时挂载避免明文密码永久挂载 常见选项卸载故障排查 Ubuntu & Debian 系统下挂载 Samba 共享目录的完整指南 想把NAS中的内容通过Samba挂载到 OrangePi 5B,但是 Ora…...

蓝桥杯2023年第十四届省赛真题-异或和之差

题目来自DOTCPP: 思路: 什么是异或和? ①题目要求我们选择两个不相交的子段,我们可以枚举一个分界线i,子段1在 i 的左边, 子段2在 i 的右边,分别找到子段1和子段2的最大值、最小值。 ②怎么确…...

考研课程安排(自用)

文章目录 408数据结构(王道)计算机组成原理(王道)操作系统(王道)计算机网络(湖科大版) 数学一高等数学(微积分)线性代数和概率论 408 数据结构(王…...

linux命令行工具进阶

文章目录 前言ssh免密登录,免密码登录,公私钥查看与修改IP地址临时修改永久修改 mount临时切换根文件系统永久切换根文件系统loop文件partedinitramfsuboot command line总结 前言 本文记录了一些不经常用到,但在某个时刻需要用到的一些指令…...

Linux系统管理实战:文件权限配置、用户组协作与日志处理全解析

1、创建/www目录,在/www目录下新建name和https目录,在name和https目录下分别创建一个index.html文件,name下面的index.html文件中包含当前主机的主机名,https目录下的index.html文件中包含当前主机的ip地址。 (1&…...

[自动化] 【八爪鱼】使用八爪鱼实现CSDN文章自动阅读脚本

在CSDN上,文章的阅读量往往是衡量内容影响力的一个重要指标。为了测试自动化手段能否提高阅读数,我尝试使用网页自动化工具来模拟人工阅读某个ID的文章。 1. 网页自动化的常见方案 谈到网页自动化,Selenium 是一个最常见的选择。它可以通过…...

Go语言分布式锁实战:dlock助力构建高并发稳定系统

在构建分布式系统时,一个常见且棘手的问题便是资源竞争和数据一致性问题。分布式锁作为一种常用的解决方案,在多个进程或节点之间协调访问共享资源时显得尤为重要。今天,我们将介绍一款分布式锁库——dlock,并通过详细的使用示例带…...

如何提高G口服务器的安全性?

G口服务器可以支持千兆网络传输速度,能够为企业提供更快的数据处理能力和传输能力,随着网络流量的不断增长以及复杂计算任务的普及,企业对于网络带宽的要求也在相应提高,而G口服务器则可以降低网络的延迟度,大幅度提高…...

为没有CMake配置的第三方库添加CMake配置

1 编写CMakeLists.txt cmake_minimum_required(VERSION 3.15) #如果你第三方库和自己的库没有xxxConfig.cmake #请修改项目名称和命名空间(一般不需要) project("pthreads" LANGUAGES C CXX) set(KC_NAMESPACE "") #set(K…...

Linux驱动编程 - seq_open、single_open使用方法

目录 前言: 一、seq_xxx 1、seq_xxx 函数介绍 1.1 seq_open 1.2 seq_read 1.3 seq_lseek 1.4 seq_release 1.5 格式化输出函数 2、seq_open 实例 二、single_xxx 函数 1、single_xxx 函数介绍 1.1 single_open 1.2 single_start 1.3 single_next 1.4 single_stop…...

N列股票收盘价为起点的马科维茨(Markowitz)均值—方差理论

1. 数据准备与收益率计算 输入数据: 假设你有一个矩阵,每一列代表一只股票的历史收盘价序列。每一行对应一个时间点的收盘价。 计算收益率: 马科维茨理论要求使用资产的收益率而非价格。常用的收益率计算方法有对数收益率或简单收益率。 2.…...

【嵌入式学习2】函数

目录 ## 函数 ## 函数分类 ## 函数定义 1、无参数无返回值 2、有参数无返回值 3、有参数有返回值 ## 函数声明 ## 局部变量和全局变量 ## 多文件编程 如何避免把同一个头文件 include 多次,或者头文件嵌套包含? 命令行编译文件 头文件包含的…...

模式搜索+扩散模型:FlowMo重构图像Token化的技术革命

图像Token化作为现代生成式AI系统的核心技术,长期面临对抗性训练不稳定、潜在空间冗余等挑战。斯坦福大学李飞飞与吴佳俊团队提出的FlowMo(Flow towards Modes)创新性地融合模式搜索与扩散模型,在多个关键维度突破传统方法局限&am…...

mac brew 安装的php@7.4 打开redis扩展

1. 找到php7.4的pecl目录 一般在这个位置 cd /usr/local/Cellar/php7.4/7.4.33_8/pecl/20190902 ls 一下 有个 redis.so 于是 直接去php.ini编辑了 php.ini的路径 vim /usr/local/etc/php/7.4/php.ini 把938行添加进去 然后重启一下 php7.4 brew services restart ph…...

OSPF多区域通信

作业要求: 1、多区域0SPF area 0、area10、are20 2、AR5、AR6作为stub区&#xff0c;使用环回接口与Pc1进行通信 第一步&#xff1a;为各端口配置IP地址 AR1: <Huawei>sys [Huawei]int g0/0/0 [Huawei-GigabitEthernet0/0/0]ip add 5.5.5.1 24 [Huawei-GigabitEther…...

C++模板编程与元编程面试题及参考答案(精选100道题)

目录 解释 C++ 模板的实例化过程,显式实例化与隐式实例化的区别 模板函数在不同翻译单元中的 ODR(单一定义规则)问题 模板参数推导失败的可能场景及解决方法 模板函数中 auto 返回类型的推导规则 如何限制模板函数仅接受特定类型的参数?(非 C++20 概念场景) 函数模板…...

括弧匹配检验(信息学奥赛一本通-1354)

【题目描述】 假设表达式中允许包含两种括号&#xff1a;圆括号和方括号&#xff0c;其嵌套的顺序随意&#xff0c;如&#xff08;&#xff3b; &#xff3d;&#xff08;&#xff09;&#xff09;或&#xff3b;&#xff08;&#xff3b; &#xff3d;&#xff3b; &#xff3…...

三、重学C++—C语言内存管理

上一章节&#xff1a; 二、重学C—C语言核心-CSDN博客https://blog.csdn.net/weixin_36323170/article/details/146191640?spm1001.2014.3001.5502 本章节代码&#xff1a; cPart2 CuiQingCheng/cppstudy - 码云 - 开源中国https://gitee.com/cuiqingcheng/cppstudy/tree/…...

算法题(105):小猫爬山

审题&#xff1a; 本题需要我们找出将n个小猫放在有限重的缆车上运下山所需的最小缆车数 时间复杂度分析&#xff1a;本题的数据量小于等于18&#xff0c;所以我们在做好剪枝的前提下可以使用深度优先搜索解题 思路&#xff1a; 方法一&#xff1a;dfs 搜索策略&#xff1a;将小…...

C语言-适配器模式详解与实践

文章目录 C语言适配器模式详解与实践1. 什么是适配器模式&#xff1f;2. 为什么需要适配器模式&#xff1f;3. 实际应用场景4. 代码实现4.1 UML 关系图4.2 头文件 (sensor_adapter.h)4.3 实现文件 (sensor_adapter.c)4.4 使用示例 (main.c) 5. 代码分析5.1 关键设计点5.2 实现特…...

线程的pthread_create、pthread_join、pthread_exit、pthread_detach函数

线程的创建&#xff08;pthread_create&#xff09; pthread_t tid;//本质是unsigned long类型&#xff0c;打印时得到的是该线程的虚拟地址int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine)(void*), void *arg ); pthread_t *thre…...

测试专项4:AI算法测试在测试行业中,该如何定位自己自述

这岗位到底干啥的&#xff1f; 打个比方&#xff1a; 你就像AI模型的“质检员产品经理风险顾问”三合一。 质检员&#xff1a; 别人造了个AI模型&#xff08;比如人脸识别系统&#xff09;&#xff0c;你不能光看它实验室成绩好&#xff0c;得把它丢到现实里折腾&#xff1a;…...

QT-LINUX-Bluetooth蓝牙开发

BlueToothAPI QT-BlueToothApi Qt Bluetooth 6.8.2 官方提供的蓝牙API不支持linux。 D-Bus的API实现蓝牙 确保系统中安装了 BlueZ(版本需≥5.56),并且 Qt 已正确安装并配置了 D-Bus 支持。 默默看了下自己的版本.....D-BUS的API也不支持。 在 D-Bus 中,org 目录是 D-Bus…...

【经验总结】AUTOSAR架构下NvMBlock无效问题分析

目录 前言 正文 1.问题描述 2.问题原因 3.深入分析 3.1NvM_InvalidateNvBlock分析 3.2NvBlock无效后NvM_ReadBlock行为分析 3.3NvBlock无效后NvM_WriteBlock行为分析 4.总结 前言 最近在做所有NvMBlock测试的时候,发现一个NvMBlock始终无法测试成功(写入Block值 --&…...

STM32 的tf卡驱动

基于STM32的TF卡驱动的基本实现步骤和相关代码示例,主要使用SPI接口来与TF卡进行通信。 硬件连接 将TF卡的SPI接口与STM32的SPI引脚连接,通常需要连接SCK(时钟)、MOSI(主出从入)、MISO(主入从出)和CS(片选)引脚。 软件实现 初始化SPI 配置SPI的工作模式、时钟频率…...

stress-ng命令详解

stress-ng 是一款功能强大的 Linux 系统压力测试工具&#xff0c;能够模拟多种复杂负载场景&#xff0c;覆盖 CPU、内存、磁盘 I/O、进程调度等核心资源&#xff0c;帮助开发者验证系统在高负载下的稳定性与性能表现。以下是其核心功能、参数解析及实战案例。 一、工具简介与安…...

【C语言系列】数据在内存中存储

数据在内存中存储 一、整数在内存中的存储二、大小端字节序和字节序判断2.1什么是大小端&#xff1f;2.2练习2.2.1练习12.2.2练习22.2.3练习32.2.4练习42.2.5练习52.2.6练习6 三、浮点数在内存中的存储3.1练习3.2浮点数的存储3.2.1 浮点数存的过程3.2.2 浮点数取的过程 3.3题目…...

【中文翻译】第12章-The Algorithmic Foundations of Differential Privacy

由于GitHub项目仅翻译到前5章&#xff0c;我们从第6章开始通过大语言模型翻译&#xff0c;并导出markdown格式。 大模型难免存在错漏&#xff0c;请读者指正。 教材原文地址&#xff1a;https://www.cis.upenn.edu/~aaroth/Papers/privacybook.pdf 12 其他模型 到目前为止&…...

图解模糊推理过程(超详细步骤)

我们前面已经讨论了三角形、梯形、高斯型、S型、Z型、Π型6种隶属函数&#xff0c;下一步进入模糊推理阶段。 有关六种隶属函数的特点在“Pi型隶属函数&#xff08;Π-shaped Membership Function&#xff09;的详细介绍及python示例”都有详细讲解&#xff1a;https://lzm07.b…...

datawhale组队学习-大语言模型-task5:主流模型架构及新型架构

目录 5.3 主流架构 5.3.1 编码器-解码器架构 5.3.2 因果解码器架构 5.3.3 前缀解码器架构 5.4 长上下文模型 5.4.1 扩展位置编码 5.4.2 调整上下文窗口 5.4.3 长文本数据 5.5 新型模型架构 5.5.1 参数化状态空间模型 5.5.2 状态空间模型变种 5.3 主流架构 在预训…...