Linux下通过samba共享文件操作要点

samba的安装:

sudo apt-get insall samba
sudo apt-get install smbclient

创建共享目录:

 mkdir /home/robin/dianying
sudo chmod 777 /home/robin/dianying

创建Samba配置文件:

  1. 保存现有的配置文件 sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
  2. 修改现配置文件 sudo gedit /etc/samba/smb.conf

在smb.conf最后添加

[robin]
path = /home/robin/dianying
available = yes
browsealbe = yes
public = yes
writable = yes

有时候我们希望远程登录上来的账户拥有和文件所有者一样的权限,可以改为如下配置

[Share_all]
path = /home/robin/dianying
public = yes
writable = yes
guest ok = yes
force user = phinecos

创建samba帐户

sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a robin
然后会要求你输入samba帐户的密码

  • [如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE]

重启samba服务器

sudo /etc/init.d/smbd restart

测试

smbclient -L //localhost/share

在windows下访问linux共享

可以到windows下输入ip使用了,在文件夹处输入 “\” + “Ubuntu机器的ip或主机名” + “\” + “share”

Linux下使用dd命令制作iso镜像启动盘

命令:dd

格式:dd if=./ubuntu-20.04-desktop-amd64.iso of=/dev/sdb

命令说明

  • if=后面跟的是要刻录的iso镜像路径和名称
  • of=后面跟的是要写入U盘的路径

查看刻录进度

使用dd命令制作启动盘的过程中是不显示进度的,我们可以通过如下命令来显示进度

robin@robin-B450M-GAMING:~$ sudo watch -n 5 pkill -USR1 ^dd$

基于目录深度的参数-maxdepth

-maxdepth
–max-depth: 遍历目录的最大深度

实例一:查找当前目录下的所有txt文档,查找范围限定在从当前目录开始的两个子目录之内

robin@robin-b450m:~$ sudo find -maxdepth 2 -name “*txt”

实例二:查看当前目录下文件夹大小

robin@robin-b450m:~/文档$ du -h
12K ./系统环境/212.64.54.19X密钥
20K ./系统环境
28K .
robin@robin-b450m:~/文档$ du –max-depth=1 -h
20K ./系统环境
28K .

可以很明显的看出使用参数–max-depth后,限定了目录的深度

注意事项

  • 使用-maxdepth基于目录深度的参数时,应该作为第一种参数出现,否则会进行一些不必要的检查影响执行效率。
  • 比如同时用-maxdepth和-type,如果-type在前,find会找出符合文件类型的所有文件接着再匹配符合指定深度的(相当于还是把当前目录及子目录遍历搜索个底朝天);而如果-maxdepth在前,find就能够在找到所有符合指定深度的文件后,在匹配这些文件的类型。