标签 mac 下的文章

创建Linux用户


# 创建用户组
groupadd <userGropName> -g 6000 

# 创建用户并禁止使用shell
useradd <userName> -u 6000 -g 6000 -s /sbin/nologin -d /dev/null

# 创建备份目录
mkdir /home/<pathName>

# 设置权限
chown -R <userName>:<userGropName> /home/<pathName>

# 禁止其他人访问
chmod u+rwx,g+rwx,o-rwx /home/<pathName>

# 设置密码
passwd <userName>

安装并配置samba


# 安装
apt-get install samba

# 备份 smb.conf

cp /etc/samba/smb.conf  /etc/samba/smb.conf.bak

# 编辑配置
vim /etc/s

配置文件如下

[work]
    comment = samba home directory 
    path = /home/user/
    public = yes
    browseable = yes
    public = yes
    read only = no
    valid users = user
    create mask = 0777
    directory mask = 0777 
    force user = nobody
    force group = nogroup
    available = yes
# 增加samba用户
smbpasswd -a <userName>

# 设置密码

# 重新启动samba

service smbd restart

连接

打开访达 app,使用快捷键 ⌘Command+K 来连接到服务器,填入 NAS 对应的 SMB 地址,

参考文档

Ubuntu 16.04安装配置Samba服务

低增加samba用户提示Failed to add entry for user

创建Linux用户


# 创建用户组
groupadd <userGropName> -g 6000 

# 创建用户并禁止使用shell
useradd <userName> -u 6000 -g 6000 -s /sbin/nologin -d /dev/null

# 创建备份目录
mkdir /home/<pathName>

# 设置权限
chown -R <userName>:<userGropName> /home/<pathName>

# 禁止其他人访问
chmod u+rwx,g+rwx,o-rwx /home/<pathName>

安装并配置netatalk

安装

apt-get install netatalk

修改配置

vim /etc/netatalk/AppleVolumes.default

在末尾加上这么一句:

/home/<pathName> "TMback" options:tm

重启Netatalk服务

sudo service netatalk restart

生成sparsebundle

连接AFP

获取mac地址

ifconfig en0 | grep ether | awk '{print $2}' | sed 's/://g'

获取本地主机名

打开「系统偏好设置-共享」,点击「编辑」按钮,然后复制你的本地主机名(不需要 .local 字符)。

在终端 app 中输入命令


sudo hdiutil create -size <size>g -type SPARSEBUNDLE -nospotlight -volname "Backup of <computer_name>" -fs "Case-sensitive Journaled HFS+" -verbose ~/Desktop/<computer_name>_<mac address>.sparsebundle

其中

替换为第三步中获得的本地主机名, 替换为第四步中获得的 MAC 地址, 设置为备份磁盘的大小 敲击回车键,输入密码,稍等一下,你的桌面上就会生成一个正确的 sparsebundle 文件。 # 连接AFP并上传`sparsebundle`文件 打开访达 app,使用快捷键 ⌘Command+K 来连接到服务器,填入 NAS 对应的 SMB 地址, 并输入 Time Machine 专属账户的用户名和密码。等待成功挂载 Time Machine 共享文件夹后, 将桌面上的 sparsebundle 文件复制到这个文件夹中。 在这一步中,千万要记住要通过访达 app 来上传文件,而不能在 NAS 后台上传。 # 安装并配置`avahi-daemon` `apt-get install avahi-daemon` `vim /etc/avahi/services/afpd.service` 写入以下内容 ``` xml %h _afpovertcp._tcp 548 _device-info._tcp 0 model=Xserve ``` 重启avahi-daemon服务 `service avahi-daemon restart` # 开始备份 `sparsebundle`文件上传完毕后,重新打开「系统偏好设置-时间机器」来进行接下去正常的流程操作。 如果你不想等待 Time Machine 自动开始备份,那么你可以直接关掉系统偏好设置的窗口,或者在 Menubar 的时间机器菜单中选择「立即备份」。稍等片刻,你就能看到时间机器开始正常备份了。 ## 参考文档 [一日一技 | 如何解决时间机器在 NAS 上创建备份失败的问题?](https://sspai.com/post/58100) [未能创建备份磁盘映像 sparsebundle 错误45](http://pythonic.zoomquiet.top/data/20130302114227/index.html) [通过afp从Mac连接到ubuntu共享文件](https://sparkydogx.github.io/2018/06/21/connect-ubuntu-server-via-afp/) [低成本搭建Time Machine 服务器](https://zhuanlan.zhihu.com/p/31088141) [低增加samba用户提示Failed to add entry for user](https://blog.csdn.net/minenamewj/article/details/17356703)

基友喊一起玩DOTA自走棋,在steam安装时候有个生成桌面快捷方式的选项,选择上安装之后在桌面就有个带游戏icon的APP,很明显不可能再复制一份游戏的主体APP文件过来,所以就看了一下包的内容。

直接把APP托到编辑器里打开之后,目录结构大致如下图:

MacOs目录里有个run.sh文件,这就是正常的一个sh文件,里边有一句启动steam游戏的命令,删掉这条命令就可以了,我们改写成自己的bash内容即可。

在这之前,我自己常用的sh文件都放在个人目录下的shell文件夹,所以我只需要启动我自己的sh文件就可以了

run.sh

#!/bin/bash
# autogenerated file - do not edit

/Users/${username}/shell/start.sh

尝试一下,运行这个修改过的APP,发现sh命令成功启动~~

修改ICON

icon文件就在Resources文件夹里,名字是shortcut.icns,我们找一个我们喜欢的icns文件保留名字不变替换源文件即可。

替换之后APP的图标还是没变,我们把APP文件复制一份就可以了~~

我直接复制到/Applications文件夹里,并命名为start.app,这样就可以直接在启动台启动APP了。

设置开机启动

在偏好设置里修改登录项,添加这个APP即可开机启动,从而做到开机运行我们的bash

其他细节

判断进程是否运行

ps -fe|grep name |grep -v grep
if [ $? -ne 0 ]
then
echo "开始运行"
else
echo "已经在运行中了"
fi

自动插入到screen

 screen_name="screen_name"
 screen -dmS $screen_name
 screen -x -S $screen_name -p 0 -X stuff '~/shell/xxxxx.sh
 '

注意screen -x -S命令后边的换行,最后一个单引号要到下一行,这样命令才会执行,不然就只是输入进去了

screen -list查看是否成功插入

打包好的APP

很多同学电脑上应该没有steam,所以没有这个APP,这里上传一个

APP