This is an old revision of the document!
#Darwin #Jonathan Haack #Haack's Networking #netcmnd@jonathanhaack.com
#powerpc mac and intel mac gnulinux notes; issues, installs +
Making a bootable usb stick …
diskutil list diskutil eraseDisk <filesystemtype> <partitionname> <diskidentifier> diskutil unmountDisk <diskidentifier>
Examples
sudo dd if=/Volumes/Cave/Users/axes/Desktop/lubuntu.iso of=/dev/disk4 bs=1m sudo dd if=/Users/me/tails-i386-1.3.iso of=/dev/rdisk9 bs=16m && sync
Insert USB drive into PPC Mac of choice, depress command-option-o-f (open firmware) try usb0, usb1, usb2, etc. until it works and finds the port you used for the img
probe-usb boot usb0/disk@1:2,\\yaboot boot usb1/disk@1:2,\\yaboot
once inside the yaboot shell, some common examples are:
install url=mintppc.org install cli cli-expert cli64 cli64-expert
#wireless hardware drivers, b43 cutter +
deb http://httpredir.debian.org/debian/ wheezy main contrib non-free deb http://http.debian.net/debian/ jessie main contrib non-free apt-get update sudo lspci apt-get install firmware-b43-installer apt-get install firmware-b43-lpphy-installer apt-get install firmware-b43legacy-installer
use lspci above and then visit https://wiki.debian.org/bcm43xx#supported-b43
#some imaging notes
convert .iso to .img syntax example
hdiutil convert -format UDRW -o destination_file.img source_file.iso diskutil list diskutil partitionDisk /dev/disk1 1 "Free Space" "unused" "100%"
Particularly helpful is partitioning as GPT from command line in macOS:
diskutil partitionDisk /dev/disk2 GPT JHFS+ New 0b
Back to writing the image to the partition with dd:
dd if=[Directory/to/udrw/img] of=/dev/disk1 bs=1m diskutil eject /dev/disk2
Plug into the Intel Mac, hold option while booting, proceed w/ install
#Dual Boot gnulinux with macOS
https://sourceforge.net/projects/refind/files/0.11.2/refind-bin-0.11.2.zip/download sudo dd if=/Users/username/gnulinux-distro.iso of=/dev/disk2 bs=16m && sync
Command + R reboot
csrutil disable
Reboot with inserted install image USB Select grub or kernel of install USB on refind bootloader - follow instructions - install The dual boot will fail each macOS update, so repeat steps each time it breaks
sudo spctl --master-disable
#Path
/etc/paths (location of PATH on Mac) /etc/man.path (man page paths)
#Force Remove Trash
#User Directory Trashes (sudo not required, but can help)
sudo rm -rf ~/.Trash/*
#All Directory Trashes (sudo not required, but can help)
sudo rm -rf /Volumes/*/.Trashes
#If this still causes trouble, then
login root
#Enter password
sudo rm -rf /Volumes/*/.Trashes
#Now, all trashes should empty, but it is slow so view #Finder Status bar at /Volumes/Macintosh HD/
#Showing hidden items in Finder (highly recommended)
defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder
#replace with FALSE to change back … make sure before entering killall #could also use YES / NO, or 1/0 (have not tested 1/0)
#Hiding Users - do as root
sudo dscl . create /Users/shortnameofuser IsHidden 1 sudo mv /Users/shortnameofuser /var/shortnameofuser sudo dscl . -create /Users/shortnameofuser NSFHomeDirectory /var/shortnameofuser sudo dscl . -delete "/SharePoints/shortnameofuser's Public Folder"
#Homebrew Basics
#Install:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
#Uninstall:
Download script from GitHub https://gist.github.com/SteveBenner/11254428
#Update
brew update
#Cleanup:
brew cleanup
#Verify Config:
brew doctor
#Update Packages
brew update packagename
#Install from Casks
brew install Caskroom/cask/nameofcasknoextension
#To find the Casks in your GUI
/Volumes/Macintosh HD/usr/local/Library/Taps/caskroom/homebrew-cask/Casks
#To see what you have installed using your GUI
/Volumes/Macintosh HD/usr/local/Cellar
#Sometimes they are installed by default in opt #(although this can be changed by an –option)
/Volumes/Macintosh HD/opt/homebrew-cask/Caskroom
#There is debate, mostly from MacPorts & Fink people #about where to put package Managers:
#Homebrew will cause problems when building software from source if it is installed in /usr/local.
#This is the default, which is a bad choice as this path is in the default search path of compilers and other tools.
#Therefore builds from other packaging software might pick up the wrong dependency, using Homebrew's version instead of their own.
#Years ago, in the very beginning of the project, even MacPorts was using /usr/local.
#But it turned out not to cooperate with other tools as is documented in their FAQ.
#Unfortunately Homebrew developers didn't want to hear about prior experiences and ignored such facts… #In general, it is usually better to stick to one tool only to avoid all problems. #MacPorts is doing their best to patch out any harcoded paths, e.g. to /sw which is used by Fink. #So usually it will work, but having anything installed in /usr/local will definitely cause problems for it.
@Raim on StackExchange https://superuser.com/questions/181337/is-it-safe-to-install-both-homebrew-and-macports-on-the-same-machine
#MacPorts addresses this too: https://trac.macports.org/wiki/FAQ#defaultprefix
#Braumeister has a search engine of Homebrew packages
#Common Packages (Will be adding more, this is by no means #exhaustive of what I have used in past).
#Install GNU Essentials
brew install coreutils
#Add to PATH with TextWrangler or:
sudo open /etc/paths sudo nano /etc/paths
#Add the next line after /usr/bin
/usr/local/bin
#Add to PATH with vi text editor or nano using Terminal
sudo vi /etc/paths sudo nano /etc/paths
#Path Looks Like This, but bear in mind Homebrew prefers the local bin first
/usr/bin /usr/local/bin /bin /usr/sbin /sbin
#Homebrew offers the following instructions about coreutils
#All commands have been installed with the prefix 'g'.
#If you really need to use these commands with their normal name can #add a “gnubin” directory to your PATH from your bashrc like
PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
#Additionally, you can access their man pages with normal names the #“gnuman” directory to your MANPATH from your bashrc as well
MANPATH="/usr/local/opt/coreutils/libexec/gnuman:$MANPATH"
#You can also use Text Wrangler to add the GNU commands to Man Pages (or use vi)
/etc/man.conf
#add the following in the Set up PATH to MANPATH mapping section
MANPATH_MAP /usr/local/opt/coreutils/libexec/gnubin /usr/local/opt/coreutils/libexec/gnuman
#More GNU commands, but duplicate ones
brew tap homebrew/dupes
brew install binutils brew install diffutils brew install ed --default-names brew install findutils --with-default-names brew install gawk brew install gnu-indent --with-default-names brew install gnu-sed --with-default-names brew install gnu-tar --with-default-names brew install gnu-which --with-default-names brew install gnutls brew install grep --with-default-names brew install gzip brew install screen brew install watch brew install wdiff --with-gettext brew install wget
#newer versions of tools already on OS X and GNU
brew install bash brew install emacs brew install gdb gdb requires further actions to make it work. See `brew info gdb`. brew install gpatch brew install m4 brew install make brew install nano
#commands not on GNU but on OS X but might want newer
brew install file-formula brew install git brew install less brew install openssh brew install perl518 must run "brew tap homebrew/versions" first! brew install python brew install rsync brew install svn brew install unzip brew install vim --override-system-vi brew install macvim --override-system-vim --custom-system-icons brew install zsh
#Adding scripts to my shell PATH so I can run form command line
ln -s /Volumes/Cave/<path-to-script> /usr/local/bin/scriptname
#To see what is currently installed and save text file in User Downloads
brew list > ~/Downloads/brews.txt
#Remember, there are third party caskrooms (braumeister has lots of info):
homebrew/science/metaphlan Caskroom/cask/tap-bpm Caskroom/cask/tuntap Caskroom/cask/wiretap-studio Caskroom/cask/rcdefaultapp Caskroom/cask/tapaal Caskroom/cask/wavtap
#To install one of them, run (for example):
brew install homebrew/science/metaphlan
——————————————-
#Some error readings I got once … still need to review … copied and paster below:
Are you sure you want to uninstall Homebrew? [y/N] y =⇒ Removing Homebrew installation… =⇒ Removing empty directories… =⇒ Homebrew uninstalled! The following possible Homebrew files were not deleted:
You may consider to remove them by yourself.
#You may want to restore /usr/local's original permissions
sudo chmod 0755 /usr/local sudo chgrp wheel /usr/local
——————————————-
#Permissions to manually allow everything for a user #The second command owns a directory by root with group wheel over local directory #The third restores current user as owner to local directory
sudo chmod -R +a "$USER allow delete,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown,list,search,add_file,add_subdirectory,delete_child,file_inherit,directory_inherit" .
sudo chown -R root:wheel /usr/local sudo chmod -R -N /usr/local
#To install alternative repositories for later installation, such as:
Homebrew/homebrew-apache Homebrew/homebrew-binary Homebrew/homebrew-boneyard Homebrew/homebrew-completions Homebrew/homebrew-dupes Homebrew/homebrew-games Homebrew/homebrew-headonly Homebrew/homebrew-python Homebrew/homebrew-science Homebrew/homebrew-versions davidchall/homebrew-hep josegonzalez/homebrew-php
brew tap Homebrew/homebrew-binary
#To install the brew tap third party packages, look inside the Taps folder in /usr/local to find one, and then
brew install homebrew/homebrew-games/<name of package>
#Some are not strict directory paths, but are abbreviations (most likely through the bin somehow)
brew install Caskroom/cask/[name of package from step ^]
#To get private key from bitcoin console #Navigate to bitcoin console
walletpassphrase [enterpassword] dumprivkey [enter public address from gui]
#Out comes the private key
#To add shell scripts to Terminal command, open bash.rc, and add this to the fields (first create a directory for your scripts):
export PATH="/path/to/dir:$PATH"
#Then, restart Terminal by:
source .bashrc
#I also added the directory of my shell scripts to the path directory
cd Volumes/Cave/etc/ nano edit paths
#Then add a line to the scripts folder:
/Volumes/Cave/Users/axes/Scripts
#To make a script executable (not tested yet - old commands in fodler)
chmod +x yourshellscript.sh
#El Capitan Boot Volume command - presuming it is in the Applications directory and is the GM Candidate version … if not, substitute in version / title of the one you have:
sudo /Applications/Install\ OS\ X\ El\ Capitan\ GM\ Candidate.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ El\ Capitan\ GM\ Candidate.app --nointeraction
#OS X Server Settings
#To require binding
sudo slapconfig -setmacosxodpolicy -binding required
#To rebuild an Open Directory if nothing else works (Quit Server, Run Command, Restart CPU)
sudo slapconfig -destroyldapserver
#Making an alias called “fix_brew”
alias fix_brew='sudo chown -R $USER /usr/local/'
#preferred way of re-owning homebrew is to use this command below
sudo chown -R `whoami` /usr/local/
#or
sudo chown -R $USER /usr/local/
#disable System Integrity Protection
csrutil disable csrutil enable csrutil status
#change gatekeeper settings or disable entirely or re-enable
spctl --status sudo spctl --master-enable spctl --add /Path/To/Application.app
#Making a shell script executable
sudo chmod 700 file.sh
#verifying checksum
shasum /path/to/file.extension
#make tarball dokuwiki
tar zcpfv dokuwiki-backup.tar.gz /path/to/dokuwiki
#ssh key pair … later
ssh
#disable ssh on *nix machines
su - root cd /etc/ssh/ nano sshd_config
#change the following lines and make sure to remove comment (#) …
ChallengeResponseAuthentication no PasswordAuthentication no UsePAM no
#restart ssh - which on linux is below … macOS uses launchd so not sure yet
/etc/init.d/sshd restart
#add user from command line - should prompt for password
sudo sysadminctl -addUser <exampleuser> -password - -admin
#Changing tempermental host name
sudo scutil --set ComputerName "newname" sudo scutil --set LocalHostName "newname" sudo scutil --set HostName "newname" dscacheutil -flushcache
#sfcc server
https://archimedes.sfcc.edu/EWS/Exchange.asmx
#homebrew changed path … add sbin to default PATH …
echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile
#homebrew remove shallow
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Apache .htaccess syntax for BSD, macOS, and Red Hat:
sudo htpasswd -c .htpasswd username1 sudo htpasswd .htpasswd username2 AuthUserFile /private/etc/httpd/.htpasswd AuthGroupFile /dev/null AuthName "Members Only" AuthType Basic
<Limit GET POST> require valid-user </Limit>
— oemb1905 2017/05/15 04:26