Linux

Kickstart Ubuntu 16.04 安裝後 Chown

  • July 8, 2018

kickstart 安裝中的 chown 命令問題

我正在嘗試在文件中的部分chown myuser:myuser末尾執行 a 。chown 之前的一切都執行成功。%post``ks.cfg

ks.cfg

#Generated by Kickstart Configurator
#platform=AMD64 or Intel EM64T

#System language
lang en_US
#Language modules to install
langsupport en_US
#System keyboard
keyboard us
#System mouse
mouse
#System timezone
timezone America/Denver
#Root password
rootpw --disabled
#Initial user
user myuser --fullname "" --iscrypted --password ##############################/
#Reboot after installation
reboot
#Use text mode install
text
#Install OS instead of upgrade
install
#Use hard drive installation media
# harddrive --dir=/ks.cfg --partition=4005-3596
cdrom 
#System authorization infomation
auth  --useshadow  --enablemd5
#Network information
network --bootproto=dhcp --device=eth0
#Firewall configuration
firewall --disabled
#Do not configure the X Window System
skipx

%packages
@ ubuntu-server
openssh-server
build-essential

%post --log=/root/ks-post.log
exec < /dev/tty6 > /dev/tty6 2> /dev/tty6
chvt 6
#mount the cd (ISO in my case) to copy files from it
#since this is chrooted environment
mount /dev/cdrom /mnt
# Make directories
echo "***Making Directories***"
mkdir -p /home/myuser/bcfiles
mkdir -p /home/myuser/bin
# Copy bcsetup files
echo "***Copying bcsetup Files***"
cp -r /mnt/postfiles/bcsetup /home/myuser/bin
cp -r /mnt/postfiles/bcsetup-dev /home/myuser/bin
# Copy bcfiles directory
echo "***Copying bcfiles Directory***"
cp -r /mnt/postfiles/bcfiles /home/myuser/
# Copy myuser Profile Configuration Files
echo "***Copying myuser Profile Configuration Files***"
cp -r /mnt/postfiles/.bash_logout /home/myuser/
cp -r /mnt/postfiles/.bashrc /home/myuser/
cp -r /mnt/postfiles/.profile /home/myuser/
# Applying permissions
echo "***Applying Permissions***"
chown myuser /home/myuser/.bashrc

ks.cfg 使用 –nochroot 進行測試

%post --nochroot --log=/root/ks-post.log
# Make directories
echo "***Making Directories***"
mkdir -p /target/home/myuser/bcfiles
mkdir -p /target/home/myuser/bin
# Copy bcsetup files
echo "***Copying bcsetup Files***"
cp -r /cdrom/postfiles/bcsetup /target/home/myuser/bin
cp -r /cdrom/postfiles/bcsetup-dev /target/home/myuser/bin
# Copy bcfiles directory
echo "***Copying bcfiles Directory***"
cp -r /cdrom/postfiles/bcfiles /target/home/myuser/
# Copy myuser Profile Configuration Files
echo "***Copying myuser Profile Configuration Files***"
cp -r /cdrom/postfiles/.bash_logout /target/home/myuser/
cp -r /cdrom/postfiles/.bashrc /target/home/myuser/
cp -r /cdrom/postfiles/.profile /target/home/myuser/
# Applying permissions
echo "***Applying Permissions***"
chown myuser:myuser -R /target/home/myuser/

安裝後cat /var/log/installer/syslog | grep kickseed顯示:

kickseed: chown: unknown user myuser:myuser

事後諸葛亮

到目前為止,我已經嘗試了幾種不同的路線。如果我--nochroot%post. 我已經看到其他 ks.cfg 配置使用chown myuser.myuser它也沒有工作。還嘗試chown/home/myuser/.

任何建議將不勝感激。

更新

/etc/passwd/etc/group兩個列表myuser。輸出groups myusermyuser : myuser adm cdrom sudo dip plugdev lpadmin sambashare

想法

在這個時間點上,我正在考慮將腳本/home/myuser/bin移到/usr/local/bin我不需要依賴的地方chown

我最初選擇 Preseed+Kickstart,因為我相信有更多的功能。但是,在使用 preseed 之後,我能夠毫無問題地完成所有事情。

我最近遇到了這個問題,我認為這是Google搜尋時的第一個結果,我將與您分享解決方案:

您可以看到您的使用者列在 /etc/passwd 中,但是,它是在執行 %post 部分之後創建的。因此,在 %post 腳本執行時,您的使用者尚未創建。檢查 /var/log/installer 中的日誌並蒐索 post

引用自:https://serverfault.com/questions/853514